Histórico da Página
...
Implementar uma API que permita a quebra de um pedido existente em múltiplos pedidos, com base em uma estrutura segregada de itens recebida via JSON. A API deve atualizar o pedido original com um dos grupos enviados e gerar novos pedidos para os demais, replicando dados e respeitando regras já aplicadas na quebra feita pela rotina 336.
Entrada da API
- JSON contendo:
- Número do pedido original (NUMPED)
...
- Código do item
- NUMSEQ
- Quantidade
Saída esperada
- Atualização do pedido original com os itens do grupo 1
- Geração de novos pedidos (NUMPED) para os demais grupos
- Após a quebra, a API de recálculo de cabeçalho deve ser chamada passando todos os NUMPED gerados (Incluindo o NUMPED original do grupo 1) como parâmetro
- Retorno em JSON contendo:
- numped_original
- Lista de numped_gerados
...
- Por enquanto não vamos configurar permissões para quebrar pedidos com expedição iniciada. Então vamos começar com a regra mais básica, que é NÃO PERMITIR A QUEBRA com o mapa de separação emitido. Já existem validações para esse cenário na 336, através da permissão 12 da 530. Verificar qual campo da PCPEDC é validado na permissão 12 e validar o mesmo nessa API. Se o mapa já tiver sido emitido, a API deve abortar a quebra e devolver uma mensagem, avisando ao usuário que após a emissão do mapa não é possível quebrar o pedido.
Gravar campos de rastreio nos novos pedidos (NUMPEDORIG e demais que a 336 já grava, se tiver mais algum)
No fim da quebra, a API deve chamar a API de recálculo de cabeçalhos para atualizar os dados de cabeçalho de todos os pedidos gerados.
03. SOLUÇÃO
Criado um novo end-point para realizar a quebra de um pedido.
...
| Totvs custom tabs box | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||
|
...