Como uma Simples Solução em JavaScript Economizou Horas de Trabalho na Empresa
Meu nome é Eder Lima, sou estudante da DIO desde 2022, focado em desenvolvimento Front-End, com mais de 190 conquistas na plataforma. Atualmente, também estou expandindo meus conhecimentos em Java.
Contexto
Atuo no setor de Recursos Humanos de uma empresa cujo controle de ponto eletrônico é realizado por biometria digital. O dispositivo utilizado possui uma limitação técnica: ao atingir 5.000 registros, ele não permite a inserção de novos colaboradores, tornando necessária a exclusão periódica dos registros inativos.
Problema
O acesso ao sistema é realizado exclusivamente via navegador, por meio de um IP específico, e apresenta funcionalidades bastante restritas. A interface exibe os registros paginados, permitindo visualizar apenas 30 entradas por vez. Para excluir um registro, é necessário selecionar manualmente o ícone da lixeira e confirmar a exclusão, tornando o processo altamente ineficiente e demorado. A exclusão completa de 5.000 registros exigiria horas de trabalho repetitivo.
Análise e Identificação da Solução
Diante da ineficiência do processo manual, decidi explorar alternativas utilizando meus conhecimentos em manipulação da DOM. Para isso, utilizei a ferramenta de inspeção do navegador para analisar o comportamento do sistema durante a exclusão de registros. Identifiquei as classes CSS utilizadas, as funções acionadas e a estrutura dos dados manipulados. Percebi que poderia otimizar a exclusão automatizando a seleção dos registros de forma programática.
Implementação da Solução
Após testes e validações, a solução foi implementada em dois passos principais:
1. Expansão da Quantidade de Registros por Página
- Descobri que a configuração do número de usuários exibidos por página era definida por um elemento <option>, cujo atributo value poderia ser modificado diretamente via JavaScript.
- Ao alterar esse valor, foi possível exibir todos os 5.000 registros simultaneamente, eliminando a necessidade de navegação entre páginas.
2. Automação da Seleção e Exclusão de Registros
- Identifiquei que, ao clicar no ícone de exclusão, o sistema adicionava dinamicamente uma classe .red ao item selecionado.
- Com base nessa observação, desenvolvi um script para iterar sobre todos os elementos da lista, aplicando a classe .red automaticamente a todos os registros.
const btn = document.querySelectorAll(".btn-remove")
btn.forEach((item) => {item.classList.add("red")})
- Após essa marcação em massa, a exclusão pôde ser realizada em um único comando, eliminando a necessidade de interações repetitivas.
Resultados e Impacto
A implementação dessa solução resultou em uma economia significativa de tempo, eliminando horas de trabalho repetitivo. Além de otimizar minhas próprias tarefas, a solução foi disseminada para todas as filiais da empresa, proporcionando ganhos de eficiência em nível organizacional.
Conclusão
Esse projeto demonstrou como o uso estratégico de conhecimentos técnicos, mesmo que aparentemente simples, pode gerar impactos substanciais na produtividade. A principal lição aprendida foi a importância de explorar soluções criativas para problemas cotidianos, utilizando a tecnologia para eliminar processos ineficientes.
Nunca subestime o potencial das suas habilidades. Pequenas soluções podem transformar a rotina de trabalho e agregar valor a toda a equipe!
#JavaScript #Automação #Produtividade #RH #DesenvolvimentoWeb #DOM #FrontEnd #Inovação #Eficiência #Tech #SoluçõesCriativas #Código #WebDevelopment #DIO #Programação #Otimização