worker-automate-hub 0.5.737__tar.gz → 0.5.739__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/PKG-INFO +1 -1
  2. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/pyproject.toml +1 -1
  3. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/client.py +135 -19
  4. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_16.py +6 -6
  5. worker_automate_hub-0.5.739/worker_automate_hub/tasks/jobs/opex_capex.py +832 -0
  6. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/utils_nfe_entrada.py +10 -7
  7. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/README.md +0 -0
  8. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/__init__.py +0 -0
  9. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/__init__.py +0 -0
  10. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/ahead_service.py +0 -0
  11. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/datalake_service.py +0 -0
  12. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/helpers/__init__.py +0 -0
  13. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/helpers/api_helpers.py +0 -0
  14. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/rdp_service.py +0 -0
  15. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/rpa_fila_service.py +0 -0
  16. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/rpa_historico_service.py +0 -0
  17. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/api/webhook_service.py +0 -0
  18. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/cli.py +0 -0
  19. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/config/__init__.py +0 -0
  20. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/config/settings.py +0 -0
  21. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/config.py +0 -0
  22. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/core/so_manipulation.py +0 -0
  23. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/__init__.py +0 -0
  24. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/deprecation.py +0 -0
  25. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/rate_limit.py +0 -0
  26. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/repeat.py +0 -0
  27. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/retry.py +0 -0
  28. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/singleton.py +0 -0
  29. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/decorators/timeit.py +0 -0
  30. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/__init__.py +0 -0
  31. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dao/__init__.py +0 -0
  32. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dao/rpa_configuracao.py +0 -0
  33. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dao/rpa_fila.py +0 -0
  34. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dao/rpa_historico.py +0 -0
  35. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dao/rpa_processo.py +0 -0
  36. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dao/rpa_robo.py +0 -0
  37. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dto/__init__.py +0 -0
  38. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dto/rpa_historico_request_dto.py +0 -0
  39. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dto/rpa_processo_entrada_dto.py +0 -0
  40. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dto/rpa_processo_rdp_dto.py +0 -0
  41. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dto/rpa_sap_dto.py +0 -0
  42. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/models/dto/rpa_sistema_dto.py +0 -0
  43. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/__init__.py +0 -0
  44. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/__init__.py +0 -0
  45. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/abertura_livros_fiscais.py +0 -0
  46. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/coleta_dje_process.py +0 -0
  47. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/conexao_rdp.py +0 -0
  48. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/cte_manual.py +0 -0
  49. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/cte_xml.py +0 -0
  50. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/descartes.py +0 -0
  51. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/devolucao_ctf.py +0 -0
  52. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/devolucao_ctf_35.py +0 -0
  53. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/devolucao_prazo_a_faturar.py +0 -0
  54. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/ecac_estadual_go.py +0 -0
  55. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/ecac_estadual_main.py +0 -0
  56. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/ecac_estadual_mt.py +0 -0
  57. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/ecac_estadual_sc.py +0 -0
  58. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/ecac_estadual_sp.py +0 -0
  59. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/ecac_federal.py +0 -0
  60. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_cte_1353.py +0 -0
  61. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_cte_333.py +0 -0
  62. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_15.py +0 -0
  63. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_207.py +0 -0
  64. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_32.py +0 -0
  65. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_33.py +0 -0
  66. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_34.py +0 -0
  67. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_36.py +0 -0
  68. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_39.py +0 -0
  69. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_500.py +0 -0
  70. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_503.py +0 -0
  71. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_505.py +0 -0
  72. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_7139.py +0 -0
  73. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_9.py +0 -0
  74. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/entrada_de_notas_9000.py +0 -0
  75. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/exemplo_processo.py +0 -0
  76. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/extracao_fechamento_contabil.py +0 -0
  77. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/extracao_fechamento_emsys.py +0 -0
  78. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/fechar_conexao_rdp.py +0 -0
  79. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/fidc_exportacao_docs_portal_b2b.py +0 -0
  80. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py +0 -0
  81. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/fidc_remessa_cobranca_cnab240.py +0 -0
  82. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/fidc_retorno_cobranca.py +0 -0
  83. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/geracao_aprovacao_pedidos.py +0 -0
  84. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/geracao_aprovacao_pedidos_novo.py +0 -0
  85. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/integracao_contabil.py +0 -0
  86. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/integracao_contabil_generica.py +0 -0
  87. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/lancamento_pis_cofins.py +0 -0
  88. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/lancamento_rateio.py +0 -0
  89. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/login_emsys.py +0 -0
  90. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/login_emsys_versao_especifica.py +0 -0
  91. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/notas_faturamento_sap.py +0 -0
  92. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/playground.py +0 -0
  93. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/sped_fiscal.py +0 -0
  94. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/jobs/transferencias.py +0 -0
  95. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/task_definitions.py +0 -0
  96. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/tasks/task_executor.py +0 -0
  97. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/__init__.py +0 -0
  98. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/env.py +0 -0
  99. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/get_creds_gworkspace.py +0 -0
  100. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/logger.py +0 -0
  101. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/toast.py +0 -0
  102. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/updater.py +0 -0
  103. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/utils/util.py +0 -0
  104. {worker_automate_hub-0.5.737 → worker_automate_hub-0.5.739}/worker_automate_hub/worker.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: worker-automate-hub
