Ferramenta WEB interna para automatizar completamente o processo diário de tratamento dos mapas de doação que recebemos em formato Excel.
Até agora, o processo era 100% manual e repetitivo. Exigia que um operador:
- Abrisse o Excel na aba "MAP MACR".
- Conferisse e corrigisse manualmente a coluna "HOSPITAL" com base no código "DOACAO HEMOVIDA".
- Procurasse e removesse manualmente todas as linhas que contivessem termos como "NULO", "NULA", "CANCELADO", "INACESSIBILIDADE DE VEIA", etc.
- Verificasse visualmente se as datas de nascimento estavam corretas.
- Copiasse os dados até a coluna "P.A.I".
- Salvasse como CSV e, por fim, renomeasse para .txt.
Esse fluxo era demorado e altamente suscetível a erros humanos.
A nova ferramenta é uma página web simples que substitui todo esse trabalho.
Como funciona para o usuário:
- O usuário acessa a página.
- Arrasta (ou seleciona) o arquivo Excel bruto (.xls, .xlsx, etc.) para a área indicada.
- O download do arquivo importacao.txt (já limpo, formatado e pronto para importação) é iniciado automaticamente.
Ao receber o arquivo, o script da aplicação executa todas as regras de negócio automaticamente:
- Validação de Datas (Crítica): Ele verifica a coluna "DT. NASC.". Se encontrar qualquer data que não seja um formato válido (ex: um texto ou formato incorreto), ele interrompe o processo e exibe um erro detalhado para o usuário.
- Limpeza de Linhas: Ele filtra e remove automaticamente todas as linhas que contenham os termos de descarte ("NULO", "CANCELADO", etc.).
- Aviso de Filtro: Se linhas forem removidas, o sistema gera o .txt normalmente, mas exibe um aviso amarelo informando o usuário sobre quantas e quais linhas foram filtradas.
- Correção de Dados: Ele sobrescreve o campo "HOSPITAL" usando o 2º e 3º dígito do código "DOACAO HEMOVIDA".
- Tratamento de Erros: É analisado se o código da "DOACAO HEMOVIDA" e o código do "DOAÇAO NAT" estão seguindo o padrão de tamanho e se não estão sendo repetidos.
- Formatação de Saída: Ele gera o .txt final usando ponto e vírgula (;) como delimitador e garante a formatação correta (ex: sem aspas no nome do doador).
- Frontend: HTML5, CSS3 e JavaScript (Vanilla JS) para a interface de upload e feedback do usuário.
- Backend: PHP.
- Dependência Principal: phpoffice/phpspreadsheet (gerenciado via Composer) para ler e processar os arquivos Excel.
O objetivo é eliminar o trabalho manual, reduzir erros de importação a zero e garantir um processo padronizado e rápido.