3.1 KiB
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
- Análise do Schema: Foi verificado que os campos da galeria (
active,suite_category,suite_number, etc) poderiam receber nomenclaturas genéricas (String). - 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.
- Arquivo:
- 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.
- Arquivo:
- Resolução de Code Smells/Lints:
- Arquivo:
app/javascript/dashboard/routes/dashboard/settings/inbox/settingsPage/LandingHostsConfig.vue. - Modificado para remover usos indevidos de
window.confirmomitindo 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.
- Arquivo:
Principais Códigos e Arquivos Alterados
app/javascript/dashboard/i18n/locale/pt_BR/captain.jsonapp/javascript/dashboard/routes/dashboard/settings/captain/gallery/Index.vueapp/javascript/dashboard/routes/dashboard/settings/inbox/settingsPage/LandingHostsConfig.vue(arquivos de configuração de host também subiram juntos no commit)
Como Validar
- Acesse o painel do Captain (Settings > Captain > Galeria) e tente criar um novo item.
- Verifique que as labels lidas já são "Categoria" e "Nome/Identificador".
- 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").