3
- Version: 0.5.737
3
+ Version: 0.5.739
4
4
  Summary: Worker Automate HUB é uma aplicação para automatizar rotinas de RPA nos ambientes Argenta.
5
5
  Author: Joel Paim
6
6
  Requires-Python: >=3.12,<4.0
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "worker-automate-hub"
3
- version = "0.5.737"
3
+ version = "0.5.739"
4
4
  description = "Worker Automate HUB é uma aplicação para automatizar rotinas de RPA nos ambientes Argenta."
5
5
  authors = ["Joel Paim"]
6
6
  readme = "README.md"
@@ -1,5 +1,7 @@
1
1
  from decimal import ROUND_HALF_UP, Decimal
2
2
  import threading
3
+ from typing import Optional
4
+ import aiohttp
3
5
 
4
6
  import aiohttp
5
7
  import requests
@@ -493,32 +495,24 @@ async def get_valor_remessa_cobranca(date: str):
493
495
 
494
496
  async def get_status_nf_emsys(chave: int):
495
497
  """
496
- Procura o status de nota fiscal no EMSYS.
497
-
498
- Args:
499
- chave (int): Chave de acesso a NF.
500
-
501
- Returns:
502
- dict: Contendo o chave de acesso e status de processamento da nota.
503
-
504
- Raises:
505
- Exception: Se houver um erro ao comunicar com o endpoint do Simplifica.
498
+ Procura o status de nota fiscal no EMSYS.
506
499
  """
507
500
  env_config, _ = load_env_config()
508
501
 
509
502
  url = f"{env_config['API_BASE_URL']}/emsys/consulta-status-nota?chaveNfe={chave}"
510
-
511
503
  headers_basic = {"Authorization": f"Basic {env_config['API_AUTHORIZATION']}"}
512
504
  timeout = aiohttp.ClientTimeout(total=600)
513
505
 
514
506
  try:
507
+ timeout = aiohttp.ClientTimeout(total=600) # aguarda até 10 minutos
515
508
  async with aiohttp.ClientSession(
516
- connector=aiohttp.TCPConnector(verify_ssl=True), timeout=timeout
509
+ connector=aiohttp.TCPConnector(verify_ssl=True),
510
+ timeout=timeout
517
511
  ) as session:
518
512
  async with session.get(url, headers=headers_basic) as response:
519
513
  if response.status != 200:
520
514
  raise Exception(
521
- f"Erro ao comunicar com endpoint do Simplifica: {response.text}"
515
+ f"Erro ao comunicar com endpoint do Simplifica: {await response.text()}"
522
516
  )
523
517
  data = await response.json()
524
518
  if not data or not isinstance(data, dict):
@@ -526,17 +520,139 @@ async def get_status_nf_emsys(chave: int):
526
520
  f"Erro ao comunicar com endpoint do Simplifica: {data}"
527
521
  )
528
522
  log_msg = f"\nSucesso ao procurar {data}.\n"
529
- console.print(
530
- log_msg,
531
- style="bold green",
532
- )
523
+ console.print(log_msg, style="bold green")
533
524
  logger.info(log_msg)
534
525
  return data
535
526
 
536
527
  except Exception as e:
537
528
  err_msg = f"Erro ao comunicar com endpoint do Simplifica: {e}"
538
- console.print(f"\n{err_msg}\n", style="bold green")
539
- logger.info(err_msg)
529
+ console.print(f"\n{err_msg}\n", style="bold red")
530
+ logger.error(err_msg)
531
+
532
+ async def get_dados_nf_emsys(
533
+ chave: Optional[int] = None,
534
+ numero_nota: Optional[int] = None,
535
+ serie_nota: Optional[int] = None,
536
+ filial_nota: Optional[int] = None
537
+ ):
538
+ """
539
+ Consulta a NF no EMSYS (ahead-nota) e retorna os campos essenciais:
540
+ empresaCodigo, numeroDoCfop e cfopProduto dentro de itens.
541
+
542
+ Args:
543
+ chave (int, opcional): Chave de acesso da NF.
544
+ numero_nota (int, opcional): Número da NF.
545
+ serie_nota (int, opcional): Série da NF (obrigatória se numero_nota for informado).
546
+ filial_nota (int, opcional): Filial da NF (obrigatória se numero_nota for informado).
547
+
548
+ Returns:
549
+ list[dict]: Lista de notas no formato esperado.
550
+ """
551
+ env_config, _ = load_env_config()
552
+
553
+ url = f"{env_config['API_BASE_URL']}/ahead-nota/find-by-number-nfe"
554
+
555
+ params = {}
556
+
557
+ # Caso 1: veio a chave
558
+ if chave is not None:
559
+ params["chaveNfe"] = chave
560
+
561
+ # Caso 2: veio numero_nota → exige serie e filial
562
+ elif numero_nota is not None:
563
+ if serie_nota is None or filial_nota is None:
564
+ raise ValueError("Para buscar por número da nota é obrigatório informar também 'serie_nota' e 'filial_nota'.")
565
+ params["numeroNfe"] = numero_nota
566
+ params["serieNfe"] = serie_nota
567
+ params["empresaCodigo"] = filial_nota
568
+
569
+ else:
570
+ raise ValueError("É necessário informar 'chave' ou ('numero_nota' + 'serie_nota' + 'filial_nota').")
571
+
572
+ headers_basic = {"Authorization": f"Basic {env_config['API_AUTHORIZATION']}"}
573
+
574
+ try:
575
+ async with aiohttp.ClientSession(
576
+ connector=aiohttp.TCPConnector(verify_ssl=True)
577
+ ) as session:
578
+ async with session.get(url, headers=headers_basic, params=params) as response:
579
+ if response.status != 200:
580
+ raise Exception(
581
+ f"Erro ao comunicar com endpoint do Simplifica: {await response.text()}"
582
+ )
583
+
584
+ data = await response.json()
585
+
586
+ if not data:
587
+ raise Exception("Não foi possível buscar os dados da nota (ahead_nota).")
588
+
589
+ if isinstance(data, dict):
590
+ data = [data]
591
+
592
+ resultado = []
593
+ for nota in data:
594
+ resultado.append({
595
+ "chaveNfe": nota.get("chaveNfe"),
596
+ "numeroDoCfop": nota.get("numeroDoCfop"),
597
+ "naturezaNota": nota.get("naturezaNota"),
598
+ "empresa": nota.get("empresa"),
599
+ "fornecedorCnpj": nota.get("fornecedorCnpj"),
600
+ "fornecedorNome": nota.get("fornecedorNome"),
601
+ "numeroNfe": nota.get("numeroNfe"),
602
+ "valorNfe": nota.get("valorNfe"),
603
+ "dataEmissao": nota.get("dataEmissao"),
604
+ "empresaCodigo": nota.get("empresaCodigo"),
605
+ "dataVencimento": nota.get("dataVencimento"),
606
+ "statusSituacao": nota.get("statusSituacao"),
607
+ "statusRebUnidade": nota.get("statusRebUnidade"),
608
+ "statusListarNotas": nota.get("statusListarNotas"),
609
+ "existeDespesa": nota.get("existeDespesa"),
610
+ "observacao": nota.get("observacao"),
611
+ "createdAt": nota.get("createdAt"),
612
+ "updatedAt": nota.get("updatedAt"),
613
+ "infCpl": nota.get("infCpl"),
614
+ "recebimentoFisico": nota.get("recebimentoFisico"),
615
+ "serieNfe": nota.get("serieNfe"),
616
+ "statusLancamento": nota.get("statusLancamento"),
617
+ "dataEntrada": nota.get("dataEntrada"),
618
+ "codPessoaFornecedor": nota.get("codPessoaFornecedor"),
619
+ "locked": nota.get("locked"),
620
+ "itens": [
621
+ {
622
+ "uuidNotaItem": item.get("uuidNotaItem"),
623
+ "chaveNfe": item.get("chaveNfe"),
624
+ "codigoProduto": item.get("codigoProduto"),
625
+ "descricaoProduto": item.get("descricaoProduto"),
626
+ "ncmsh": item.get("ncmsh"),
627
+ "ocst": item.get("ocst"),
628
+ "cfopProduto": item.get("cfopProduto"),
629
+ "unidadeMedida": item.get("unidadeMedida"),
630
+ "qtd": item.get("qtd"),
631
+ "valorUnitario": item.get("valorUnitario"),
632
+ "valorTotal": item.get("valorTotal"),
633
+ "bCalculoIcms": item.get("bCalculoIcms"),
634
+ "valorIcms": item.get("valorIcms"),
635
+ "valorIpi": item.get("valorIpi"),
636
+ "aliquotaIcms": item.get("aliquotaIcms"),
637
+ "aliquotaIpi": item.get("aliquotaIpi"),
638
+ "createdAt": item.get("createdAt"),
639
+ "updatedAt": item.get("updatedAt"),
640
+ "pedidoCompraXped": item.get("pedidoCompraXped"),
641
+ "pedidoCompraItemPed": item.get("pedidoCompraItemPed"),
642
+ "codItem": item.get("codItem"),
643
+ "desItem": item.get("desItem"),
644
+ "indBloqueadoCompra": item.get("indBloqueadoCompra"),
645
+ "indItemAtivo": item.get("indItemAtivo")
646
+ }
647
+ for item in nota.get("itens", [])
648
+ ]
649
+ })
650
+
651
+ return resultado
652
+
653
+ except Exception as e:
654
+ raise Exception(f"Erro ao comunicar com endpoint do Simplifica: {e}")
655
+
540
656
 
541
657
 
542
658
  async def get_status_cte_emsys(chave: int):
@@ -619,9 +619,9 @@ async def entrada_de_notas_16(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
619
619
  retorno = await emsys.incluir_registro(chave_nfe=nota.get("nfe"))
620
620
  if retorno.sucesso == True:
621
621
  return RpaRetornoProcessoDTO(
622
- sucesso=error_work.sucesso,
623
- retorno=error_work.retorno,
624
- status=error_work.status,
622
+ sucesso=retorno.sucesso,
623
+ retorno=retorno.retorno,
624
+ status=retorno.status,
625
625
  )
626
626
  except:
627
627
  try:
@@ -686,9 +686,9 @@ async def entrada_de_notas_16(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
686
686
  retorno = await emsys.incluir_registro(chave_nfe=nota.get("nfe"))
687
687
  if retorno.sucesso == True:
688
688
  return RpaRetornoProcessoDTO(
689
- sucesso=error_work.sucesso,
690
- retorno=error_work.retorno,
691
- status=error_work.status,
689
+ sucesso=retorno.sucesso,
690
+ retorno=retorno.retorno,
691
+ status=retorno.status,
692
692
  )
693
693
  except:
694
694
  console.print("A Nota fiscal ainda não foi incluída, continuando o processo...")