docs/development-guide.md
Guia de Desenvolvimento
DOCS
MD
Guia de Desenvolvimento
Pre-requisitos
- PHP 8.x com extensoes para:
pdo_mysql
pdo_sqlsrv
curl
mbstring
gd
fileinfo
- Composer
- Acesso ao MySQL principal
- Acesso ao SQL Server
Gestor90
- Apache ou stack equivalente com suporte a PHP-FPM
Dependencias PHP
Dependencias declaradas em composer.json:
erusev/parsedown
ezyang/htmlpurifier
dompdf/dompdf
Instalacao:
composer install
Configuracao de banco
MySQL
Arquivo: config/database.php
Responsabilidades:
- autenticacao
- historicos
- usuarios
- clientes inativos
- documentos
- metas e gratificacoes
- KB
SQL Server
Arquivo: config/database_sqlsrv.php
Responsabilidades:
- carteira
- propostas
- parcelas
- recebimentos
- dados financeiros de origem
Subir o projeto localmente
Exemplo simples:
php -S 0.0.0.0:8080 -t /var/www/html/cobranca
Observacao:
- o ambiente real do projeto parece depender de Apache/PHP-FPM, entao o servidor embutido do PHP e util apenas para verificacoes rapidas
Configuracoes operacionais relevantes
Arquivo .user.ini:
memory_limit = 512M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 120
date.timezone = America/Sao_Paulo
Ponto de entrada por fluxo
Como localizar uma alteracao
Alteracao visual em pagina
- localizar a pagina PHP da raiz
- localizar o script em
js/ ou assets/js/
- localizar o endpoint em
src/api/
Alteracao em regra de cobranca
Buscar primeiro em:
src/api/functions_cobranca.php
src/api/cobranca30/*
src/contatos/*
dashboard_data.php
Alteracao em uploads/documentos
Buscar em:
assets/js/documentos_cliente.js
src/api/documentos/*
storage/documentos/
Alteracao em IA
Buscar em:
assets/js/config_ia.js
assets/js/historico_clientes_ia.js
src/api/texto/*
Estrategia recomendada para novas features
- mapear pagina + JS + endpoint + tabela afetada
- validar qual banco e fonte da verdade do fluxo
- manter compatibilidade com sessao e perfis
- preferir adicionar logs de erro em endpoints novos
- evitar duplicar SQL sem extrair criterio comum quando a logica for critica
Testes e validacao
Nao foi encontrada suite de testes automatizados da aplicacao.
Validacao pratica recomendada:
- validar login com perfil
gerencia e cobrador
- validar a pagina principal afetada
- validar o endpoint diretamente no navegador ou via fetch da propria pagina
- verificar logs em
logs/
- confirmar efeitos no MySQL e no SQL Server
Existe apenas um arquivo utilitario de teste/manual:
EVO Method no projeto
O metodo EVO foi instalado localmente:
Fluxos relevantes para evolucao futura:
document-project
generate-project-context
create-prd
create-architecture