wiki + padronizacao: §1.3 UX 3/4 fechado (#10/#11/#13 done · #12 bloqueado)

Atualiza PADRONIZACAO.md marcando §1.3 UX como 3 de 4 fechados.
#12 papel timbrado documentado como bloqueado em codigo externo
do UniaoApp.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Leonardo
2026-05-21 05:22:25 -03:00
parent b1e8e010c0
commit d7cd2541e4
2 changed files with 42 additions and 0 deletions
+37
View File
@@ -1318,3 +1318,40 @@ quando record.status === 'paid'. Toast + loading state.
PROXIMO: UX §1.3 (busca global + recently viewed + papel timbrado
+ relatorios export) OU sweep residual (M4 cutover billing decisoes
#2/#3/#6).
## [2026-05-21 evening] session | ROADMAP §1.3 UX 3/4 (#10/#11/#13)
Touched: none
3 commits fechando 3 dos 4 itens da Fase 1.3 UX:
#10 Busca global topbar — GlobalSearch.vue ja estava feito no Rail/
classic. **MelissaBusca promovida** de preview client-side pra RPC
search_global com debounce 200ms + searchSeq pra ignorar respostas
obsoletas. 3 grupos novos exibidos quando RPC retorna: sessoes,
documentos, cadastros recebidos. @paciente no MelissaLayout
corrigido (antes ignorava payload — bug). Emits novos: documento,
intake.
#11 Recently viewed — composables/useRecentPatients.js (localStorage
por user_id, max 5, dedup, eventos CustomEvent + 'storage' pra sync
entre instancias no mesmo browser). registerPatientVisit chamado
em MelissaPaciente.loadAll e PatientProntuario.loadDetail. Grupo
"Acessados recentemente" no GlobalSearch.vue + MelissaBusca.vue
quando query vazia. Decisao: localStorage > tabela user_recent_access
por simplicidade + zero round-trip por visita.
#13 Relatorios export PDF/Excel — services/reportExport.service.js
com exportSessionsToPDF (pdf.service HTML→PDF + KPIs + tabela A4),
exportSessionsToXLSX (exceljs com import dinamico, frozen header,
alternating rows, branded), exportSessionsToCSV (vanilla, BOM UTF-8,
separador ';'). 3 botoes pi-file-pdf/pi-file-excel/pi-table em
RelatoriosPage.vue (therapist) + MelissaRelatorios.vue. Respeita
filtro de status da tabela.
#12 Papel timbrado — BLOQUEADO: codigo no UniaoApp. Quando user
importar, plugar como cabecalho_html/rodape_html global em
document_templates ou setting tenants.letterhead_html.
PROXIMO: NFS-e (#15, esforco L), §1.5 Sentry (#18 nao-teste),
sweep residual (M4 cutover billing — bloqueado decisoes #2/#3/#6),
ou agenda Fase 4 residual.