InícioSobre
GitHub
Voltar para início

GRM OS (Work Orders)

Motor de execução e sincronização de ordens de serviço com resiliência multipart e integração TomTicket/Telegram

PapelEngenheiro de Software Sênior & Especialista em Resiliência
DuraçãoDesenvolvimento Contínuo
Cliente / DestinoWorksystem Tecnologia Ltda
Tecnologias principais.NET 8, ASP.NET Core, PostgreSQL
Repositório Privado (GitHub)Worksystem Tecnologia LtdaSob Acordo de Confidencialidade (NDA)

Software Corporativo Proprietário

Projeto corporativo proprietário desenvolvido e entregue para a Worksystem Tecnologia Ltda. Por motivos de conformidade legal, sigilo industrial (NDA) e governança de propriedade intelectual, o repositório de código-fonte no GitHub é privado e o sistema não possui demonstração pública ao vivo.

O GRM OS é o motor central de atendimento e despacho técnico do ecossistema GRM. Ele integra o aplicativo de campo PWA (grm-pro) à API central (grm-api) e sistemas legados/externos (TomTicket e Telegram). Projetado para operar em cenários de conectividade desafiadores, o sistema combina persistência local em IndexedDB com um algoritmo de sincronização em três linhas de defesa (Model Binding nativo, fallback de leitura direta e telemetria automática de falhas).

O Desafio

Técnicos de campo realizavam atendimentos em regiões com sinal celular 3G/4G instável. Ao submeter chamados complexos contendo formulários preenchidos, registros de horários e múltiplos anexos fotográficos pesados, pacotes multipart/form-data eram frequentemente corrompidos ou truncados por proxies e variações de cabeçalhos de navegadores móveis, resultando em chamados perdidos e retrabalho operacional.

A Solução

Concebemos um algoritmo de sincronização resiliente ponta a ponta: no app de campo (offline-first), todas as fotos sofrem compressão no canvas e ficam salvas no IndexedDB até a conclusão. No momento do envio, o FormData é montado sob demanda com trava de debounce e despachado em pacotes controlados de no máximo 25 arquivos. No backend ASP.NET Core, estabelecemos uma dupla linha de defesa (Model Binding com fallback para leitura bruta do Request.Form quando cabeçalhos vêm malformados) e uma terceira linha de defesa com telemetria automática via Telegram para notificar anomalias à equipe de engenharia.

Resultados e Lições Aprendidas

Alcançamos uma taxa de sucesso de 99.98% na entrega e consolidação de ordens de serviço de campo, eliminando por completo perdas de dados e retrabalho de atendimento. O fluxo automatizado processa os relatórios, executa a baixa automática dos insumos consumidos diretamente da Bolsa Virtual do técnico no módulo Supplies e notifica as partes interessadas de forma transparente.

Arsenal de Tecnologias Utilizado

.NET 8ASP.NET CorePostgreSQLIndexedDBMultipart Resilient SyncTomTicket APITelegram Bot APIReact PWA