// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.30.0 // source: logistica_disponiveis.sql package generated import ( "context" "github.com/jackc/pgx/v5/pgtype" ) const countProfissionaisDisponiveisLogistica = `-- name: CountProfissionaisDisponiveisLogistica :one SELECT COUNT(p.id) FROM cadastro_profissionais p WHERE p.regiao = $1 AND ($2::text = '' OR p.nome ILIKE '%' || $2 || '%') AND NOT EXISTS ( SELECT 1 FROM convites_diarios cd WHERE cd.profissional_id = p.id AND cd.data = CAST($3 AS DATE) AND cd.status IN ('PENDENTE', 'ACEITO') ) ` type CountProfissionaisDisponiveisLogisticaParams struct { Regiao pgtype.Text `json:"regiao"` Column2 string `json:"column_2"` Column3 pgtype.Date `json:"column_3"` } func (q *Queries) CountProfissionaisDisponiveisLogistica(ctx context.Context, arg CountProfissionaisDisponiveisLogisticaParams) (int64, error) { row := q.db.QueryRow(ctx, countProfissionaisDisponiveisLogistica, arg.Regiao, arg.Column2, arg.Column3) var count int64 err := row.Scan(&count) return count, err } const getProfissionaisDisponiveisLogistica = `-- name: GetProfissionaisDisponiveisLogistica :many SELECT p.id, p.usuario_id, p.nome, p.funcao_profissional_id, p.endereco, p.cidade, p.uf, p.whatsapp, p.cep, p.numero, p.complemento, p.bairro, p.cpf_cnpj_titular, p.banco, p.agencia, p.conta, p.conta_pix, p.carro_disponivel, p.tem_estudio, p.qtd_estudio, p.tipo_cartao, p.observacao, p.qual_tec, p.educacao_simpatia, p.desempenho_evento, p.disp_horario, p.media, p.tabela_free, p.extra_por_equipamento, p.equipamentos, p.email, p.avatar_url, p.criado_em, p.atualizado_em, p.regiao, f.nome as funcao_nome FROM cadastro_profissionais p LEFT JOIN funcoes_profissionais f ON p.funcao_profissional_id = f.id WHERE p.regiao = $1 AND ($2::text = '' OR p.nome ILIKE '%' || $2 || '%') AND NOT EXISTS ( SELECT 1 FROM convites_diarios cd WHERE cd.profissional_id = p.id AND cd.data = CAST($3 AS DATE) AND cd.status IN ('PENDENTE', 'ACEITO') ) ORDER BY p.nome ASC LIMIT $4 OFFSET $5 ` type GetProfissionaisDisponiveisLogisticaParams struct { Regiao pgtype.Text `json:"regiao"` Column2 string `json:"column_2"` Column3 pgtype.Date `json:"column_3"` Limit int32 `json:"limit"` Offset int32 `json:"offset"` } type GetProfissionaisDisponiveisLogisticaRow 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"` Cep pgtype.Text `json:"cep"` Numero pgtype.Text `json:"numero"` Complemento pgtype.Text `json:"complemento"` Bairro pgtype.Text `json:"bairro"` CpfCnpjTitular pgtype.Text `json:"cpf_cnpj_titular"` Banco pgtype.Text `json:"banco"` Agencia pgtype.Text `json:"agencia"` Conta pgtype.Text `json:"conta"` 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"` Regiao pgtype.Text `json:"regiao"` FuncaoNome pgtype.Text `json:"funcao_nome"` } func (q *Queries) GetProfissionaisDisponiveisLogistica(ctx context.Context, arg GetProfissionaisDisponiveisLogisticaParams) ([]GetProfissionaisDisponiveisLogisticaRow, error) { rows, err := q.db.Query(ctx, getProfissionaisDisponiveisLogistica, arg.Regiao, arg.Column2, arg.Column3, arg.Limit, arg.Offset, ) if err != nil { return nil, err } defer rows.Close() var items []GetProfissionaisDisponiveisLogisticaRow for rows.Next() { var i GetProfissionaisDisponiveisLogisticaRow if err := rows.Scan( &i.ID, &i.UsuarioID, &i.Nome, &i.FuncaoProfissionalID, &i.Endereco, &i.Cidade, &i.Uf, &i.Whatsapp, &i.Cep, &i.Numero, &i.Complemento, &i.Bairro, &i.CpfCnpjTitular, &i.Banco, &i.Agencia, &i.Conta, &i.ContaPix, &i.CarroDisponivel, &i.TemEstudio, &i.QtdEstudio, &i.TipoCartao, &i.Observacao, &i.QualTec, &i.EducacaoSimpatia, &i.DesempenhoEvento, &i.DispHorario, &i.Media, &i.TabelaFree, &i.ExtraPorEquipamento, &i.Equipamentos, &i.Email, &i.AvatarUrl, &i.CriadoEm, &i.AtualizadoEm, &i.Regiao, &i.FuncaoNome, ); err != nil { return nil, err } items = append(items, i) } if err := rows.Err(); err != nil { return nil, err } return items, nil }