worker-automate-hub 0.4.336__py3-none-any.whl → 0.4.338__py3-none-any.whl

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.
@@ -768,8 +768,11 @@ async def descartes(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
768
768
  )
769
769
  message_prevenda = take_target_position(screenshot_path, "Deseja")
770
770
  if message_prevenda is not None:
771
- button_yes = find_target_position(screenshot_path, "Yes", attempts=15)
772
- pyautogui.click(button_yes)
771
+ button_yes = find_target_position(screenshot_path, "Yes", attempts=5)
772
+ if button_yes is not None:
773
+ pyautogui.click(button_yes)
774
+ else:
775
+ pyautogui.click(914,560)
773
776
  else:
774
777
  log_msg = f"Mensagem 'Deseja pesquisar pré-venda?' não encontrada."
775
778
  console.print(log_msg, style="bold yellow")
@@ -786,8 +789,16 @@ async def descartes(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
786
789
  pyautogui.click(button_confirma_transferencia)
787
790
  console.log("Confirmou transferencia", style="bold green")
788
791
  else:
789
- log_msg = f"Botao 'Confirma' não encontrado"
790
- console.print(log_msg, style="bold yellow")
792
+ try:
793
+ confirma = pyautogui.locateOnScreen("assets\\descartes_transferencias_images\\button_confirma.png", grayscale=True, region=[1225, 289, 1388, 362])
794
+ pyautogui.click(confirma)
795
+ except:
796
+ log_msg = f"Botao 'Confirma' não encontrado"
797
+ console.print(log_msg, style="bold yellow")
798
+ # return RpaRetornoProcessoDTO(
799
+ # sucesso=False,
800
+ # retorno=log_msg,
801
+ # status=RpaHistoricoStatusEnum.Falha)
791
802
 
792
803
  pyautogui.moveTo(1200, 300)
793
804
 
@@ -922,6 +933,4 @@ async def descartes(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
922
933
 
923
934
  return RpaRetornoProcessoDTO(
924
935
  sucesso=False, retorno=log_msg, status=RpaHistoricoStatusEnum.Falha
925
- )
926
- finally:
927
- await kill_process("EMSys")
936
+ )
@@ -65,21 +65,15 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
65
65
  )
66
66
 
67
67
  await worker_sleep(4)
68
- max_attempts = 15
69
- i = 0
70
- while i < max_attempts:
71
- try:
72
- app = Application(backend="win32").connect(class_name="TFrmLoginModulo")
73
- break
74
- except:
75
- i = i+1
76
-
77
- if i >= max_attempts:
68
+
69
+ try:
70
+ app = Application(backend="win32").connect(class_name="TFrmLoginModulo", timeout=50)
71
+ except:
78
72
  return RpaRetornoProcessoDTO(
79
73
  sucesso=False,
80
74
  retorno="Erro ao abrir o EMSys Fiscal, tela de login não encontrada",
81
75
  status=RpaHistoricoStatusEnum.Falha,
82
- )
76
+ )
83
77
 
84
78
 
85
79
  return_login = await login_emsys_fiscal(config.conConfiguracao, app, task)
@@ -673,8 +673,12 @@ async def transferencias(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
673
673
  )
674
674
  message_prevenda = take_target_position(screenshot_path, "Deseja")
675
675
  if message_prevenda is not None:
676
- button_yes = find_target_position(screenshot_path, "Yes", attempts=15)
677
- pyautogui.click(button_yes)
676
+ button_yes = find_target_position(screenshot_path, "Yes", attempts=5)
677
+ if button_yes is not None:
678
+ pyautogui.click(button_yes)
679
+ else:
680
+ pyautogui.click(914,560)
681
+ console.log('Clicou em "Yes" para confirmar pré-venda', style="bold green")
678
682
  else:
679
683
  log_msg = f"Mensagem 'Deseja pesquisar pré-venda?' não encontrada."
680
684
  console.print(log_msg, style="bold yellow")
