photum/backend/internal/db/generated/models.go
NANDO9322 7f1d4144db feat(api): Implementado novas tabelas ,refatorado a autenticação e aprimorado a documentação Swagger
- 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
2025-12-09 17:05:19 -03:00

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"`
}