- Backend: Migrations para tabelas 'escalas' e 'logistica' (transporte) - Backend: Handlers e Services completos para gestão de escalas e logística - Backend: Suporte a auth vinculado a perfil profissional - Frontend: Nova página de Detalhes Operacionais (/agenda/:id) - Frontend: Componente EventScheduler com verificação robusta de conflitos - Frontend: Componente EventLogistics para gestão de motoristas e caronas - Frontend: Modal de Detalhes de Profissional unificado (Admin + Self-view) - Frontend: Dashboard com modal de gestão de equipe e filtros avançados - Fix: Correção crítica de timezone (UTC) em horários de agendamento - Fix: Tratamento de URLs no campo de local do evento - Fix: Filtros de profissional com carro na logística
230 lines
9.5 KiB
Go
230 lines
9.5 KiB
Go
// Code generated by sqlc. DO NOT EDIT.
|
|
// versions:
|
|
// sqlc v1.30.0
|
|
|
|
package generated
|
|
|
|
import (
|
|
"github.com/jackc/pgx/v5/pgtype"
|
|
)
|
|
|
|
type Agenda struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
UserID pgtype.UUID `json:"user_id"`
|
|
FotID pgtype.UUID `json:"fot_id"`
|
|
DataEvento pgtype.Date `json:"data_evento"`
|
|
TipoEventoID pgtype.UUID `json:"tipo_evento_id"`
|
|
ObservacoesEvento pgtype.Text `json:"observacoes_evento"`
|
|
LocalEvento pgtype.Text `json:"local_evento"`
|
|
Endereco pgtype.Text `json:"endereco"`
|
|
Horario pgtype.Text `json:"horario"`
|
|
QtdFormandos pgtype.Int4 `json:"qtd_formandos"`
|
|
QtdFotografos pgtype.Int4 `json:"qtd_fotografos"`
|
|
QtdRecepcionistas pgtype.Int4 `json:"qtd_recepcionistas"`
|
|
QtdCinegrafistas pgtype.Int4 `json:"qtd_cinegrafistas"`
|
|
QtdEstudios pgtype.Int4 `json:"qtd_estudios"`
|
|
QtdPontoFoto pgtype.Int4 `json:"qtd_ponto_foto"`
|
|
QtdPontoID pgtype.Int4 `json:"qtd_ponto_id"`
|
|
QtdPontoDecorado pgtype.Int4 `json:"qtd_ponto_decorado"`
|
|
QtdPontosLed pgtype.Int4 `json:"qtd_pontos_led"`
|
|
QtdPlataforma360 pgtype.Int4 `json:"qtd_plataforma_360"`
|
|
StatusProfissionais pgtype.Text `json:"status_profissionais"`
|
|
FotoFaltante pgtype.Int4 `json:"foto_faltante"`
|
|
RecepFaltante pgtype.Int4 `json:"recep_faltante"`
|
|
CineFaltante pgtype.Int4 `json:"cine_faltante"`
|
|
LogisticaObservacoes pgtype.Text `json:"logistica_observacoes"`
|
|
PreVenda pgtype.Bool `json:"pre_venda"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
Status pgtype.Text `json:"status"`
|
|
}
|
|
|
|
type AgendaEscala struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
AgendaID pgtype.UUID `json:"agenda_id"`
|
|
ProfissionalID pgtype.UUID `json:"profissional_id"`
|
|
DataHoraInicio pgtype.Timestamptz `json:"data_hora_inicio"`
|
|
DataHoraFim pgtype.Timestamptz `json:"data_hora_fim"`
|
|
FuncaoEspecifica pgtype.Text `json:"funcao_especifica"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|
|
|
|
type AgendaProfissionai struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
AgendaID pgtype.UUID `json:"agenda_id"`
|
|
ProfissionalID pgtype.UUID `json:"profissional_id"`
|
|
Status pgtype.Text `json:"status"`
|
|
MotivoRejeicao pgtype.Text `json:"motivo_rejeicao"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
Posicao pgtype.Text `json:"posicao"`
|
|
}
|
|
|
|
type AnosFormatura struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
AnoSemestre string `json:"ano_semestre"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type CadastroCliente struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
UsuarioID pgtype.UUID `json:"usuario_id"`
|
|
EmpresaID pgtype.UUID `json:"empresa_id"`
|
|
Nome pgtype.Text `json:"nome"`
|
|
Telefone pgtype.Text `json:"telefone"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|
|
|
|
type CadastroFot struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
Fot int32 `json:"fot"`
|
|
EmpresaID pgtype.UUID `json:"empresa_id"`
|
|
CursoID pgtype.UUID `json:"curso_id"`
|
|
AnoFormaturaID pgtype.UUID `json:"ano_formatura_id"`
|
|
Instituicao pgtype.Text `json:"instituicao"`
|
|
Cidade pgtype.Text `json:"cidade"`
|
|
Estado pgtype.Text `json:"estado"`
|
|
Observacoes pgtype.Text `json:"observacoes"`
|
|
GastosCaptacao pgtype.Numeric `json:"gastos_captacao"`
|
|
PreVenda pgtype.Bool `json:"pre_venda"`
|
|
CreatedAt pgtype.Timestamptz `json:"created_at"`
|
|
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
|
|
}
|
|
|
|
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"`
|
|
Email pgtype.Text `json:"email"`
|
|
AvatarUrl pgtype.Text `json:"avatar_url"`
|
|
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 DisponibilidadeProfissionai struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
UsuarioID pgtype.UUID `json:"usuario_id"`
|
|
Data pgtype.Date `json:"data"`
|
|
Status string `json:"status"`
|
|
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 LogisticaCarro struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
AgendaID pgtype.UUID `json:"agenda_id"`
|
|
MotoristaID pgtype.UUID `json:"motorista_id"`
|
|
NomeMotorista pgtype.Text `json:"nome_motorista"`
|
|
HorarioChegada pgtype.Text `json:"horario_chegada"`
|
|
Observacoes pgtype.Text `json:"observacoes"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|
|
|
|
type LogisticaPassageiro struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
CarroID pgtype.UUID `json:"carro_id"`
|
|
ProfissionalID pgtype.UUID `json:"profissional_id"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type MapasEvento struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
AgendaID pgtype.UUID `json:"agenda_id"`
|
|
Nome pgtype.Text `json:"nome"`
|
|
ImagemUrl pgtype.Text `json:"imagem_url"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
}
|
|
|
|
type MarcadoresMapa struct {
|
|
ID pgtype.UUID `json:"id"`
|
|
MapaID pgtype.UUID `json:"mapa_id"`
|
|
ProfissionalID pgtype.UUID `json:"profissional_id"`
|
|
PosX pgtype.Numeric `json:"pos_x"`
|
|
PosY pgtype.Numeric `json:"pos_y"`
|
|
Rotulo pgtype.Text `json:"rotulo"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_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"`
|
|
TipoProfissional pgtype.Text `json:"tipo_profissional"`
|
|
Ativo bool `json:"ativo"`
|
|
CriadoEm pgtype.Timestamptz `json:"criado_em"`
|
|
AtualizadoEm pgtype.Timestamptz `json:"atualizado_em"`
|
|
}
|