worker-automate-hub 0.4.405__tar.gz → 0.4.407__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/PKG-INFO +1 -1
  2. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/pyproject.toml +1 -1
  3. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_33.py +1 -1
  4. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_39.py +39 -18
  5. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/sped_fiscal.py +2 -2
  6. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/util.py +19 -18
  7. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/README.md +0 -0
  8. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/__init__.py +0 -0
  9. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/api/__init__.py +0 -0
  10. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/api/ahead_service.py +0 -0
  11. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/api/client.py +0 -0
  12. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/api/helpers/__init__.py +0 -0
  13. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/api/helpers/api_helpers.py +0 -0
  14. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/api/rpa_historico_service.py +0 -0
  15. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/cli.py +0 -0
  16. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/config/__init__.py +0 -0
  17. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/config/settings.py +0 -0
  18. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/config.py +0 -0
  19. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/core/so_manipulation.py +0 -0
  20. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/__init__.py +0 -0
  21. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/deprecation.py +0 -0
  22. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/rate_limit.py +0 -0
  23. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/repeat.py +0 -0
  24. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/retry.py +0 -0
  25. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/singleton.py +0 -0
  26. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/decorators/timeit.py +0 -0
  27. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/__init__.py +0 -0
  28. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dao/__init__.py +0 -0
  29. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dao/rpa_configuracao.py +0 -0
  30. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dao/rpa_historico.py +0 -0
  31. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dao/rpa_processo.py +0 -0
  32. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dto/__init__.py +0 -0
  33. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dto/rpa_historico_request_dto.py +0 -0
  34. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dto/rpa_processo_entrada_dto.py +0 -0
  35. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/models/dto/rpa_sistema_dto.py +0 -0
  36. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/__init__.py +0 -0
  37. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/__init__.py +0 -0
  38. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/coleta_dje_process.py +0 -0
  39. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/conexao_rdp.py +0 -0
  40. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/descartes.py +0 -0
  41. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/ecac_estadual_go.py +0 -0
  42. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/ecac_estadual_main.py +0 -0
  43. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/ecac_estadual_mt.py +0 -0
  44. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/ecac_estadual_sc.py +0 -0
  45. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/ecac_estadual_sp.py +0 -0
  46. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/ecac_federal.py +0 -0
  47. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_15.py +0 -0
  48. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_16.py +0 -0
  49. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_207.py +0 -0
  50. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_32.py +0 -0
  51. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_34.py +0 -0
  52. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_36.py +0 -0
  53. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_500.py +0 -0
  54. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_505.py +0 -0
  55. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_7139.py +0 -0
  56. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/entrada_de_notas_9.py +0 -0
  57. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/exemplo_processo.py +0 -0
  58. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py +0 -0
  59. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/fidc_remessa_cobranca_cnab240.py +0 -0
  60. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/login_emsys.py +0 -0
  61. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/playground.py +0 -0
  62. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/jobs/transferencias.py +0 -0
  63. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/task_definitions.py +0 -0
  64. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/tasks/task_executor.py +0 -0
  65. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/__init__.py +0 -0
  66. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/env.py +0 -0
  67. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/get_creds_gworkspace.py +0 -0
  68. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/logger.py +0 -0
  69. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/toast.py +0 -0
  70. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/updater.py +0 -0
  71. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/utils/utils_nfe_entrada.py +0 -0
  72. {worker_automate_hub-0.4.405 → worker_automate_hub-0.4.407}/worker_automate_hub/worker.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: worker-automate-hub
3
- Version: 0.4.405
3
+ Version: 0.4.407
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.4.405"
3
+ version = "0.4.407"
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"
@@ -323,7 +323,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
323
323
  status=RpaHistoricoStatusEnum.Falha,
324
324
  )
325
325
 
326
- await worker_sleep(6)
326
+ await worker_sleep(10)
327
327
 
