Correcao Sidebar Classico e Rail, Correcao Layout, Ajuste de Breakpoint para Tailwind, Ajuste AppTopbar, Ajuste Menu PopOver, Recriado Paleta de Cores, Inserido algumas animações leves, Reajuste Cor items NOVOS da tabela, Drawer Ajuda Corrigido no Logout, Whatsapp, sms, email, recursos extras
This commit is contained in:
87
logs/agenda-terapeuta-debug.txt
Normal file
87
logs/agenda-terapeuta-debug.txt
Normal file
@@ -0,0 +1,87 @@
|
||||
Debug Agenda
|
||||
|
||||
Funcionando :
|
||||
|
||||
- Cadastrar compromisso do tipo Sessão, ok
|
||||
- Editar compromisso do tipo Sessão, ok
|
||||
- Trocar Valor do compromisso do tipo sessão, ok
|
||||
- Ajustar horário arrastando do compromisso do tipo sessão, ok
|
||||
|
||||
- Cada compromisso exibe sua cor própria ao ser adicionado na agenda, ok
|
||||
- Ao Atualizar as cores na Sessão de Compromissos, elas são ajustadas na agenda também, ok
|
||||
|
||||
- Status [Agendado, Realizado, Faltou, Cancelado e Remarcar] Todos estão funcionando, ok
|
||||
- O criar compromisso do tipo sessão está trazendo o valor padrão das configuraçãoes, ok
|
||||
- O editar está salvando o novo valor informado, ok
|
||||
|
||||
- Modalidade [Presencial, Online] está sendo salva ao editar, ok
|
||||
|
||||
- Ajuste de Mensagem : "Conflito com X às HH:MM" não é do samePatientConflict : Encontrei o bug. Na timeConflict (linha 1785), a exclusão do evento atual usa form.value.id — mas ocorrências virtuais têm id: null, então nunca são excluídas. A ocorrência fica conflitando consigo mesma.
|
||||
Causa: ocorrências virtuais têm id: null, então if (form.value.id && ...) nunca excluía a própria ocorrência da checagem — ela conflitava consigo mesma. Agora, para ocorrências virtuais, a exclusão é feita pelo par recurrence_id + original_date.
|
||||
|
||||
- Adição de Recorrencia, ok
|
||||
- Remoção de reorrencia, ok
|
||||
- Remoção de recorrencias futuras, ok
|
||||
- Remoção de todas as recorrencias, mantendo o compromisso raiz (inicial), ok
|
||||
- Adicionado Confirmação de remoção e frase de efeito, ok
|
||||
- "Todos os agendamentos futuros da série serão removidos permanentemente. Esta sessão será mantida como avulsa. Esta ação é irreversível."
|
||||
- "A série foi encerrada. Esta sessão foi mantida como avulsa."
|
||||
|
||||
Bugs conhecidos corrigidos :
|
||||
|
||||
Feito. Resumo dos 4 fixes:
|
||||
|
||||
┌──────┬─────────────────────────────────────────┬───────────────────────────────────────────────────────────────┐
|
||||
│ # │ Problema │ Solução │ ├──────┼─────────────────────────────────────────┼───────────────────────────────────────────────────────────────┤
|
||||
│ Bug │ Recorrência em evento existente → só │ Removida condição !id — agora cria a regra e vincula o evento │ │ 1 │ fazia update │ existente │
|
||||
├──────┼─────────────────────────────────────────┼───────────────────────────────────────────────────────────────┤
|
||||
│ Bug │ Botão de lixeira some quando form.id é │ Substituído por botão "Encerrar série" para hasSerie, lixeira │
|
||||
│ 2a │ null (virtual) │ simples para eventos avulsos │
|
||||
├──────┼─────────────────────────────────────────┼───────────────────────────────────────────────────────────────┤
|
||||
│ Bug │ X das pills some para sessões │ Removida restrição v-if="!isPast" — X sempre visível │
|
||||
│ 2b │ passadas/canceladas │ │
|
||||
├──────┼─────────────────────────────────────────┼───────────────────────────────────────────────────────────────┤
|
||||
│ Bug │ Sem confirmação ao encerrar série pelo │ onEncerrarSerie() com confirm.require() e aviso de │
|
||||
│ 2c │ botão novo │ irreversibilidade │
|
||||
└──────┴─────────────────────────────────────────┴───────────────────────────────────────────────────────────────┘
|
||||
|
||||
- Dots (mini-day-dot) adicionados em todos os dias que possuem compromissos, ok
|
||||
|
||||
Corrigido também na AgendaClinicaPage:
|
||||
|
||||
┌────────────────────────┬────────────────────────────────────────────────────────────────────────────────────────┐
|
||||
│ Fix │ O que foi feito │ ├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────┤
|
||||
│ Mini-day-dot │ loadMiniMonthEvents agora itera sobre todos os ownerIds da clínica chamando │ │ │ loadAndExpand para incluir ocorrências virtuais de recorrência │
|
||||
├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────┤
|
||||
│ 'todos' delete │ Mantém sessão atual como avulsa antes de cancelar a regra (igual ao terapeuta, usando │
|
||||
│ │ createClinic/updateClinic) │
|
||||
├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────┤
|
||||
│ Recorrente em evento │ Removida condição !id, cria a regra e vincula evento via updateClinic │
|
||||
│ existente │ │
|
||||
├────────────────────────┼────────────────────────────────────────────────────────────────────────────────────────┤
|
||||
│ ConfirmDialog │ Adicionado <ConfirmDialog /> na página para as confirmações funcionarem corretamente │
|
||||
└────────────────────────┴────────────────────────────────────────────────────────────────────────────────────────┘
|
||||
|
||||
Quando adiciona um compromisso na agenda e não aparece :
|
||||
|
||||
1. Join FK errada (!determined_commitment_id → !agenda_eventos_determined_commitment_fk) em ambos
|
||||
agendaClinicRepository.js e useAgendaEvents.js — esse era o bug principal. O Supabase usava o nome do constraint FK (agenda_eventos_determined_commitment_fk), não o nome da coluna. A query estava falhando silenciosamente, mantendo
|
||||
rows.value no estado anterior (vazio na primeira carga). 2. modalidade ausente do pickDbFields — adicionado para não perder a modalidade selecionada pelo usuário.
|
||||
3. Toast de erro após _reloadRange — agora, se o reload falhar, um warning aparece em vez de mostrar sucesso sem
|
||||
eventos.
|
||||
|
||||
Para colorir o background dos compromissos :
|
||||
|
||||
Pronto. Adicionei eventContent no buildFcOptions do AgendaClinicMosaic — mesmo código do AgendaTerapeutaPage — com
|
||||
avatar (foto ou iniciais), horário, título e observações. O CSS foi adicionado em bloco não-scoped para que o HTML
|
||||
injetado pelo FullCalendar seja estilizado corretamente.
|
||||
|
||||
As cores dos compromissos já chegavam via backgroundColor no mapper (tanto para o terapeuta quanto para a clínica), o
|
||||
que estava faltando era o eventContent customizado que dá o mesmo visual.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user