feat(gto+agenda): busca de paciente por modal + botão ATENDER na agenda
- LancarGTO: substitui <select> de beneficiário por botão que abre modal de busca com filtro em tempo real por nome/CPF; avatar com inicial do paciente - LancarGTO store: adiciona pendingSearch para receber paciente pré-selecionado de outra view; auto-seleciona por correspondência exata ou abre modal com o nome pré-preenchido - AgendaView: adiciona botão "ATENDER PACIENTE" no painel de detalhes do agendamento (visível para todos os roles exceto paciente); ao clicar define o pendingSearch e navega para /lancar-gto com o paciente do horário - App.tsx: passa onNavigate para AgendaView; adiciona lancar-gto às permissões do role dentista Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+2
-2
@@ -130,7 +130,7 @@ const App: React.FC = () => {
|
||||
|
||||
const permissions: Record<string, ViewKey[]> = {
|
||||
paciente: ['tratamentos', 'notificacoes', 'configuracoes'],
|
||||
dentista: ['dashboard', 'pacientes', 'agenda', 'ortodontia', 'tratamentos', 'notificacoes', 'clinicas', 'configuracoes', 'contratos'],
|
||||
dentista: ['dashboard', 'pacientes', 'agenda', 'ortodontia', 'tratamentos', 'lancar-gto', 'notificacoes', 'clinicas', 'configuracoes', 'contratos'],
|
||||
funcionario: ['dashboard', 'leads', 'pacientes', 'agenda', 'financeiro', 'tratamentos', 'lancar-gto', 'relatorios', 'notificacoes', 'clinicas', 'configuracoes', 'contratos'],
|
||||
};
|
||||
|
||||
@@ -218,7 +218,7 @@ const App: React.FC = () => {
|
||||
case 'leads': return <LeadsView />;
|
||||
case 'public': return <PublicContactForm />;
|
||||
case 'pacientes': return <PatientsView />;
|
||||
case 'agenda': return <AgendaView />;
|
||||
case 'agenda': return <AgendaView onNavigate={handleNavigate} />;
|
||||
case 'ortodontia': return <OrthoView />;
|
||||
case 'financeiro': return <FinanceiroView />;
|
||||
case 'dentistas': return <DentistasView />;
|
||||
|
||||
Reference in New Issue
Block a user