worker-automate-hub 0.5.35__tar.gz → 0.5.37__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/PKG-INFO +1 -1
  2. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/pyproject.toml +1 -1
  3. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_15.py +1 -1
  4. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_16.py +1 -1
  5. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_207.py +2 -3
  6. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_32.py +2 -2
  7. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_33.py +2 -2
  8. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_34.py +2 -2
  9. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_36.py +2 -2
  10. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_39.py +1 -1
  11. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_500.py +2 -2
  12. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_505.py +2 -2
  13. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_7139.py +2 -2
  14. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/entrada_de_notas_9.py +1 -1
  15. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/util.py +82 -68
  16. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/README.md +0 -0
  17. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/__init__.py +0 -0
  18. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/__init__.py +0 -0
  19. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/ahead_service.py +0 -0
  20. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/client.py +0 -0
  21. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/helpers/__init__.py +0 -0
  22. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/helpers/api_helpers.py +0 -0
  23. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/rdp_service.py +0 -0
  24. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/rpa_fila_service.py +0 -0
  25. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/rpa_historico_service.py +0 -0
  26. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/api/webhook_service.py +0 -0
  27. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/cli.py +0 -0
  28. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/config/__init__.py +0 -0
  29. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/config/settings.py +0 -0
  30. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/config.py +0 -0
  31. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/core/so_manipulation.py +0 -0
  32. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/__init__.py +0 -0
  33. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/deprecation.py +0 -0
  34. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/rate_limit.py +0 -0
  35. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/repeat.py +0 -0
  36. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/retry.py +0 -0
  37. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/singleton.py +0 -0
  38. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/decorators/timeit.py +0 -0
  39. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/__init__.py +0 -0
  40. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dao/__init__.py +0 -0
  41. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dao/rpa_configuracao.py +0 -0
  42. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dao/rpa_fila.py +0 -0
  43. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dao/rpa_historico.py +0 -0
  44. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dao/rpa_processo.py +0 -0
  45. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dao/rpa_robo.py +0 -0
  46. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dto/__init__.py +0 -0
  47. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dto/rpa_historico_request_dto.py +0 -0
  48. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dto/rpa_processo_entrada_dto.py +0 -0
  49. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dto/rpa_processo_rdp_dto.py +0 -0
  50. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/models/dto/rpa_sistema_dto.py +0 -0
  51. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/__init__.py +0 -0
  52. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/__init__.py +0 -0
  53. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/coleta_dje_process.py +0 -0
  54. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/conexao_rdp.py +0 -0
  55. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/descartes.py +0 -0
  56. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/ecac_estadual_go.py +0 -0
  57. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/ecac_estadual_main.py +0 -0
  58. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/ecac_estadual_mt.py +0 -0
  59. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/ecac_estadual_sc.py +0 -0
  60. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/ecac_estadual_sp.py +0 -0
  61. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/ecac_federal.py +0 -0
  62. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/exemplo_processo.py +0 -0
  63. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/fechar_conexao_rdp.py +0 -0
  64. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py +0 -0
  65. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/fidc_remessa_cobranca_cnab240.py +0 -0
  66. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/login_emsys.py +0 -0
  67. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/login_emsys_versao_especifica.py +0 -0
  68. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/playground.py +0 -0
  69. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/sped_fiscal.py +0 -0
  70. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/jobs/transferencias.py +0 -0
  71. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/task_definitions.py +0 -0
  72. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/tasks/task_executor.py +0 -0
  73. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/__init__.py +0 -0
  74. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/env.py +0 -0
  75. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/get_creds_gworkspace.py +0 -0
  76. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/logger.py +0 -0
  77. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/toast.py +0 -0
  78. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/updater.py +0 -0
  79. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/worker_automate_hub/utils/utils_nfe_entrada.py +0 -0
  80. {worker_automate_hub-0.5.35 → worker_automate_hub-0.5.37}/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.35
3
+ Version: 0.5.37
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.35"
3
+ version = "0.5.37"
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"
@@ -402,7 +402,7 @@ async def entrada_de_notas_15(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
402
402
  console.print("Erro ao lançar nota", style="bold red")
403
403
  return RpaRetornoProcessoDTO(
404
404
  sucesso=False,
405
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar, retorno: {nf_imported.retorno}",
405
+ 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}",
406
406
  status=RpaHistoricoStatusEnum.Falha,
407
407
  tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
408
408
  )
@@ -523,7 +523,7 @@ async def entrada_de_notas_16(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
523
523
  console.print("Erro ao lançar nota", style="bold red")
524
524
  return RpaRetornoProcessoDTO(
525
525
  sucesso=False,
526
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar, retorno: {nf_imported.retorno}",
526
+ 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}",
527
527
  status=RpaHistoricoStatusEnum.Falha,
528
528
  tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
529
529
  )
