Repository navigation
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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.