Skip to content

Migrar HIMP para Web com interface moderna, catálogos e controlo de acesso - #1

Draft
AceSCav wants to merge 7 commits into
mainfrom
codex/himp-web-migration
Draft

AceSCav wants to merge 7 commits into
mainfrom
codex/himp-web-migration

Conversation

@AceSCav

@AceSCav AceSCav commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner

O HIMP atual exige compilar a interface Tkinter para cada sistema operativo e alterar código para gerir várias listas. Esta proposta adiciona uma aplicação Django acessível pelo navegador, com interface responsiva em português, formulários para as seis áreas de gestão e administração dos catálogos na base de dados. Adiciona relatórios financeiros com filtros por período e cliente, evolução mensal de recebido/previsto, distribuição dos valores, recebimentos por motivo e faixas de atraso. Os gráficos usam os pagamentos existentes e respeitam a permissão de consulta de pagamentos.

Os documentos de clientes podem ser enviados para Google Drive, organizados em HIMP / cliente_id - Nome. Guarda IDs na base de dados e credenciais OAuth cifradas; inclui envio de ficheiros e DOCX gerados, recuperação de envios sem duplicação, criação/atualização de pastas e contexto de cliente preservado na criação e no retorno à lista. Documentos são acedidos pela ficha do cliente; o menu lateral não apresenta uma pesquisa geral de documentos, e listagem/criação sem cliente encaminham para Clientes. A pré-verificação do esquema desktop continua a comparar apenas as colunas originais, antes das novas migrações.

Pagamentos suportam a criação de 1 a 120 parcelas a partir do valor total, com distribuição exata dos cêntimos. A primeira parcela exige vencimento; um intervalo opcional em dias calcula as seguintes datas, ou deixa-as em branco para definição individual. Numeração e agrupamento identificam as parcelas; a criação e auditoria são atómicas e cada parcela pode ser editada separadamente.

Inclui contas Django com senhas protegidas, sessões/CSRF, limite de tentativas, funções Consulta/Gestão/Administração, auditoria, modelos DOCX privados e OAuth Web Google com tokens cifrados. Preserva nomes das tabelas de negócio e prepara a conversão dos montantes para numeric, das referências para texto e das datas da agenda para timezone explícito. O desktop permanece como referência durante a transição.

Validação local: 51 testes passaram em SQLite; check --deploy --fail-level WARNING passou com configurações de produção; makemigrations --check não encontrou alterações; collectstatic e verificação visual no navegador em desktop e 390 px concluídas. O workflow GitHub Actions passou com PostgreSQL 16, incluindo migrações, os 51 testes e verificações de produção: https://github.com/AceSCav/HiMP_Project/actions/runs/37665576663.

Este PR é um rascunho para revisão. Nenhuma base Supabase real foi alterada e a aplicação não foi publicada. Antes da transição é necessário testar --fake-initial numa cópia do esquema real, reconciliar valores/horários, recriar contas e carregar os DOCX (ausentes no repositório original), configurar/testar OAuth Calendar e Drive com uma conta real e restringir o acesso Supabase Data API. docs/MIGRATION.md descreve o procedimento e a recuperação por backup.

Limites explícitos: um único escritório; sincronização Google de criação/atualização apenas quando solicitada, sem sincronização inversa e sem remoção remota automática; anexos de processos continuam como referência textual; sem MFA ou recuperação de senha por email nesta versão.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant