Financeiro V1 (Épicos 1–4):
- FKs de origem no lançamento (paciente/profissional/procedimento/agendamento/contrato/realizado), soft delete e cron "Atrasado"
- prontuário de procedimentos realizados (fotos antes/depois) + regra sem-comissão (garantia/reabertura do mesmo profissional)
- normalizeFinanceiro: corrige CHECK capitalizado vs enforceUppercase (lançamentos não salvavam pela UI)
- baixa de pagamento (pago_em), despesas (fornecedor/centro de custo/recorrente), competência por data de conclusão
- relatório financeiro (período, paciente, profissional, forma, convênio, glosa)
- orçamento Assinado -> contas a receber; contrato vigente -> cobrança recorrente; renovação automática de contrato
Financeiro V2 (Comissão/Repasse):
- regras de % (padrão/procedimento/override por profissional) + custo de laboratório
- base selecionável (recebido/produção), fechamento persistido, pagar (gera despesa) + comprovante + estorno
Glosas de convênio: por item de GTO, recurso/protocolo/prazo, recuperar/estornar, impacto no relatório
GTO -> Financeiro: finalizar gera RECEITA (convênio a receber); LancarGTO passa a persistir; convênios reais (planos)
Contratos: modelo "Atendimento a Convênios / Repasse (Dentista Credenciado)" + variáveis de convênio
Salas (redesenho): perfil "Dono de Sala"; locação sempre ativa; menus MINHAS/ALUGAR SALAS;
sala como workspace isolado (seletor agrupado Clínicas x Salas, tenantGuard por dono); financeiro de
locação (reserva confirmada -> recebível); Painel da Sala (KPIs, agenda visual, recebíveis, relatório por sala)
Docs: BACKLOG-FINANCEIRO-V1, AUDITORIA-FUNCIONAL-SCOREODONTO, CHECKLIST-DEPLOY-PRODUCAO
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- catálogo (Especialidades/Procedimentos): seletor de área no form + badge colorido na lista
- marketplace de profissionais: filtro por área (via usuario_areas)
- backend: GET/PUT /api/me/areas e /api/clinicas/:id/areas (multi-área de perfil/clínica)
- HybridBackend: getAreas/getMyAreas/setMyAreas
- (Fase 2c pendente: UI multi-área no perfil/configurações da clínica)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- reverte bloqueio anterior: biomédico GERENCIA especialidades/procedimentos do seu
consultório (workspace pessoal já criado no cadastro)
- acesso liberado p/ o papel biomédico (menu + permissão)
- coluna 'ativo' em especialidades/procedimentos + toggle ativar/desativar na UI
- auto-seed do catálogo de biomedicina estética (botox, preenchimento, bioestimulador,
peeling, microagulhamento, etc.) no cadastro do biomédico + endpoint idempotente
/api/me/seed-biomedicina (restrito ao papel biomédico) p/ contas existentes
- valor por procedimento já suportado (valorparticular)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- App.tsx: wrappers de padding (p-4/md:p-8) e max-w-7xl/mx-auto agora só se aplicam quando não é tela standalone; login/landing/public renderizam full-bleed
- OnboardingChat.tsx: classe ob-noscroll esconde a barra de rolagem do slide intro (mantém scroll), substituindo a custom-scrollbar indefinida no fluxo de login
Inclui também demais alterações pendentes do working tree (snapshot do estado atual de dev).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Dropdown 1-5 de faces visível quando especialidade é Dentística
- Dropdown 1-5 de raízes visível quando especialidade é Endodontia
- Opção ARCO COMPLETO oculta nos dois casos (não se aplica)
- Select de especialidade agora controlado — reseta num_faces/num_raizes ao trocar
- DB: ALTER TABLE procedimentos ADD COLUMN num_faces INTEGER, num_raizes INTEGER (executado)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Cada dente selecionado tem seu próprio input de face e observação (não mais unificado)
- ADICIONAR ITEM cria um GTOItem por dente com face/obs individual
- Layout mobile em 3 páginas: pág 1 paciente/especialidade/dentista, pág 2 odontograma, pág 3 faces/obs + rascunho
- Navegação mobile com footer fixo: VOLTAR | indicador de página | PRÓXIMO / FINALIZAR
- Campo descricao_mobile no cadastro de procedimentos (versão curta para celular)
- ALTER TABLE procedimentos ADD COLUMN descricao_mobile TEXT (já executado no DB)
- Desktop mantém layout coluna dupla original sem mudança
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>