328
328
  console.print(
329
329
  "Verificando a existencia de POP-UP de Itens não localizados ou NCM ...\n"
@@ -630,9 +630,24 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
630
630
 
631
631
  #Alterar NOP
632
632
  try:
633
- for attempt in range(2):
634
- console.print("Alterando a NOP...\n")
635
- pyautogui.click(618, 330)
633
+ console.print("Alterando a NOP...\n")
634
+
635
+ app = Application().connect(class_name="TFrmNotaFiscalEntrada", timeout=30)
636
+ main_window = app["TFrmNotaFiscalEntrada"]
637
+ main_window.set_focus()
638
+
639
+ select_box_nop_select = main_window.child_window(class_name="TDBIComboBox", found_index=0)
640
+
641
+ nop_selected = select_box_nop_select.window_text()
642
+
643
+ if '1152' in nop_selected:
644
+ console.print(f"NOP selecionada corretamente, {nop_selected} ...\n")
645
+ else:
646
+ try:
647
+ select_box_nop_select.click()
648
+ except:
649
+ pyautogui.click(618, 330)
650
+
636
651
  await worker_sleep(2)
637
652
  nop_value = "1152 - ENTRADAS P/ TRANSFERENCIAS DE MERCADORIA- 1.152"
638
653
  console.print(f"Inserindo a informação da NOP: {nop_value} ...\n")
@@ -640,30 +655,39 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
640
655
  set_combobox("||List", nop_value)
641
656
  await worker_sleep(2)
642
657
  pyautogui.hotkey("enter")
658
+
659
+
660
+ console.print(f"Confirmando a NOP selecionada...\n")
661
+ main_window.set_focus()
662
+ select_box_nop_select = main_window.child_window(class_name="TDBIComboBox", found_index=0)
663
+ nop_selected = select_box_nop_select.window_text()
664
+ if '1152' in nop_selected:
665
+ console.print(f"NOP selecionada corretamente, {nop_selected} ...\n")
643
666
  await worker_sleep(8)
644
- console.print("Teste")
645
667
  await emsys.verify_warning_and_error("Aviso", "OK")
646
668
  await emsys.incluir_registro()
647
669
  retorno = await verify_nf_incuded()
648
670
  await worker_sleep(40)
649
- if retorno:
650
- break
651
-
652
- console.print("\nVerifica se a nota ja foi lançada...")
653
- nf_chave_acesso = int(nota.get("nfe"))
654
- status_nf_emsys = await get_status_nf_emsys(nf_chave_acesso)
655
- if status_nf_emsys.get("status") != "Lançada":
656
671
 
672
+ console.print("\nVerifica se a nota ja foi lançada...")
673
+ nf_chave_acesso = int(nota.get("nfe"))
674
+ status_nf_emsys = await get_status_nf_emsys(nf_chave_acesso)
675
+ if status_nf_emsys.get("status") != "Lançada":
676
+ return RpaRetornoProcessoDTO(
677
+ sucesso=False,
678
+ retorno=f"Erro na validação de CFOP, foi encontrado mais de uma opção com a mesma informação",
679
+ status=RpaHistoricoStatusEnum.Falha,
680
+ )
681
+ else:
657
682
  return RpaRetornoProcessoDTO(
658
683
  sucesso=False,
659
- retorno=f"Erro na validação de CFOP, foi encontrado mais de uma opção com a mesma informação",
684
+ retorno=f"Erro na validação de CFOP, não foi possivel selecionar NOP correta",
660
685
  status=RpaHistoricoStatusEnum.Falha,
661
686
  )
662
-
663
- except:
687
+ except Exception as e:
664
688
  return RpaRetornoProcessoDTO(
665
689
  sucesso=False,
666
- retorno=f"Erro ao alterar o NOP",
690
+ retorno=f"Erro ao alterar o NOP, erro {e}",
667
691
  status=RpaHistoricoStatusEnum.Falha,
668
692
  )
669
693
 
@@ -772,6 +796,3 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
772
796
  logger.error(observacao)
773
797
  console.print(observacao, style="bold red")
774
798
  return {"sucesso": False, "retorno": observacao}
775
-
776
- finally:
777
- await kill_process("EMSys")
@@ -382,7 +382,7 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
382
382
  )
383
383
 
384
384
 
385
- await worker_sleep(7)
385
+ await worker_sleep(12)
386
386
  console.print(f"Verificando sem possui o pop-up de Registro de Entrada... \n")
387
387
  registro_entrada_pop_up_title = await is_window_open("Registro de Entrada")
388
388
  if registro_entrada_pop_up_title["IsOpened"] == True:
@@ -402,7 +402,7 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
402
402
  )
403
403
 
404
404
  await worker_sleep(5)
405
- max_attempts = 35
405
+ max_attempts = 45
406
406
  i = 0
407
407
 
408
408
  while i < max_attempts:
@@ -2176,8 +2176,8 @@ async def select_documento_type(document_type: str) -> RpaRetornoProcessoDTO:
2176
2176
  RpaRetornoProcessoDTO: Retorna um objeto com informações sobre o status do processo.
2177
2177
  """
2178
2178
  try:
2179
- app = Application().connect(title="Nota Fiscal de Entrada")
2180
- main_window = app["Nota Fiscal de Entrada"]
2179
+ app = Application().connect(class_name="TFrmNotaFiscalEntrada")
2180
+ main_window = app["TFrmNotaFiscalEntrada"]
2181
2181
 
2182
2182
  main_window.set_focus()
2183
2183
 
@@ -2407,25 +2407,26 @@ async def error_before_persist_record() -> RpaRetornoProcessoDTO:
2407
2407
 
2408
2408
  # TODO: Melhorar o retorno
2409
2409
  async def itens_not_found_supplier(xml: str):
2410
- username = getpass.getuser()
2411
- console.print("Verificando se existe tela de multiplas referencias.\n")
2412
- await worker_sleep(10)
2410
+ try:
2411
+ username = getpass.getuser()
2412
+ console.print("Verificando se existe tela de multiplas referencias.\n")
2413
+ await worker_sleep(10)
2413
2414
 
2414
- itens_fornecedor = await is_window_open_by_class(
2415
- "TFrmSelecionaItensFornecedor", "TFrmSelecionaItensFornecedor"
2416
- )
2415
+ itens_fornecedor = await is_window_open_by_class(
2416
+ "TFrmSelecionaItensFornecedor", "TFrmSelecionaItensFornecedor"
2417
+ )
2417
2418
 
2418
- if itens_fornecedor["IsOpened"] == True:
2419
- console.print("Tela de multiplas referencias existe.\n")
2420
- return {
2421
- "sucesso": True,
2422
- "retorno": f"Tela de Itens fornecedor - Multiplas referencias",
2423
- "window": "MultiplasRef",
2424
- }
2419
+ if itens_fornecedor["IsOpened"] == True:
2420
+ console.print("Tela de multiplas referencias existe.\n")
2421
+ return {
2422
+ "sucesso": True,
2423
+ "retorno": f"Tela de Itens fornecedor - Multiplas referencias",
2424
+ "window": "MultiplasRef",
2425
+ }
2426
+
2427
+ console.print("Iteragindo com a tela de itens não localizados // NCM ...\n")
2425
2428
 
2426
- console.print("Iteragindo com a tela de itens não localizados // NCM ...\n")
2427
- try:
2428
- app = Application().connect(class_name="TFrmAguarde")
2429
+ app = Application().connect(class_name="TFrmAguarde", timeout=60)
2429
2430
 
2430
2431
  max_attempts = 60
2431
2432
  i = 0