@@ -690,9 +694,9 @@ async def transferencias(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
690
694
  # console.print(log_msg, style="bold yellow")
691
695
 
692
696
  # Clica em "Yes" para confirmar a pré-venda
693
- confirma_pre_venda = (921, 562)
694
- pyautogui.click(confirma_pre_venda)
695
- console.log('Clicou em "Yes" para confirmar pré-venda', style="bold green")
697
+ # confirma_pre_venda = (921, 562)
698
+ # pyautogui.click(confirma_pre_venda)
699
+ # console.log('Clicou em "Yes" para confirmar pré-venda', style="bold green")
696
700
 
697
701
  # Confirma pré-venda
698
702
  # Pode não precisar em descartes, mas em trânsferencias é obrigatório
@@ -705,8 +709,16 @@ async def transferencias(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
705
709
  pyautogui.click(button_confirma_transferencia)
706
710
  console.log("Confirmou transferencia", style="bold green")
707
711
  else:
708
- log_msg = f"Botao 'Confirma' não encontrado"
709
- console.print(log_msg, style="bold yellow")
712
+ try:
713
+ confirma = pyautogui.locateOnScreen("assets\\descartes_transferencias_images\\button_confirma.png", grayscale=True, region=[1225, 289, 1388, 362])
714
+ pyautogui.click(confirma)
715
+ except:
716
+ log_msg = f"Botao 'Confirma' não encontrado"
717
+ console.print(log_msg, style="bold yellow")
718
+ # return RpaRetornoProcessoDTO(
719
+ # sucesso=False,
720
+ # retorno=log_msg,
721
+ # status=RpaHistoricoStatusEnum.Falha)
710
722
 
711
723
  pyautogui.moveTo(1200, 300)
712
724
 
@@ -313,125 +313,103 @@ async def login_emsys_fiscal(
313
313
 
314
314
  filial_cod = task.configEntrada.get("empresa")
315
315
 
316
- # Testa se existe alguma mensagem no Emsys
317
- console.print("Testando se existe alguma mensagem no Emsys...")
318
- window_message_login_emsys = await find_element_center(
319
- "assets/emsys/window_message_login_emsys.png", (560, 487, 1121, 746), 15
320
- )
316
+ try:
317
+ console.print("\nEMSys Fiscal inciado com sucesso...", style="bold green")
318
+ app = Application().connect(class_name="TFrmLoginModulo")
319
+ main_window = app["Login"]
321
320
 
322
- # Clica no "Não mostrar novamente" se existir
323
- console.print("Clicando no 'Não mostrar novamente' se existir...")
324
- if window_message_login_emsys:
325
- pyautogui.click(window_message_login_emsys.x, window_message_login_emsys.y)
326
- pyautogui.click(
327
- window_message_login_emsys.x + 383, window_message_login_emsys.y + 29
328
- )
329
- console.print("Mensagem de login encontrada e fechada.", style="bold green")
321
+ main_window.set_focus()
330
322
 
331
- try:
332
- console.print("\nEMSys Fiscal inciado com sucesso...", style="bold green")
333
- app = Application().connect(class_name="TFrmLoginModulo")
334
- main_window = app["Login"]
323
+ edit_password = main_window.child_window(class_name="TcxCustomInnerTextEdit", found_index=0)
324
+ password = config.get("pass")
325
+ edit_password.set_edit_text(password)
335
326
 
336
- edit_password = main_window.child_window(class_name="TcxTextEdit", found_index=0)
337
- password = config.get("pass")
338
- edit_password.set_edit_text(password)
327
+ await worker_sleep(1)
328
+ edit_user = main_window.child_window(class_name="TcxCustomInnerTextEdit", found_index=1)
329
+ user = config.get("user")
330
+ edit_user.set_edit_text(user)
339
331
 
340
- await worker_sleep(1)
341
- edit_user = main_window.child_window(class_name="TcxTextEdit", found_index="1")
342
- user = config.get("user")
343
- edit_user.set_edit_text(user)
332
+ await worker_sleep(2)
333
+ pyautogui.press("enter")
344
334
 
345
- await worker_sleep(2)
346
- pyautogui.press("enter")
335
+ # Seleciona a filial do emsys
336
+ console.print("Seleciona a filial do emsys...")
337
+ selecao_filial = await find_element_center(
338
+ "assets/emsys/selecao_filial.png", (480, 590, 820, 740), 15
339
+ )
347
340
 
348
- # Seleciona a filial do emsys
349
- console.print("Seleciona a filial do emsys...")
350
- selecao_filial = await find_element_center(
351
- "assets/emsys/selecao_filial.png", (480, 590, 820, 740), 15
341
+ console.print(f"Selecao filial via imagem: {selecao_filial}")
342
+ if selecao_filial == None:
343
+ screenshot_path = take_screenshot()
344
+ selecao_filial = find_target_position(
345
+ screenshot_path, "Grupo", 0, -50, attempts=15
346
+ )
347
+ console.print(
348
+ f"Selecao filial localização de texto: {selecao_filial}"
352
349
  )
353
-
354
- console.print(f"Selecao filial via imagem: {selecao_filial}")
355
350
  if selecao_filial == None:
356
- screenshot_path = take_screenshot()
357
- selecao_filial = find_target_position(
358
- screenshot_path, "Grupo", 0, -50, attempts=15
359
- )
360
- console.print(
361
- f"Selecao filial localização de texto: {selecao_filial}"
362
- )
363
- if selecao_filial == None:
364
- selecao_filial = (700, 639)
365
- console.print(f"Selecao filial posição fixa: {selecao_filial}")
351
+ selecao_filial = (700, 639)
352
+ console.print(f"Selecao filial posição fixa: {selecao_filial}")
366
353
 
367
- pyautogui.click(selecao_filial)
368
- console.print(
369
- f"Escrevendo [{filial_cod}] no campo filial..."
370
- )
371
-
372
- pyautogui.write(
373
- task.configEntrada.get("Código da Filial")
374
- )
354
+ pyautogui.click(selecao_filial)
355
+ console.print(
356
+ f"Escrevendo [{filial_cod}] no campo filial..."
357
+ )
375
358
 
376
- else:
377
- console.print(
378
- f"Escrevendo [{filial_cod}] no campo filial..."
379
- )
380
- type_text_into_field(
381
- task.configEntrada.get("Código da Filial"),
382
- app["Seleção de Empresas"]["Edit"],
383
- True,
384
- "50",
385
- )
386
- pyautogui.press("enter")
359
+ pyautogui.write(
360
+ task.configEntrada.get("Código da Filial")
361
+ )
387
362
 
388
- await worker_sleep(5)
363
+ else:
389
364
  console.print(
390
- f"Verificando a presença de Warning..."
365
+ f"Escrevendo [{filial_cod}] no campo filial..."
366
+ )
367
+ type_text_into_field(
368
+ task.configEntrada.get("Código da Filial"),
369
+ app["Seleção de Empresas"]["Edit"],
370
+ True,
371
+ "50",
372
+ )
373
+ pyautogui.press("enter")
374
+
375
+ await worker_sleep(5)
376
+ console.print(
377
+ f"Verificando a presença de Warning..."
378
+ )
379
+ warning_pop_up = await is_window_open("Warning")
380
+ if warning_pop_up["IsOpened"] == True:
381
+ return RpaRetornoProcessoDTO(
382
+ sucesso=False,
383
+ retorno=f"Erro: Não foi possível acessar a filial {filial_cod}, esta com o CNPJ bloqueado, por favor verificar",
384
+ status=RpaHistoricoStatusEnum.Falha,
391
385
  )
392
- warning_pop_up = await is_window_open("Warning")
393
- if warning_pop_up["IsOpened"] == True:
394
- return RpaRetornoProcessoDTO(
395
- sucesso=False,
396
- retorno=f"Erro: Não foi possível acessar a filial {filial_cod}, esta com o CNPJ bloqueado, por favor verificar",
397
- status=RpaHistoricoStatusEnum.Falha,
398
- )
399
-
400
- max_attempts = 10
401
- i = 0
402
- while i < max_attempts:
403
- console.print("Aguardando o EMSys Fiscal...\n")
404
- emsys_opened= await is_window_open_by_class("TFrmPrincipalFiscal", "TFrmPrincipalFiscal")
405
- if emsys_opened["IsOpened"] == True:
406
- console.print("Login realizado com sucesso.", style="bold green")
407
- return RpaRetornoProcessoDTO(
408
- sucesso=True,
409
- retorno="Logou com sucesso no emsys!",
410
- status=RpaHistoricoStatusEnum.Sucesso,
411
- )
412
- else:
413
- i = i+1
414
- await worker_sleep(1)
415
386
 
416
- if i >= max_attempts:
387
+ max_attempts = 10
388
+ i = 0
389
+ while i < max_attempts:
390
+ console.print("Aguardando o EMSys Fiscal...\n")
391
+ emsys_opened= await is_window_open_by_class("TFrmPrincipalFiscal", "TFrmPrincipalFiscal")
392
+ if emsys_opened["IsOpened"] == True:
393
+ console.print("Login realizado com sucesso.", style="bold green")
417
394
  return RpaRetornoProcessoDTO(
418
- sucesso=False,
419
- retorno="Erro ao abrir o EMSys Fiscal, tela de login não encontrada",
420
- status=RpaHistoricoStatusEnum.Falha,
395
+ sucesso=True,
396
+ retorno="Logou com sucesso no emsys!",
397
+ status=RpaHistoricoStatusEnum.Sucesso,
421
398
  )
422
-
423
-
424
- except Exception as e:
425
- log_msg = f"Erro ao realizar login no EMSys Fiscal. Resolução atual: {screen_width}x{screen_height}, erro: {e}..."
426
- console.print(log_msg, style="bold red")
399
+ else:
400
+ i = i+1
401
+ await worker_sleep(1)
402
+
403
+ if i >= max_attempts:
427
404
  return RpaRetornoProcessoDTO(
428
- sucesso=False, retorno=log_msg, status=RpaHistoricoStatusEnum.Falha
405
+ sucesso=False,
406
+ retorno="Erro ao abrir o EMSys Fiscal, tela de login não encontrada",
407
+ status=RpaHistoricoStatusEnum.Falha,
429
408
  )
430
409
 
431
- else:
432
- screen_width, screen_height = pyautogui.size()
433
- log_msg = f"A tela de login não foi encontrada. Resolução atual: {screen_width}x{screen_height}."
434
- logger.info(log_msg)
410
+
411
+ except Exception as e:
412
+ log_msg = f"Erro ao realizar login no EMSys Fiscal, erro: {e}..."
435
413
  console.print(log_msg, style="bold red")
436
414
  return RpaRetornoProcessoDTO(
437
415
  sucesso=False, retorno=log_msg, status=RpaHistoricoStatusEnum.Falha
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: worker-automate-hub
3
- Version: 0.4.336
3
+ Version: 0.4.338
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
@@ -30,7 +30,7 @@ worker_automate_hub/tasks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
30
30
  worker_automate_hub/tasks/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
31
  worker_automate_hub/tasks/jobs/coleta_dje_process.py,sha256=rf4fW-FaHUl1MS7b03z4cwI3zHfNw8FWxvjvNY3Xn20,28773
32
32
  worker_automate_hub/tasks/jobs/conexao_rdp.py,sha256=0-oLMupu6zucZ9kVshLjG94i0W9v4pbcgYHvI6uipGc,10376
33
- worker_automate_hub/tasks/jobs/descartes.py,sha256=IHIyFVbqoDKpCucPwqInsTfbS0ccUpySTNWxbLI3b6E,38667
33
+ worker_automate_hub/tasks/jobs/descartes.py,sha256=hwSPY0HWFyKMl0RvLKi8h24D2klhPkQcLHW-_GGDtng,39149
34
34
  worker_automate_hub/tasks/jobs/ecac_estadual_go.py,sha256=aPckQRlRozFS_OK3C9wNdMCmqO6AM4djwqY2uSSaPmo,20687
35
35
  worker_automate_hub/tasks/jobs/ecac_estadual_main.py,sha256=FFpAdtZLO4uelWZooCVpm4JePv_iDt5nwVKrk1ipZJQ,1599
36
36
  worker_automate_hub/tasks/jobs/ecac_estadual_mt.py,sha256=4fe5Ri--lNIlRBSusbjyYtFKwYpu1P4Y2EYgHgQsrqE,24985
@@ -54,8 +54,8 @@ worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py,sha256=Y-mKYcgX1kwcy_s
54
54
  worker_automate_hub/tasks/jobs/fidc_remessa_cobranca_cnab240.py,sha256=QBGm6eS5JghgNWNqZlk1g2a2iV8LnBLiOTBBL3Giet0,4181
55
55
  worker_automate_hub/tasks/jobs/login_emsys.py,sha256=IoGCIvO4UwmuxOZEn3cvYJlKyhsWvtHvbFk8vwjTroQ,5620
56
56
  worker_automate_hub/tasks/jobs/playground.py,sha256=bdnXv3C7WLQUxt4edGZDfAbRJJ2-q4zuIQaK3GLnaUc,1765
57
- worker_automate_hub/tasks/jobs/sped_fiscal.py,sha256=aWPiAVzG4UiOIfrjGzky-dcyU-ovJwbV2PHdJwAT40w,19699
58
- worker_automate_hub/tasks/jobs/transferencias.py,sha256=Ot9u76ngO3EXdYDJXhsfNmoy_WTcDAJr8JN5BLzjZDo,35235
57
+ worker_automate_hub/tasks/jobs/sped_fiscal.py,sha256=7HxF-bHoBXtLmJFAWoG556e9NlmjyvbkI6zdlYdynNg,19548
58
+ worker_automate_hub/tasks/jobs/transferencias.py,sha256=ldry9J7s_8S_IUEfH5zEWja-_BWe3kK7EI19TOALzv4,35868
59
59
  worker_automate_hub/tasks/task_definitions.py,sha256=2Jp1H4_qJZqqGyaP6MA87KLt4QNrtWBYWbXu-2gymFo,4459
60
60
  worker_automate_hub/tasks/task_executor.py,sha256=QqVNRljSlSbSXzTwKLezMjCLej6AixuBcDAhDrqmAkU,8435
61
61
  worker_automate_hub/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -64,10 +64,10 @@ worker_automate_hub/utils/get_creds_gworkspace.py,sha256=ZJ0IIEjM4IXIV9rwfbOZ1V1
64
64
  worker_automate_hub/utils/logger.py,sha256=FYV9fg0_RAYJF_ZOCJEbqQAiCXlXk2gMpvUU1rzT_xs,671
65
65
  worker_automate_hub/utils/toast.py,sha256=xPHc5r5uOxB_cZlCzm13Kt2qSKLLFZALncU6Qg3Ft68,1162
66
66
  worker_automate_hub/utils/updater.py,sha256=0LR6Xpe3HZk-xu-trH7vKRhP5FXp0nhp1qxtygE2Jps,7280
67
- worker_automate_hub/utils/util.py,sha256=s3t51co6jUdPR-IZJVtGeivw8wfs97dLBfr3C35sjc0,118424
67
+ worker_automate_hub/utils/util.py,sha256=v2N2Sr5dtW_k4GObh0FB5cKv64hRs-rTjKLeyMsKcdU,116963
68
68
  worker_automate_hub/utils/utils_nfe_entrada.py,sha256=4--3HDyWddT8vw2mBNY_-9IscvAQYBygwPIMiKvAG-w,27583
69
69
  worker_automate_hub/worker.py,sha256=vkl_x7gSo6nQlhSBLwRkGx6LEONnYptfBaGxOy1ZLsE,4634
70
- worker_automate_hub-0.4.336.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
71
- worker_automate_hub-0.4.336.dist-info/METADATA,sha256=asGQER2i8WZZOa5isY4jKQO5S60uVUC8WXX3yOiaWy0,2884
72
- worker_automate_hub-0.4.336.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
73
- worker_automate_hub-0.4.336.dist-info/RECORD,,
70
+ worker_automate_hub-0.4.338.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
71
+ worker_automate_hub-0.4.338.dist-info/METADATA,sha256=A0p_VeEOGrnVNUcqigt-TBHir3eQnktdyEVsR6r9esw,2884
72
+ worker_automate_hub-0.4.338.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
73
+ worker_automate_hub-0.4.338.dist-info/RECORD,,