Fiz um Script em dart para converter um arquivo de planilha para meu APP de Ônibus
Olá pessoal, vim compartilhar um script que fiz em Dart para um problema que eu tive que enfrentar. Eu tenho um app sobre horário de ônibus aqui na minha cidade (Garanhuns, interior de Pernambuco). É o app mais baixado da cidade e bem utilizado, só que há bastante tempo eu parei de atualiza-lo pois dava muito trabalho, tinha q converter tudo MANUALMENTE, decidi automatizar um pouco isso senão ficaria inviável. Bem, fui desenvolver um script pra me ajudar nisso.
Eles liberam apenas um PDF, o qual eu transformo em XLSX para poder ser usado e decodificado com mais facilidade no dart. A planilha segue um padrão (amem) porém às vezes os onibus saem de 4, 3 ou 2 lugares diferentes, então foi um desafio bacana de conseguir contornar isso.
Utilizei o package EXCEL do pub.dart. O script consegue converter tudo isso em dados JSON para que eu possa usá-lo com facilidade no meu app, automatizando muita coisa, inclusive, subindo os 3 arquivos gerados para o firestore, que tem nativamente um sistema de "cache" bem eficiente e simples. Então o app é atualizado em tempo real e com um cache bem bacana.
O repositório do projeto está aqui, quem quiser baixar e testar fique à vontade. Aliás, se quiser fazer o uso do Script para usar no seu próprio app de horário de onibus, fique à vontade. Creio que a maioria das empresas usam esse formato, mas de qualquer forma vc pode alterar o script com poucos ajustes. Abraços!
Link do repo: https://github.com/ataliasraniel/sheet-wizard
Link para a carta de horario em XLSX de exemplo: https://firebasestorage.googleapis.com/v0/b/ibus-garanhuns.appspot.com/o/1-CARTA%20HORÁRIA%20UTEIS.pdf?alt=media&token=793abc81-b48e-48bd-b309-41b62b873c6f
Link do json de exemplo: https://firebasestorage.googleapis.com/v0/b/ibus-garanhuns.appspot.com/o/uteis..json?alt=media&token=e90c0561-dd5d-4f19-b951-e5c689ccf111