Listar Orçamentos
Retorna a lista de orçamentos ativos da conta, com filtros opcionais e paginação baseada em cursor.
Buscar Orçamento por ID
Retorna os dados completos de um orçamento específico, incluindo paciente, procedimentos, descontos, pedidos e movimentações pagas.
Buscar Orçamentos por Paciente
Retorna a lista de orçamentos de um paciente específico, com paginação por cursor e filtros opcionais.
Contar Orçamentos
Retorna a quantidade de orçamentos da conta em um período, com filtro opcional por status de envio para fila.
Listar Usuários
Retorna os usuários ativos da conta. Útil para preencher filtros de orçamentos por usuário criador.
Criar Orçamento
Cria um novo orçamento. O paciente é criado (se não tiver id) ou atualizado (se tiver id), e o orçamento nasce com status PENDING. Após a criação, dispara automaticamente a notificação e a criação da proposta.
Atualizar Orçamento
Atualiza o status e o paciente de um orçamento existente. O paciente é criado (sem id) ou atualizado (com id).
Atualizar Desconto do Orçamento
Aplica ou remove um desconto geral em um orçamento. Ao aplicar um desconto geral, os descontos individuais dos procedimentos são removidos.
Deletar Orçamento
Remove um orçamento (soft delete — preenche o campo deletedAt). O orçamento deixa de aparecer nas listagens, mas o registro é preservado no banco.
Notificar Orçamento
Dispara o envio de uma notificação de orçamento ao paciente. O processamento é assíncrono (via evento interno), então a resposta é imediata e não contém corpo.
Buscar total de Orçamentos por Paciente
Retorna a quantidade total de orçamentos (não deletados) de um paciente específico.
Buscar total de valor por Paciente
Retorna os procedimentos (preço e descontos) dos orçamentos de um paciente, para cálculo do valor total. A soma é feita a partir do preço de cada procedimento menos os descontos.