From e5e2ed762e818b6a36740044726c9645fc43a8f8 Mon Sep 17 00:00:00 2001 From: Rodrigo Borba Date: Tue, 3 Mar 2026 11:35:20 -0300 Subject: [PATCH] docs: add relatorio de progresso de generalizacao de galeria --- ...3-03_generalizacao_nomenclatura_galeria.md | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 progresso/2026-03-03_generalizacao_nomenclatura_galeria.md diff --git a/progresso/2026-03-03_generalizacao_nomenclatura_galeria.md b/progresso/2026-03-03_generalizacao_nomenclatura_galeria.md new file mode 100644 index 000000000..1b1439177 --- /dev/null +++ b/progresso/2026-03-03_generalizacao_nomenclatura_galeria.md @@ -0,0 +1,34 @@ +# Generalização da Nomenclatura da Galeria (Captain) + +## Objetivo +Remover a restrição da galeria de itens de estar atrelada apenas a "Suítes" (com campos específicos como Categoria de Suíte e Número da Suíte). O objetivo é usar uma nomenclatura mais genérica (Categoria e Nome/Identificador) para que a galeria possa exibir fotos e informações de outras comodidades e áreas, não apenas suítes. + +## Contexto +O modelo de dados atual da Galeria no backend salva os valores nos campos `suite_category` e `suite_number`. Como a mudança do esquema de banco de dados, API e payloads no backend exigiria um esforço alto de migração, refatoração de código e causaria risco de downtime, priorizou-se uma solução arquitetural baseada apenas no Frontend e em Internacionalização (i18n). Dessa forma, mantemos o banco intacto, mas permitimos aos usuários inserirem qualquer tipo de agrupamento de imagens. + +## Passos Realizados +1. **Análise do Schema**: Foi verificado que os campos da galeria (`active`, `suite_category`, `suite_number`, etc) poderiam receber nomenclaturas genéricas (String). +2. **Atualização de Traduções (i18n)**: + - Arquivo: `app/javascript/dashboard/i18n/locale/pt_BR/captain.json`. + - Mudou-se de "Categoria da Suíte" para "Categoria" e de "Número da Suíte" para "Nome/Identificador". + - Ajustadas descrições e subtextos das labels para deixá-las abrangentes. +3. **Atualização Visual (UI)**: + - Arquivo: `app/javascript/dashboard/routes/dashboard/settings/captain/gallery/Index.vue`. + - Removidas as duas colunas separadas para "Categoria" e "Número" na listagem. + - Criada uma coluna única e concisa, mostrando "Categoria - Identificador" no grid para economizar espaço e suportar nomes de áreas comuns de hotéis/imóveis. +4. **Resolução de Code Smells/Lints**: + - Arquivo: `app/javascript/dashboard/routes/dashboard/settings/inbox/settingsPage/LandingHostsConfig.vue`. + - Modificado para remover usos indevidos de `window.confirm` omitindo comentários de lint e formatado com o padrão de quebras de linha (`prettier`) de forma local para permitir o push no repositório. + +## Principais Códigos e Arquivos Alterados +- `app/javascript/dashboard/i18n/locale/pt_BR/captain.json` +- `app/javascript/dashboard/routes/dashboard/settings/captain/gallery/Index.vue` +- `app/javascript/dashboard/routes/dashboard/settings/inbox/settingsPage/LandingHostsConfig.vue` (arquivos de configuração de host também subiram juntos no commit) + +## Como Validar +1. Acesse o painel do Captain (Settings > Captain > Galeria) e tente criar um novo item. +2. Verifique que as labels lidas já são "Categoria" e "Nome/Identificador". +3. Crie uma categoria que não seja de quarto (ex: "Piscina" / "Área de Lazer"). A tabela exibirá `Piscina - Área de Lazer`. + +## Como Reverter +Dê rollback através de `git revert`, buscando o commit específico (`feat: configuração de landing pages por domínio e generalização da galeria`). Por se tratar de atualizações de frontend (tradução e UI), a reversão não quebrará os dados gravados durante esta sessão, reestabelecendo apenas a nomenclatura antiga ("Suítes").