Logica do SistemaSecao 12
Background Workers — Resumo
AtualizarOfertasWorker
| Atributo | Valor |
|---|---|
| Arquivo | cargo_fleet.HttpApi.Host/BackgroundJobs/AtualizarOfertasWorker.cs |
Timer.Period | 1ms (mas sequencial por design) |
| Estrategia por tenant | Sequencial (foreach + await) |
| Funcao | Atualizar status de ofertas aceitas, criar OfertaRecords, enviar WhatsApp |
| Status | Ativo |
VerificarRotasWorker
| Atributo | Valor |
|---|---|
| Arquivo | cargo_fleet.HttpApi.Host/BackgroundJobs/VerificarRotasWorker.cs |
Timer.Period | 1 dia |
| Funcao | Alertar sobre rotas expirando hoje via Firebase |
| Status | Ativo |
RetentionPolicyWorker
| Atributo | Valor |
|---|---|
| Arquivo | cargo_fleet.HttpApi.Host/BackgroundJobs/RetentionPolicyWorker.cs |
Timer.Period | 1 dia |
| Funcao | Limpar registros antigos de ApiStatus (>4 meses) |
| Status | Ativo — desabilita filtro IMultiTenant para processar todos os tenants |
RegistrarOfertasWorker (legado)
| Atributo | Valor |
|---|---|
| Arquivo | cargo_fleet.HttpApi.Host/BackgroundJobs/RegistrarOfertasWorker.cs |
Timer.Period | 1ms |
| Estrategia por tenant | Paralelo (Task.WhenAll) |
| Funcao | Criar e aceitar ofertas (logica legada, endpoint antigo da Galileu) |
| Status | Registrado no DI, mas com bug P-02 (autenticacao invertida) que faz todos os ciclos falharem imediatamente |
| Risco | Se P-02 for corrigido sem desativar o worker, passa a rodar em paralelo ao ProcessarOfertasWorker (P-01 torna-se imediato) |
ProcessarOfertasWorker
cargo_fleet.HttpApi.Host/BackgroundJobs/ProcessarOfertasWorker.csTimer.PeriodTask.DelayTask.WhenAll) sem limite de concorrenciaCriarOfertasJob) + aceitar automaticamente (AceitarOfertasJob)