@@ -569,12 +569,11 @@ async def entrada_de_notas_207(task: RpaProcessoEntradaDTO) -> RpaRetornoProcess
569
569
  status=RpaHistoricoStatusEnum.Sucesso,
570
570
  )
571
571
  else:
572
- console.print("Erro ao lançar nota", style="bold red")
573
572
  return RpaRetornoProcessoDTO(
574
573
  sucesso=False,
575
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
574
+ 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}",
576
575
  status=RpaHistoricoStatusEnum.Falha,
577
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
576
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
578
577
  )
579
578
  else:
580
579
  console.print("Erro ao lançar nota", style="bold red")
@@ -787,9 +787,9 @@ async def entrada_de_notas_32(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
787
787
  console.print("Erro ao lançar nota", style="bold red")
788
788
  return RpaRetornoProcessoDTO(
789
789
  sucesso=False,
790
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
790
+ 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}",
791
791
  status=RpaHistoricoStatusEnum.Falha,
792
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
792
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
793
793
  )
794
794
  else:
795
795
  console.print("Erro ao lançar nota", style="bold red")
@@ -763,9 +763,9 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
763
763
  console.print("Erro ao lançar nota", style="bold red")
764
764
  return RpaRetornoProcessoDTO(
765
765
  sucesso=False,
766
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
766
+ 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}",
767
767
  status=RpaHistoricoStatusEnum.Falha,
768
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
768
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
769
769
  )
770
770
  else:
771
771
  console.print("Erro ao lançar nota", style="bold red")
@@ -758,9 +758,9 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
758
758
  console.print("Erro ao lançar nota", style="bold red")
759
759
  return RpaRetornoProcessoDTO(
760
760
  sucesso=False,
761
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
761
+ 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}",
762
762
  status=RpaHistoricoStatusEnum.Falha,
763
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
763
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
764
764
  )
765
765
  else:
766
766
  console.print("Erro ao lançar nota", style="bold red")
@@ -540,9 +540,9 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
540
540
  console.print("Erro ao lançar nota", style="bold red")
541
541
  return RpaRetornoProcessoDTO(
542
542
  sucesso=False,
543
- retorno=f"Erro ao lançar nota, erro: {nf_imported.retorno}",
543
+ 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}",
544
544
  status=RpaHistoricoStatusEnum.Falha,
545
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
545
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
546
546
  )
547
547
 
548
548
  except Exception as ex:
@@ -794,7 +794,7 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
794
794
  console.print("Erro ao lançar nota", style="bold red")
795
795
  return RpaRetornoProcessoDTO(
796
796
  sucesso=False,
797
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar, retorno: {nf_imported.retorno}",
797
+ 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}",
798
798
  status=RpaHistoricoStatusEnum.Falha,
799
799
  tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
800
800
  )
@@ -744,9 +744,9 @@ async def entrada_de_notas_500(task: RpaProcessoEntradaDTO) -> RpaRetornoProcess
744
744
  console.print("Erro ao lançar nota", style="bold red")
745
745
  return RpaRetornoProcessoDTO(
746
746
  sucesso=False,
747
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
747
+ 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}",
748
748
  status=RpaHistoricoStatusEnum.Falha,
749
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
749
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
750
750
  )
751
751
  else:
752
752
  console.print("Erro ao lançar nota", style="bold red")
@@ -357,9 +357,9 @@ async def entrada_de_notas_505(task: RpaProcessoEntradaDTO) -> RpaRetornoProcess
357
357
  console.print("Erro ao lançar nota", style="bold red")
358
358
  return RpaRetornoProcessoDTO(
359
359
  sucesso=False,
360
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
360
+ 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}",
361
361
  status=RpaHistoricoStatusEnum.Falha,
362
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
362
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
363
363
  )
364
364
  else:
365
365
  console.print("Erro ao lançar nota", style="bold red")
@@ -377,9 +377,9 @@ async def entrada_de_notas_7139(task: RpaProcessoEntradaDTO) -> RpaRetornoProces
377
377
  console.print("Erro ao lançar nota", style="bold red")
378
378
  return RpaRetornoProcessoDTO(
379
379
  sucesso=False,
380
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
380
+ 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}",
381
381
  status=RpaHistoricoStatusEnum.Falha,
382
- tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
382
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
383
383
  )
384
384
  else:
385
385
  console.print("Erro ao lançar nota", style="bold red")
