worker-automate-hub 0.5.20__py3-none-any.whl → 0.5.21__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,142 @@
1
+ import asyncio
2
+ import warnings
3
+
4
+ import pyautogui
5
+ from rich.console import Console
6
+
7
+ from worker_automate_hub.models.dto.rpa_historico_request_dto import RpaHistoricoStatusEnum, RpaRetornoProcessoDTO
8
+ from worker_automate_hub.models.dto.rpa_processo_entrada_dto import RpaProcessoEntradaDTO
9
+ from worker_automate_hub.utils.logger import logger
10
+ from worker_automate_hub.utils.util import (
11
+ find_element_center,
12
+ find_target_position,
13
+ kill_process,
14
+ take_screenshot,
15
+ type_text_into_field,
16
+ wait_element_ready_win,
17
+ )
18
+
19
+ console = Console()
20
+
21
+
22
+ async def login_emsys_versao_especifica(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
23
+ from pywinauto.application import Application
24
+
25
+ warnings.filterwarnings(
26
+ "ignore",
27
+ category=UserWarning,
28
+ message="32-bit application should be automated using 32-bit Python",
29
+ )
30
+
31
+ try:
32
+ # Mata todos processos do emsys antes de abrir uma nova instancia
33
+ await kill_process("EMSys")
34
+
35
+ # Abre um novo emsys
36
+ app = Application().start("C:\\Rezende\\EMSys3\\EMSys3.977.exe")
37
+ console.print("\nEMSys iniciando...", style="bold green")
38
+
39
+ await asyncio.sleep(10)
40
+ # Testa se existe alguma mensagem no Emsys
41
+ window_message_login_emsys = await find_element_center(
42
+ "assets/emsys/window_message_login_emsys.png", (560, 487, 1121, 746), 10
43
+ )
44
+
45
+ # Obtém a resolução da tela
46
+ screen_width, screen_height = pyautogui.size()
47
+
48
+ pyautogui.click(screen_width / 2, screen_height / 2)
49
+
50
+ # Clica no "Não mostrar novamente" se existir
51
+ if window_message_login_emsys:
52
+ pyautogui.click(window_message_login_emsys.x, window_message_login_emsys.y)
53
+ pyautogui.click(
54
+ window_message_login_emsys.x + 383, window_message_login_emsys.y + 29
55
+ )
56
+ console.print("Mensagem de login encontrada e fechada.", style="bold green")
57
+
58
+ # Ve se o Emsys esta aberto no login
59
+ image_emsys_login = await find_element_center(
60
+ "assets/emsys/logo_emsys_login.png", (800, 200, 1400, 700), 600
61
+ )
62
+ # config_robot = await get_config_by_name("Login EmSys")
63
+ if image_emsys_login:
64
+ # await asyncio.sleep(10)
65
+ # type_text_into_field(
66
+ # config_robot["EmSys DB"], app["Login"]["ComboBox"], True, "50"
67
+ # )
68
+ # pyautogui.press("enter")
69
+ # await asyncio.sleep(2)
70
+
71
+ if await wait_element_ready_win(app["Login"]["Edit2"], 30):
72
+ disconect_database = await find_element_center(
73
+ "assets/emsys/disconect_database.png", (1123, 452, 1400, 578), 300
74
+ )
75
+
76
+ if disconect_database:
77
+ # Realiza login no Emsys
78
+ type_text_into_field(
79
+ task.configEntrada["user"], app["Login"]["Edit2"], True, "50"
80
+ )
81
+ pyautogui.press("tab")
82
+ type_text_into_field(
83
+ task.configEntrada["pass"],
84
+ app["Login"]["Edit1"],
85
+ True,
86
+ "50",
87
+ )
88
+ pyautogui.press("enter")
89
+
90
+ # Seleciona a filial do emsys
91
+ selecao_filial = await find_element_center(
92
+ "assets/emsys/selecao_filial.png", (480, 590, 820, 740), 15
93
+ )
94
+
95
+ if selecao_filial == None:
96
+ screenshot_path = take_screenshot()
97
+ selecao_filial = find_target_position(
98
+ screenshot_path, "Grupo", 0, -50, 15
99
+ )
100
+
101
+ if selecao_filial == None:
102
+ selecao_filial = (804, 640)
103
+
104
+ pyautogui.write(task.configEntrada["filial"])
105
+ pyautogui.press("enter")
106
+
107
+ else:
108
+ type_text_into_field(
109
+ task.configEntrada["filial"],
110
+ app["Seleção de Empresas"]["Edit"],
111
+ True,
112
+ "50",
113
+ )
114
+ pyautogui.press("enter")
115
+
116
+ button_logout = await find_element_center(
117
+ "assets/emsys/button_logout.png", (0, 0, 130, 150), 75
118
+ )
119
+
120
+ if button_logout:
121
+ console.print(
122
+ "Login realizado com sucesso.", style="bold green"
123
+ )
124
+ return RpaRetornoProcessoDTO(
125
+ sucesso=True,
126
+ retorno="Processo de login no EMSys executado com sucesso.",
127
+ status=RpaHistoricoStatusEnum.Sucesso,
128
+ )
129
+
130
+ else:
131
+ logger.info("login_emsys_win -> wait_element_ready_win [1]")
132
+ console.print("Elemento de login não está pronto.", style="bold red")
133
+
134
+ except Exception as ex:
135
+ logger.error("Erro em login_emsys: " + str(ex))
136
+ console.print(f"Erro em login_emsys: {str(ex)}", style="bold red")
137
+ return RpaRetornoProcessoDTO(
138
+ sucesso=False,
139
+ retorno=f"Erro em login_emsys: {str(ex)}",
140
+ status=RpaHistoricoStatusEnum.Falha,
141
+ )
142
+
@@ -52,6 +52,7 @@ from worker_automate_hub.tasks.jobs.entrada_de_notas_7139 import (
52
52
  )
53
53
  from worker_automate_hub.tasks.jobs.exemplo_processo import exemplo_processo
54
54
  from worker_automate_hub.tasks.jobs.login_emsys import login_emsys
55
+ from worker_automate_hub.tasks.jobs.login_emsys_versao_especifica import login_emsys_versao_especifica
55
56
  from worker_automate_hub.tasks.jobs.playground import playground
56
57
  from worker_automate_hub.tasks.jobs.transferencias import transferencias
57
58
  from worker_automate_hub.tasks.jobs.sped_fiscal import sped_fiscal
@@ -59,6 +60,7 @@ from worker_automate_hub.tasks.jobs.sped_fiscal import sped_fiscal
59
60
  task_definitions = {
60
61
  "5b295021-8df7-40a1-a45e-fe7109ae3902": exemplo_processo,
61
62
  "a0788650-de48-454f-acbf-3537ead2d8ed": login_emsys,
63
+ "7d319f61-5e12-425c-86ed-678f0d9e14bd": login_emsys_versao_especifica,
62
64
  "abcfa1ba-d580-465a-aefb-c15ac4514407": descartes,
63
65
  "2c8ee738-7447-4517-aee7-ce2c9d25cea9": transferencias,
64
66
  "855f9e0f-e972-4f52-bc1a-60d1fc244e79": conexao_rdp,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: worker-automate-hub
3
- Version: 0.5.20
3
+ Version: 0.5.21
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
@@ -59,10 +59,11 @@ worker_automate_hub/tasks/jobs/fechar_conexao_rdp.py,sha256=8GVImU7EnncCSxbbuEC4
59
59
  worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py,sha256=tUU5-xbwQtpp4HcEGYaYPW7i4y3raKC0IgjWpT0338c,10548
60
60
  worker_automate_hub/tasks/jobs/fidc_remessa_cobranca_cnab240.py,sha256=QBGm6eS5JghgNWNqZlk1g2a2iV8LnBLiOTBBL3Giet0,4181
61
61
  worker_automate_hub/tasks/jobs/login_emsys.py,sha256=scdKsseFOL-7UQ5D743VaZZzWBKaEfq0XzYNmROUOgE,5703
62
+ worker_automate_hub/tasks/jobs/login_emsys_versao_especifica.py,sha256=cGj98H7g_1HpKsFAdrpVdFF14wd7Qp2PXgwd6ww-qSw,5642
62
63
  worker_automate_hub/tasks/jobs/playground.py,sha256=7vWDg9DwToHwGJ6_XOa8TQ6LmfRV5Qz2TaOV3q3P9sA,1918
63
64
  worker_automate_hub/tasks/jobs/sped_fiscal.py,sha256=zJjyvMUTeIGrjczdIDxckx5J-FGRt5L3hg_ErqM66d4,28208
64
65
  worker_automate_hub/tasks/jobs/transferencias.py,sha256=i3fCanHZ_pSwPW03THpQPqlzrDjbV4QbKkXpUqV3dxM,39272
65
- worker_automate_hub/tasks/task_definitions.py,sha256=KG84tDaTlCpthdYmdR1193BOudELGcoglmIpQpd2PLQ,4606
66
+ worker_automate_hub/tasks/task_definitions.py,sha256=TLJKIyi8IgZL_3EqVzER74kT3nfFdpSMbUwnnEkLpZk,4786
66
67
  worker_automate_hub/tasks/task_executor.py,sha256=DUN2-Bi8Zxv0J_QUoV1vt7KgfbmYtixuA6i3Uzt67bA,5256
67
68
  worker_automate_hub/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
68
69
  worker_automate_hub/utils/env.py,sha256=TacQjGRO7PUNpttrhTAc5Gnegaiysl2Knsv1P8qfkfs,57
@@ -73,7 +74,7 @@ worker_automate_hub/utils/updater.py,sha256=en2FCGhI8aZ-JNP3LQm64NJDc4awCNW7UhbV
73
74
  worker_automate_hub/utils/util.py,sha256=Eyy0mLLt_xd_zVXWoHAb-GK0PU1xZdWPvh-IndajxDk,128815
74
75
  worker_automate_hub/utils/utils_nfe_entrada.py,sha256=jWhLVwEovorHvQha9u6EQn5njsnz6sbMpPPreYhhIyw,29594
75
76
  worker_automate_hub/worker.py,sha256=CT-poyP1ZYvubArYsnnNd9oJ53SPaDwgr6p6keS3nI4,6248
76
- worker_automate_hub-0.5.20.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
77
- worker_automate_hub-0.5.20.dist-info/METADATA,sha256=cqvotEQOKwvnEDdKIlMjZtCeJxxCIVRsbHqsdJvoEm8,2894
78
- worker_automate_hub-0.5.20.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
79
- worker_automate_hub-0.5.20.dist-info/RECORD,,
77
+ worker_automate_hub-0.5.21.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
78
+ worker_automate_hub-0.5.21.dist-info/METADATA,sha256=GVbyyIKX-VbFd3gXO_WQs4lEggGDFRUMwvmZPTM8Tv0,2894
79
+ worker_automate_hub-0.5.21.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
80
+ worker_automate_hub-0.5.21.dist-info/RECORD,,