- Implementado CRUDs para: cursos, empresas, anos_formaturas, tipos_servicos, tipos_eventos - Implementado lógica de precificação de eventos (precos_tipos_eventos) - Refatorado a autenticação: Simplificar o payload de cadastro/login (somente e-mail/senha), função padrão 'profissional' - Corrigido o middleware de autenticação: Resolvido a incompatibilidade de tipo UUID vs String (corrigir erro 500) - Aprimorado o Swagger: Adicionado structs nomeados, validação de duplicatas (409 Conflict) e segurança BearerAuth - Atualizar o esquema do banco de dados: Adicionar tabelas e restrições
105 lines
3.9 KiB
Go
105 lines
3.9 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// versions:
|
|
// sqlc v1.30.0
|
|
|
|
package generated
|
|
|
|
import (
|
|
"github.com/jackc/pgx/v5/pgtype"
|
|
)
|
|
|
|
type AnosFormatura struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
AnoSemestre string `json:"ano_semestre"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type CadastroProfissionai struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
UsuarioID pgtype.UUID `json:"usuario_id"`
|
|
Nome string `json:"nome"`
|
|
FuncaoProfissionalID pgtype.UUID `json:"funcao_profissional_id"`
|
|
Endereco pgtype.Text `json:"endereco"`
|
|
Cidade pgtype.Text `json:"cidade"`
|
|
Uf pgtype.Text `json:"uf"`
|
|
Whatsapp pgtype.Text `json:"whatsapp"`
|
|
CpfCnpjTitular pgtype.Text `json:"cpf_cnpj_titular"`
|
|
Banco pgtype.Text `json:"banco"`
|
|
Agencia pgtype.Text `json:"agencia"`
|
|
ContaPix pgtype.Text `json:"conta_pix"`
|
|
CarroDisponivel pgtype.Bool `json:"carro_disponivel"`
|
|
TemEstudio pgtype.Bool `json:"tem_estudio"`
|
|
QtdEstudio pgtype.Int4 `json:"qtd_estudio"`
|
|
TipoCartao pgtype.Text `json:"tipo_cartao"`
|
|
Observacao pgtype.Text `json:"observacao"`
|
|
QualTec pgtype.Int4 `json:"qual_tec"`
|
|
EducacaoSimpatia pgtype.Int4 `json:"educacao_simpatia"`
|
|
DesempenhoEvento pgtype.Int4 `json:"desempenho_evento"`
|
|
DispHorario pgtype.Int4 `json:"disp_horario"`
|
|
Media pgtype.Numeric `json:"media"`
|
|
TabelaFree pgtype.Text `json:"tabela_free"`
|
|
ExtraPorEquipamento pgtype.Bool `json:"extra_por_equipamento"`
|
|
Equipamentos pgtype.Text `json:"equipamentos"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|
|
|
|
type Curso struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Nome string `json:"nome"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type Empresa struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Nome string `json:"nome"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type FuncoesProfissionai struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Nome string `json:"nome"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|
|
|
|
type PrecosTiposEvento struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
TipoEventoID pgtype.UUID `json:"tipo_evento_id"`
|
|
FuncaoProfissionalID pgtype.UUID `json:"funcao_profissional_id"`
|
|
Valor pgtype.Numeric `json:"valor"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type RefreshToken struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
UsuarioID pgtype.UUID `json:"usuario_id"`
|
|
TokenHash string `json:"token_hash"`
|
|
UserAgent pgtype.Text `json:"user_agent"`
|
|
Ip pgtype.Text `json:"ip"`
|
|
ExpiraEm pgtype.Timestamptz `json:"expira_em"`
|
|
Revogado bool `json:"revogado"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type TiposEvento struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Nome string `json:"nome"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type TiposServico struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Nome string `json:"nome"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type Usuario struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Email string `json:"email"`
|
|
SenhaHash string `json:"senha_hash"`
|
|
Role string `json:"role"`
|
|
Ativo bool `json:"ativo"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|