@@ -1055,7 +1055,7 @@ async def entrada_de_notas_9(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoD
1055
1055
  console.print("Erro ao lançar nota", style="bold red")
1056
1056
  return RpaRetornoProcessoDTO(
1057
1057
  sucesso=False,
1058
- retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar, retorno: {nf_imported.retorno}",
1058
+ 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}",
1059
1059
  status=RpaHistoricoStatusEnum.Falha,
1060
1060
  tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
1061
1061
  )
@@ -1126,86 +1126,93 @@ async def get_xml(xml_file: str) -> None:
1126
1126
  - None
1127
1127
  """
1128
1128
 
1129
- console.print("Verificando a existencia da tela de importação do XML... \n")
1130
- app = Application().connect(title="Selecione a forma de obter o XML da NF-e")
1131
- main_window = app["Selecione a forma de obter o XML da NF-e"]
1129
+ try:
1130
+ console.print("Verificando a existencia da tela de importação do XML... \n")
1131
+ app = Application().connect(title="Selecione a forma de obter o XML da NF-e")
1132
+ main_window = app["Selecione a forma de obter o XML da NF-e"]
1132
1133
 
1133
- # Verificando se a janela principal existe
1134
- if main_window.exists():
1135
- console.print("Janela principal encontrada com sucesso... \n")
1136
- else:
1137
- raise Exception("Janela principal de importação do XML não foi encontrada.")
1134
+ # Verificando se a janela principal existe
1135
+ if main_window.exists():
1136
+ console.print("Janela principal encontrada com sucesso... \n")
1137
+ else:
1138
+ raise Exception("Janela principal de importação do XML não foi encontrada.")
1138
1139
 
1139
- console.print("Selecionando Arquivo XML para seguir com a importação... \n")
1140
- arquivo_xml_button = main_window.child_window(title="Arquivo XML")
1141
- if arquivo_xml_button.exists() and arquivo_xml_button.is_enabled():
1142
- arquivo_xml_button.click()
1143
- console.print("Arquivo XML selecionado com sucesso... \n")
1144
- else:
1145
- raise Exception("Botão Arquivo XML não foi encontrado.")
1140
+ console.print("Selecionando Arquivo XML para seguir com a importação... \n")
1141
+ arquivo_xml_button = main_window.child_window(title="Arquivo XML")
1142
+ if arquivo_xml_button.exists() and arquivo_xml_button.is_enabled():
1143
+ arquivo_xml_button.click()
1144
+ console.print("Arquivo XML selecionado com sucesso... \n")
1145
+ else:
1146
+ raise Exception("Botão Arquivo XML não foi encontrado.")
1146
1147
 
1147
- await worker_sleep(3)
1148
+ await worker_sleep(3)
1148
1149
 
1149
- console.print("Verificando se o botão OK existe ... \n")
1150
- ok_button = main_window.child_window(title="OK", class_name="TBitBtn")
1151
- if ok_button.exists() and ok_button.is_enabled():
1152
- max_attempts = 3
1153
- i = 0
1154
- while i < max_attempts:
1155
- console.print("Clicando em OK... \n")
1156
- try:
1157
- ok_button.click()
1158
- console.print("Botão OK clicado com sucesso... \n")
1159
- except:
1160
- console.print("Não foi possivel clicar no Botão OK... \n")
1150
+ console.print("Verificando se o botão OK existe ... \n")
1151
+ ok_button = main_window.child_window(title="OK", class_name="TBitBtn")
1152
+ if ok_button.exists() and ok_button.is_enabled():
1153
+ max_attempts = 3
1154
+ i = 0
1155
+ while i < max_attempts:
1156
+ console.print("Clicando em OK... \n")
1157
+ try:
1158
+ ok_button.click()
1159
+ console.print("Botão OK clicado com sucesso... \n")
1160
+ except:
1161
+ console.print("Não foi possivel clicar no Botão OK... \n")
1161
1162
 
1162
- await worker_sleep(3)
1163
+ await worker_sleep(3)
1163
1164
 
1164
- console.print("Verificando a existência da tela para importar o XML...\n")
1165
- try:
1166
- app = Application().connect(title="Abrir")
1167
- main_window = app["Abrir"]
1168
- console.print("A tela de importação foi encontrada!")
1169
- break
1170
- except Exception as e:
1171
- console.print(
1172
- f"Tela de importação não encontrada. Tentativa {i + 1}/{max_attempts}."
1173
- )
1165
+ console.print("Verificando a existência da tela para importar o XML...\n")
1166
+ try:
1167
+ app = Application().connect(title="Abrir")
1168
+ main_window = app["Abrir"]
1169
+ console.print("A tela de importação foi encontrada!")
1170
+ break
1171
+ except Exception as e:
1172
+ console.print(
1173
+ f"Tela de importação não encontrada. Tentativa {i + 1}/{max_attempts}."
1174
+ )
1174
1175
 
1175
- i += 1
1176
+ i += 1
1176
1177
 
1177
- if i == max_attempts:
1178
- raise Exception(
1179
- "Número máximo de tentativas atingido. A tela para importar o XML não foi encontrada."
1180
- )
1178
+ if i == max_attempts:
1179
+ raise Exception(
1180
+ "Número máximo de tentativas atingido. A tela para importar o XML não foi encontrada."
1181
+ )
1181
1182
 
1182
- else:
1183
- raise Exception("Botão OK não foi encontrado.")
1183
+ else:
1184
+ raise Exception("Botão OK não foi encontrado.")
1184
1185
 
1185
- await worker_sleep(10)
1186
+ await worker_sleep(10)
1186
1187
 
1187
- console.print("Conectando na tela de importação do XML...\n")
1188
- app = Application().connect(title="Abrir")
1189
- main_window = app["Abrir"]
1188
+ console.print("Conectando na tela de importação do XML...\n")
1189
+ app = Application().connect(title="Abrir")
1190
+ main_window = app["Abrir"]
1190
1191
 
1191
- # Verificando se a janela principal existe
1192
- if main_window.exists():
1193
- console.print("Janela para importar o xml encontrada com sucesso... \n")
1194
- else:
1195
- raise Exception("Janela para importar o xml não foi encontrada.")
1196
-
1197
- console.print("Carregando informações do XML a ser importado...\n")
1198
- username = getpass.getuser()
1199
- xml_name = f"{xml_file}.xml"
1200
- path_to_xml = f"C:\\Users\\{username}\\Downloads\\{xml_name}"
1201
- console.print("Inserindo caminho do XML...\n")
1202
- main_window.type_keys("%n")
1203
- await worker_sleep(2)
1204
- pyautogui.write(path_to_xml)
1205
- await worker_sleep(2)
1206
- main_window.type_keys("%a")
1207
- await worker_sleep(2)
1192
+ # Verificando se a janela principal existe
1193
+ if main_window.exists():
1194
+ console.print("Janela para importar o xml encontrada com sucesso... \n")
1195
+ else:
1196
+ raise Exception("Janela para importar o xml não foi encontrada.")
1208
1197
 
1198
+ console.print("Carregando informações do XML a ser importado...\n")
1199
+ username = getpass.getuser()
1200
+ xml_name = f"{xml_file}.xml"
1201
+ path_to_xml = f"C:\\Users\\{username}\\Downloads\\{xml_name}"
1202
+ console.print("Inserindo caminho do XML...\n")
1203
+ main_window.type_keys("%n")
1204
+ await worker_sleep(2)
1205
+ pyautogui.write(path_to_xml)
1206
+ await worker_sleep(2)
1207
+ main_window.type_keys("%a")
1208
+ await worker_sleep(2)
1209
+ except Exception as error:
1210
+ return RpaRetornoProcessoDTO(
1211
+ sucesso=False,
1212
+ retorno=f"Erro ao obter XML: {error}",
1213
+ status=RpaHistoricoStatusEnum.Falha,
1214
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
1215
+ )
1209
1216
 
1210
1217
  async def delete_xml(nfe_key: str) -> None:
1211
1218
  """
@@ -2404,6 +2411,13 @@ async def error_after_xml_imported() -> RpaRetornoProcessoDTO:
2404
2411
 
2405
2412
  status=RpaHistoricoStatusEnum.Falha, tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
2406
2413
  )
2414
+ elif "ja lancada" in control_text:
2415
+ return RpaRetornoProcessoDTO(
2416
+ sucesso=False,
2417
+ retorno=f"Pop-up nota incluida encontrada, porém nota encontrada como 'já lançada' trazendo as seguintes informações: {control_text}",
2418
+ status=RpaHistoricoStatusEnum.Falha,
2419
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
2420
+ )
2407
2421
  else:
2408
2422
  return RpaRetornoProcessoDTO(
2409
2423
  sucesso=False,
@@ -2424,7 +2438,7 @@ async def error_after_xml_imported() -> RpaRetornoProcessoDTO:
2424
2438
  retorno=f"Nota descartada: {control_text}... \n",
2425
2439
  status=RpaHistoricoStatusEnum.Descartado,
2426
2440
  )
2427
-
2441
+
2428
2442
 
2429
2443
  async def error_before_persist_record() -> RpaRetornoProcessoDTO:
2430
2444
  try: