Romaneio
Lista romaneios com filtros
Lista os romaneios (`OrdersCarrierCollectionList`) da empresa, opcionalmente filtrados por status, transportadora, CD, operador, código do romaneio e intervalo de datas. Limite fixo de 500 registros. Quando o usuário tem restrição de CD (`UserCompanyDistributionCenter` no Redis) e o `IDStockKeepingUnitDistributionCenter` solicitado não está na lista permitida, retorna array vazio.
Cria romaneio vazio para uma transportadora
Cria um romaneio novo (`OrdersCarrierCollectionList`) em status `1` (Aberto), sem pacotes vinculados. O `IDCarrier` precisa pertencer a um fornecedor (`Suppliers`) da empresa autenticada.
Detalhe do romaneio (com pedidos e pendências)
Detalhe completo do romaneio. Além dos campos do `List`, inclui `Orders` (todos os pedidos/volumes do romaneio com dados do destinatário, NF, rastreio e peso) e `PedingPackages` (volumes do pedido que estão em **outros** romaneios — usado para avisar sobre split ao fechar).
Altera a transportadora do romaneio inteiro
Substitui a transportadora de **todos os pedidos** do romaneio pela informada em `IDCarrier`. Só permitido enquanto o romaneio **ainda não foi assinado** (`FileName1 IS NULL`).
Fecha o romaneio (status 1 → 2)
Move o romaneio de Aberto (1) para Fechado (2). A partir daí o romaneio aceita conferência por bipagem mas não recebe pacotes novos.
Salva assinatura do motorista e PDF final
Registra a retirada do romaneio pela transportadora: salva os dados do motorista, a imagem da assinatura digital, anexos opcionais e o PDF do romaneio. Bloqueia toda edição posterior do romaneio (alterar transportadora, remover pacote, merge).
Finaliza o romaneio e despacha os pedidos
Despacha o romaneio. Move o status para `3` (Finalizado), grava `RecordTimestampEnd = NOW()` e aplica em paralelo:
Mescla romaneios da mesma transportadora (não publicado)
Mescla um ou mais romaneios de **origem** dentro de um romaneio **destino** (path param). Útil para consolidar romaneios de pequenas retiradas em uma única folha. Os pedidos e pacotes das origens migram para o destino e os registros origem são deletados.
Reabre o romaneio (status 2 → 1)
Move o romaneio de Fechado (2) de volta para Aberto (1), permitindo amarração de pacotes novos. **Romaneios Finalizados (3) não podem ser reabertos** — uma vez despachado o romaneio é definitivo (os pedidos já estão como Enviado e os pacotes com data de embarque).
Remove pacotes do romaneio e reatribui transportadora
Remove um subconjunto de pacotes do romaneio e atribui uma nova transportadora aos pedidos afetados. Operação típica de correção: pacote foi para o romaneio errado e precisa ir em outra transportadora ou ficar para outro dia.