Commit Inicial
This commit is contained in:
commit
0f47953453
24 changed files with 1366 additions and 0 deletions
25
app/v1/scardua/modules/garantia/service.py
Normal file
25
app/v1/scardua/modules/garantia/service.py
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
from .schemas import DadosCompras, PayloadCompras
|
||||
from .service import processar_compras
|
||||
from app.services.api_cliente import
|
||||
|
||||
|
||||
async def processar_compras(
|
||||
dados: DadosCompras
|
||||
) -> dict:
|
||||
payload = montar_payload(dados)
|
||||
|
||||
ok, retorno = await apollo.enviar_compra(payload.model_dump(mode="json"), conn)
|
||||
if not ok:
|
||||
raise HTTPException(502, f"Falha ao enviar para a API externa: {retorno}")
|
||||
return {"status": "enviado", "id_processo": dados.id, "retorno": retorno}
|
||||
|
||||
def montar_payload(dados: DadosCompras) -> PayloadCompras:
|
||||
p = dados.properties
|
||||
return PayloadCompras(
|
||||
cnpj=p.cnpj,
|
||||
pedido_linx=p.pedido_linx,
|
||||
fornecedor=p.fornecedor,
|
||||
tipo=p.tipo_compra,
|
||||
valor_total=p.total_parcelas,
|
||||
parcelas=p.parcelas,
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue