worker-automate-hub 0.5.766__tar.gz → 0.5.768__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 (106) hide show
  1. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/PKG-INFO +1 -1
  2. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/pyproject.toml +1 -1
  3. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_15.py +3 -46
  4. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_9.py +27 -4
  5. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/README.md +0 -0
  6. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/__init__.py +0 -0
  7. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/__init__.py +0 -0
  8. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/ahead_service.py +0 -0
  9. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/client.py +0 -0
  10. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/datalake_service.py +0 -0
  11. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/helpers/__init__.py +0 -0
  12. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/helpers/api_helpers.py +0 -0
  13. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/rdp_service.py +0 -0
  14. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/rpa_fila_service.py +0 -0
  15. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/rpa_historico_service.py +0 -0
  16. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/api/webhook_service.py +0 -0
  17. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/cli.py +0 -0
  18. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/config/__init__.py +0 -0
  19. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/config/settings.py +0 -0
  20. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/config.py +0 -0
  21. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/core/so_manipulation.py +0 -0
  22. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/__init__.py +0 -0
  23. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/deprecation.py +0 -0
  24. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/rate_limit.py +0 -0
  25. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/repeat.py +0 -0
  26. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/retry.py +0 -0
  27. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/singleton.py +0 -0
  28. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/decorators/timeit.py +0 -0
  29. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/__init__.py +0 -0
  30. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dao/__init__.py +0 -0
  31. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dao/rpa_configuracao.py +0 -0
  32. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dao/rpa_fila.py +0 -0
  33. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dao/rpa_historico.py +0 -0
  34. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dao/rpa_processo.py +0 -0
  35. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dao/rpa_robo.py +0 -0
  36. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dto/__init__.py +0 -0
  37. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dto/rpa_historico_request_dto.py +0 -0
  38. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dto/rpa_processo_entrada_dto.py +0 -0
  39. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dto/rpa_processo_rdp_dto.py +0 -0
  40. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dto/rpa_sap_dto.py +0 -0
  41. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/models/dto/rpa_sistema_dto.py +0 -0
  42. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/__init__.py +0 -0
  43. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/__init__.py +0 -0
  44. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/abertura_livros_fiscais.py +0 -0
  45. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/coleta_dje_process.py +0 -0
  46. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/conexao_rdp.py +0 -0
  47. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/cte_manual.py +0 -0
  48. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/cte_xml.py +0 -0
  49. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/descartes.py +0 -0
  50. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/devolucao_ctf.py +0 -0
  51. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/devolucao_ctf_35.py +0 -0
  52. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/devolucao_prazo_a_faturar.py +0 -0
  53. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/ecac_estadual_go.py +0 -0
  54. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/ecac_estadual_main.py +0 -0
  55. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/ecac_estadual_mt.py +0 -0
  56. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/ecac_estadual_sc.py +0 -0
  57. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/ecac_estadual_sp.py +0 -0
  58. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/ecac_federal.py +0 -0
  59. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_cte_1353.py +0 -0
  60. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_cte_333.py +0 -0
  61. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_16.py +0 -0
  62. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_207.py +0 -0
  63. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_32.py +0 -0
  64. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_33.py +0 -0
  65. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_34.py +0 -0
  66. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_36.py +0 -0
  67. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_39.py +0 -0
  68. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_500.py +0 -0
  69. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_503.py +0 -0
  70. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_505.py +0 -0
  71. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_7139.py +0 -0
  72. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/entrada_de_notas_9000.py +0 -0
  73. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/exemplo_processo.py +0 -0
  74. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/extracao_fechamento_contabil.py +0 -0
  75. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/extracao_fechamento_emsys.py +0 -0
  76. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/extracao_saldo_estoque.py +0 -0
  77. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/extracao_saldo_estoque_fiscal.py +0 -0
  78. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/fechar_conexao_rdp.py +0 -0
  79. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/fidc_exportacao_docs_portal_b2b.py +0 -0
  80. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py +0 -0
  81. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/fidc_remessa_cobranca_cnab240.py +0 -0
  82. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/fidc_retorno_cobranca.py +0 -0
  83. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/geracao_aprovacao_pedidos.py +0 -0
  84. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/geracao_aprovacao_pedidos_novo.py +0 -0
  85. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/integracao_contabil.py +0 -0
  86. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/integracao_contabil_generica.py +0 -0
  87. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/lancamento_pis_cofins.py +0 -0
  88. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/lancamento_rateio.py +0 -0
  89. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/login_emsys.py +0 -0
  90. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/login_emsys_versao_especifica.py +0 -0
  91. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/notas_faturamento_sap.py +0 -0
  92. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/opex_capex.py +0 -0
  93. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/playground.py +0 -0
  94. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/sped_fiscal.py +0 -0
  95. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/jobs/transferencias.py +0 -0
  96. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/task_definitions.py +0 -0
  97. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/tasks/task_executor.py +0 -0
  98. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/__init__.py +0 -0
  99. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/env.py +0 -0
  100. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/get_creds_gworkspace.py +0 -0
  101. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/logger.py +0 -0
  102. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/toast.py +0 -0
  103. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/updater.py +0 -0
  104. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/util.py +0 -0
  105. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/worker_automate_hub/utils/utils_nfe_entrada.py +0 -0
  106. {worker_automate_hub-0.5.766 → worker_automate_hub-0.5.768}/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.766
3
+ Version: 0.5.768
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.766"
3
+ version = "0.5.768"
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"
@@ -511,7 +511,7 @@ async def entrada_de_notas_15(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
511
511
  tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
512
512
  )
513
513
 
514
- await worker_sleep(3)
514
+ await worker_sleep(5)
515
515
 
516
516
  console.print("Navegando pela Janela de Nota Fiscal de Entrada...\n")
517
517
  app = Application().connect(class_name="TFrmNotaFiscalEntrada")
@@ -607,8 +607,8 @@ async def entrada_de_notas_15(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
607
607
  )
608
608
  await worker_sleep(5)
609
609
 
610
- # await emsys.verify_warning_and_error("Warning", "No")
611
- # await emsys.verify_warning_and_error("Warning", "&No")
610
+ await emsys.verify_warning_and_error("Warning", "No")
611
+ await emsys.verify_warning_and_error("Warning", "&No")
612
612
 
613
613
  try:
614
614
  erro_pop_up = await is_window_open("Information")
@@ -681,49 +681,6 @@ async def entrada_de_notas_15(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
681
681
  except:
682
682
  pass
683
683
 
684
- await worker_sleep(20)
685
- console.print("\nVerifica se a nota ja foi lançada...")
686
- nf_chave_acesso = int(nota.get("nfe"))
687
- status_nf_emsys = await get_status_nf_emsys(nf_chave_acesso)
688
- if status_nf_emsys.get("status") != "Lançada":
689
- return RpaRetornoProcessoDTO(
690
- sucesso=False,
691
- retorno=f"Erro ao lançar nota",
692
- status=RpaHistoricoStatusEnum.Falha,
693
- )
694
- else:
695
- nf_imported = await check_nota_importada(nota.get("nfe"))
696
- if nf_imported.sucesso == True:
697
- await worker_sleep(12)
698
- console.print("\nVerifica se a nota ja foi lançada...")
699
- status_nf_emsys = await get_status_nf_emsys(nf_chave_acesso)
700
- if status_nf_emsys.get("status") == "Lançada":
701
- console.print(
702
- "\nNota lançada com sucesso, processo finalizado...",
703
- style="bold green",
704
- )
705
- return RpaRetornoProcessoDTO(
706
- sucesso=True,
707
- retorno="Nota Lançada com sucesso!",
708
- status=RpaHistoricoStatusEnum.Sucesso,
709
- )
710
- else:
711
- console.print("Erro ao lançar nota", style="bold red")
712
- return RpaRetornoProcessoDTO(
713
- sucesso=False,
714
- retorno=f"Pop-up nota incluida encontrada, porém nota encontrada como 'já lançada' trazendo as seguintes informações: {nf_imported.retorno} - {error_work}",
715
- status=RpaHistoricoStatusEnum.Falha,
716
- tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)],
717
- )
718
- else:
719
- console.print("Erro ao lançar nota", style="bold red")
720
- return RpaRetornoProcessoDTO(
721
- sucesso=False,
722
- retorno=f"Erro ao lançar nota, erro: {nf_imported.retorno}",
723
- status=RpaHistoricoStatusEnum.Falha,
724
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
725
- )
726
-
727
684
  except Exception as ex:
728
685
  observacao = f"Erro Processo Entrada de Notas: {str(ex)}"
729
686
  logger.error(observacao)
@@ -974,7 +974,7 @@ async def entrada_de_notas_9(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoD
974
974
  recebimento_fisico = datetime.strptime(recebimento_fisico, "%d/%m/%Y")
975
975
 
976
976
  #se a data do aceite no Ahead ultrapassar dois dias após a emissão da nota, deve-se colocar o vencimento para a mesma data do “Receb. Físico”/Aceite.
977
- if ((recebimento_fisico >= dt_emissao + timedelta(days=2)) and ("vibra" in nota.get("nomeFornecedor").lower() or "ipiranga" in nota.get("nomeFornecedor").lower() or "raizen" in nota.get("nomeFornecedor").lower() or "charru" in nota.get("nomeFornecedor").lower())):
977
+ if ((recebimento_fisico >= dt_emissao + timedelta(days=2)) and ("vibra" in nota.get("nomeFornecedor").lower() or "ipiranga" in nota.get("nomeFornecedor").lower() or "raizen" in nota.get("nomeFornecedor").lower())): # or "charru" in nota.get("nomeFornecedor").lower())):
978
978
  recebimento_fisico = recebimento_fisico.strftime("%d/%m/%Y")
979
979
  console.print(f"Informando a data de vencimento, {recebimento_fisico}... \n")
980
980
  vencimento = panel_TabParcelamento.child_window(
@@ -987,6 +987,18 @@ async def entrada_de_notas_9(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoD
987
987
  )
988
988
  data_vencimento = nota.get("dataVencimento")
989
989
  vencimento.set_edit_text(data_vencimento)
990
+ elif "charru" in nota.get("nomeFornecedor").lower():
991
+ vencimento = panel_TabParcelamento.child_window(
992
+ class_name="TDBIEditDate"
993
+ )
994
+ data_vencimento = nota.get("dataEmissao")
995
+ # Converte string para datetime
996
+ data_dt = datetime.strptime(data_vencimento, "%d/%m/%Y")
997
+ # Soma 30 dias
998
+ data_dt_venc = data_dt + timedelta(days=30)
999
+ # Converte de volta para string no mesmo formato
1000
+ data_vencimento = data_dt_venc.strftime("%d/%m/%Y")
1001
+ vencimento.set_edit_text(data_vencimento)
990
1002
  else:
991
1003
  #Senão adicionar 1 dia a emissao
992
1004
  dt_emissao = nota.get("dataEmissao")
@@ -1027,7 +1039,7 @@ async def entrada_de_notas_9(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoD
1027
1039
  console.print(f"Processo de incluir pagamento realizado com sucesso... \n")
1028
1040
  else:
1029
1041
  data_vencimento = ""
1030
- if "vibra" in nota.get("nomeFornecedor").lower() or "ipiranga" in nota.get("nomeFornecedor").lower() or "raizen" in nota.get("nomeFornecedor").lower() or "charru" in nota.get("nomeFornecedor").lower():
1042
+ if "vibra" in nota.get("nomeFornecedor").lower() or "ipiranga" in nota.get("nomeFornecedor").lower() or "raizen" in nota.get("nomeFornecedor").lower(): #or "charru" in nota.get("nomeFornecedor").lower():
1031
1043
  dt_emissao = nota.get("dataEmissao")
1032
1044
  dt_emissao = datetime.strptime(dt_emissao, "%d/%m/%Y")
1033
1045
  pattern = r"(\d{2}/\d{2}/\d{4})"
@@ -1042,9 +1054,20 @@ async def entrada_de_notas_9(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoD
1042
1054
  dt_emissao = dt_emissao + timedelta(days=1)
1043
1055
  dt_emissao = dt_emissao.strftime("%d/%m/%Y")
1044
1056
  data_vencimento = dt_emissao
1057
+ elif "charru" in nota.get("nomeFornecedor").lower():
1058
+ vencimento = panel_TabParcelamento.child_window(
1059
+ class_name="TDBIEditDate"
1060
+ )
1061
+ data_vencimento = nota.get("dataEmissao")
1062
+ # Converte string para datetime
1063
+ data_dt = datetime.strptime(data_vencimento, "%d/%m/%Y")
1064
+ # Soma 30 dias
1065
+ data_dt_venc = data_dt + timedelta(days=30)
1066
+ # Converte de volta para string no mesmo formato
1067
+ data_vencimento = data_dt_venc.strftime("%d/%m/%Y")
1068
+ # vencimento.set_edit_text(data_vencimento)
1045
1069
  else:
1046
1070
  data_vencimento = nota.get("dataVencimento")
1047
-
1048
1071
  await worker_sleep(2)
1049
1072
  console.print(f"Removendo registro de parcelamento do pagamento... \n")
1050
1073
  btn_remove = panel_TabParcelamento.child_window(
@@ -1325,4 +1348,4 @@ async def entrada_de_notas_9(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoD
1325
1348
 
1326
1349
  finally:
1327
1350
  # Deleta o xml
1328
- await delete_xml(nota["nfe"])
1351
+ await delete_xml(nota["nfe"])