worker-automate-hub 0.4.347__py3-none-any.whl → 0.4.350__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.
@@ -320,7 +320,6 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
320
320
  # VERIFICANDO A EXISTENCIA DE ERRO
321
321
  erro_pop_up = await is_window_open("Erro")
322
322
  if erro_pop_up["IsOpened"] == True:
323
- console.print("Aveia")
324
323
  return RpaRetornoProcessoDTO(
325
324
  sucesso=False,
326
325
  retorno="Nota não encontrada no EMsys",
@@ -341,7 +340,6 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
341
340
  i += 1
342
341
 
343
342
  if i >= max_attempts:
344
- console.print("batata")
345
343
  return RpaRetornoProcessoDTO(
346
344
  sucesso=False,
347
345
  retorno="Nota não encontrada no EMsys",
@@ -350,67 +348,35 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
350
348
 
351
349
  await worker_sleep(10)
352
350
 
353
- app = Application().connect(
351
+ if nota.get("existeDespesa") != "Não":
352
+ app = Application().connect(
354
353
  title="Informações para importação da Nota Fiscal Eletrônica"
355
- )
356
- main_window = app["Informações para importação da Nota Fiscal Eletrônica"]
357
-
358
- # Configurar Tipo de Despesa com base no fornecedor e natureza
359
- fornecedor = nota.get("nomeFornecedor", "").lower()
360
- natureza = nota.get("natureza", "")
361
- despesa = None
362
-
363
- if "brs" in fornecedor and natureza == "33":
364
- despesa = "192"
365
- elif "ataca" in fornecedor and natureza == "32":
366
- despesa = "15"
367
- elif "hygia" in fornecedor and natureza == "34":
368
- despesa = "193"
369
-
370
- if despesa is not None:
354
+ )
355
+ main_window = app["Informações para importação da Nota Fiscal Eletrônica"]
371
356
 
372
- console.print(f"Selecionando Tipo de Despesa: {despesa}...\n")
373
- tipo_despesa_work = await tipo_despesa(despesa)
374
- if not tipo_despesa_work.sucesso:
375
- return RpaRetornoProcessoDTO(
376
- sucesso=False,
377
- retorno=f"Erro ao configurar Tipo de Despesa: {tipo_despesa_work.retorno}",
378
- status=RpaHistoricoStatusEnum.Falha,
379
- )
357
+ combo_box_natureza_operacao = main_window.child_window(
358
+ class_name="TDBIComboBox", found_index=0
359
+ )
360
+ combo_box_natureza_operacao.click()
361
+ await worker_sleep(4)
362
+ set_combobox("||List", "1152-ENTRADA P/TRANSFERENCIA MERCADORIA S/EST")
363
+ await worker_sleep(3)
380
364
 
381
- # Configurar ICMS (inserir código e zerar tributação)
382
- console.print("Configurando ICMS...\n")
383
- cod_icms_work = await cod_icms("33")
384
- if not cod_icms_work.sucesso:
385
- return RpaRetornoProcessoDTO(
386
- sucesso=False,
387
- retorno=f"Erro ao configurar Código ICMS: {cod_icms_work.retorno}",
388
- status=RpaHistoricoStatusEnum.Falha,
389
- )
365
+ pyautogui.hotkey("tab")
390
366
 
391
- checkbox_zerar_icms = await zerar_icms()
392
- if not checkbox_zerar_icms.sucesso:
367
+ despesa = "291"
368
+ tipo_despesa_work = await tipo_despesa(despesa)
369
+ if tipo_despesa_work.sucesso == True:
370
+ console.log(tipo_despesa_work.retorno, style="bold green")
371
+ else:
393
372
  return RpaRetornoProcessoDTO(
394
373
  sucesso=False,
395
- retorno=f"Erro ao zerar tributação ICMS: {checkbox_zerar_icms.retorno}",
374
+ retorno=tipo_despesa_work.retorno,
396
375
  status=RpaHistoricoStatusEnum.Falha,
397
376
  )
398
377
 
399
- # Selecionar "Manter Natureza de Operação selecionada"
400
- console.print("Selecionando 'Manter Natureza de Operação selecionada'...\n")
401
- try:
402
- checkbox_natureza = main_window.child_window(
403
- title="Manter Natureza de Operação selecionada", class_name="TDBICheckBox"
404
- )
405
- if not checkbox_natureza.get_toggle_state():
406
- checkbox_natureza.click()
407
- console.print("'Manter Natureza de Operação selecionada' foi marcado com sucesso.\n")
408
- except Exception as e:
409
- return RpaRetornoProcessoDTO(
410
- sucesso=False,
411
- retorno=f"Erro ao selecionar 'Manter Natureza de Operação selecionada': {e}",
412
- status=RpaHistoricoStatusEnum.Falha,
413
- )
378
+ pyautogui.click(709, 669)
379
+
414
380
 
415
381
  console.print("Clicando em OK... \n")
416
382
 
@@ -423,8 +389,7 @@ async def entrada_de_notas_39(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
423
389
  btn_ok = main_window.child_window(title="Ok")
424
390
  btn_ok.click()
425
391
  except:
426
- btn_ok = main_window.child_window(title="&Ok")
427
- btn_ok.click()
392
+ pyautogui.click(1093,728)
428
393
  except:
429
394
  console.print("Não foi possivel clicar no Botão OK... \n")
430
395
 
@@ -27,11 +27,11 @@ from worker_automate_hub.utils.logger import logger
27
27
  from worker_automate_hub.utils.util import (
28
28
  is_window_open,
29
29
  is_window_open_by_class,
30
- kill_process,
31
30
  login_emsys_fiscal,
32
31
  set_variable,
33
32
  type_text_into_field,
34
33
  worker_sleep,
34
+ kill_all_emsys,
35
35
  )
36
36
 
37
37
  pyautogui.PAUSE = 0.5
@@ -55,8 +55,7 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
55
55
  set_variable("timeout_multiplicador", multiplicador_timeout)
56
56
 
57
57
  # Fecha a instancia do emsys - caso esteja aberta
58
- await kill_process("EMSysFiscal")
59
- await kill_process("EMSys")
58
+ await kill_all_emsys()
60
59
 
61
60
  app = Application(backend="win32").start("C:\\Rezende\\EMSys3\\EMSysFiscal.exe")
62
61
  warnings.filterwarnings(
@@ -142,14 +141,14 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
142
141
  console.print("Inserindo o período para geração do sped...\n")
143
142
  periodo = panel_TTabSheet.child_window(class_name="TDBIEditDate", found_index=2)
144
143
  periodo.set_edit_text(periodo_dt)
145
- await worker_sleep(1)
144
+ await worker_sleep(2)
146
145
 
147
146
  console.print("Selecionando a opção Gerar E115...\n")
148
147
  checkbox_gerar_e115 = main_window.child_window(class_name="TDBICheckBox", found_index=8)
149
148
  if not checkbox_gerar_e115.get_toggle_state() == 1:
150
149
  checkbox_gerar_e115.click()
151
150
  console.print("Selecionado com sucesso... \n")
152
- await worker_sleep(1)
151
+ await worker_sleep(2)
153
152
 
154
153
 
155
154
  console.print("Selecionando a opção Gerar valores zerados para notas de cfop 5929 e 6929...\n")
@@ -157,14 +156,14 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
157
156
  if not checkbox_gerar_cfop.get_toggle_state() == 1:
158
157
  checkbox_gerar_cfop.click()
159
158
  console.print("Selecionado com sucesso... \n")
160
- await worker_sleep(1)
159
+ await worker_sleep(2)
161
160
 
162
161
  console.print("Selecionando a opção Gerar valores zerados para IPI...\n")
163
162
  checkbox_valores_ipi = main_window.child_window(class_name="TCheckBox", found_index=1)
164
163
  if not checkbox_valores_ipi.get_toggle_state() == 1:
165
164
  checkbox_valores_ipi.click()
166
165
  console.print("Selecionado com sucesso... \n")
167
- await worker_sleep(1)
166
+ await worker_sleep(2)
168
167
 
169
168
 
170
169
  console.print("Gerar valores zerados para Base ST e Icms ST...\n")
@@ -172,7 +171,7 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
172
171
  if not checkbox_gerar_base_ct_icms_st.get_toggle_state() == 1:
173
172
  checkbox_gerar_base_ct_icms_st.click()
174
173
  console.print("Selecionado com sucesso... \n")
175
- await worker_sleep(1)
174
+ await worker_sleep(2)
176
175
 
177
176
  console.print("Todos os campos selecionados com sucesso, seguindo para geração do Sped Fiscal...\n")
178
177
  except Exception as e:
@@ -215,35 +214,45 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
215
214
  retorno=f"Não foi possivel seguir pois não foi fois possivel interagir com o botão de gerar sped na tela Gerar Sped Fiscal,Error: {e}",
216
215
  status=RpaHistoricoStatusEnum.Falha,
217
216
  )
217
+
218
+ console.print(f"Verificando sem possui o pop-up de Registro de Entrada... \n")
219
+ registro_entrada_pop_up_class = await is_window_open_by_class("TMsgBox")
220
+ if registro_entrada_pop_up_class == True:
221
+ console.print(f"Pop-up existe, clicando em Sim... \n")
222
+ app = Application(backend="win32").connect(class_name="TMsgBox", timeout=30)
223
+ main_window = app["TMsgBox"]
224
+ btn_sim = main_window["Sim"]
225
+ if btn_sim.exists():
226
+ try:
227
+ btn_sim.click()
228
+ await worker_sleep(3)
229
+ console.print("O botão Sim, na tela de Registro de Entrada foi clicado com sucesso.", style="green")
230
+ except:
231
+ console.print("Falha ao clicar no botão Sim na tela de Registro de Entrada", style="red")
232
+ else:
233
+ return RpaRetornoProcessoDTO(
234
+ sucesso=False,
235
+ retorno=f"Erro: Botão Sim, na tela de Registro de Entrada",
236
+ status=RpaHistoricoStatusEnum.Falha,
237
+ )
218
238
 
219
239
 
220
240
  max_attempts = 75
221
241
  i = 0
222
242
  while i < max_attempts:
223
243
  aviso_gerando_sped_full_path = "assets\\entrada_notas\\gerando_sped_fiscal.png.png"
224
- sped_gerado_element = False
225
- sped_gerado_ui = False
226
244
  try:
227
245
  aviso_gerando_sped_full_path = pyautogui.locateCenterOnScreen(aviso_gerando_sped_full_path, confidence=0.6)
228
246
  if aviso_gerando_sped_full_path:
229
247
  console.print(f"Gerando o arquivo Sped Fiscal...\n")
248
+ i += 1
249
+ console.print(f"Gerando o arquivo Sped Fiscal, Tentativa {i}/{max_attempts}: Aguarde mais 120 segundos...\n")
250
+ await worker_sleep(120)
230
251
  else:
231
- sped_gerado_ui = True
252
+ break
232
253
  except:
233
254
  console.print(f"Tela de gerando sped não encontrada, verificando via elemento para dupla confirmação...\n")
234
- sped_gerado_ui = True
235
-
236
- aguardar_sped = await is_window_open_by_class("TFrmAguarde", "TFrmAguarde")
237
- if aguardar_sped["IsOpened"] == False:
238
- sped_gerado_element = True
239
-
240
- if sped_gerado_element and sped_gerado_ui:
241
- console.print("Confirmação dupla: Nenhum indicador de SPED em progresso encontrado. Saindo do loop...\n")
242
- break
243
- else:
244
- i += 1
245
- console.print(f"Gerando o arquivo Sped Fiscal, Tentativa {i}/{max_attempts}: Aguarde mais 120 segundos...\n")
246
- await worker_sleep(120)
255
+ break
247
256
 
248
257
 
249
258
  # Verificando se possui pop-up de Aviso
@@ -317,17 +326,24 @@ async def sped_fiscal(task: RpaProcessoEntradaDTO) -> RpaRetornoProcessoDTO:
317
326
  # Verifica se a info 'Arquivo do SPED gerado com sucesso' está na tela
318
327
  await worker_sleep(6)
319
328
  try:
320
- max_attempts = 60
329
+ max_attempts = 30
321
330
  i = 0
322
331
 
323
332
  while i < max_attempts:
324
- information_pop_up = await is_window_open("Informação")
325
- if information_pop_up["IsOpened"] == True:
333
+ information_pop_up_class = await is_window_open_by_class("TMsgBox", "TMsgBox")
334
+ if information_pop_up_class == True:
326
335
  break
327
336
  else:
328
- console.print(f"Aguardando confirmação de nota incluida...\n")
337
+ console.print(f"Aguardando confirmação de sped finalizado...\n")
329
338
  await worker_sleep(5)
330
339
  i += 1
340
+
341
+ if i >= max_attempts:
342
+ return RpaRetornoProcessoDTO(
343
+ sucesso=False,
344
+ retorno="Não foi possivel obter o retorno de conclusão do SPED",
345
+ status=RpaHistoricoStatusEnum.Falha,
346
+ )
331
347
 
332
348
  app = Application().connect(class_name="TMsgBox")
333
349
  main_window = app["Informação"]
@@ -312,6 +312,7 @@ async def login_emsys_fiscal(
312
312
  )
313
313
 
314
314
  filial_cod = task.configEntrada.get("empresa")
315
+ console.print(f'Empresa a ser processada: {filial_cod}')
315
316
 
316
317
  try:
317
318
  console.print("\nEMSys Fiscal inciado com sucesso...", style="bold green")
@@ -329,59 +330,65 @@ async def login_emsys_fiscal(
329
330
  )
330
331
 
331
332
  main_window.set_focus()
332
- await worker_sleep(1)
333
+ await worker_sleep(2)
333
334
  edit_user = main_window.child_window(class_name="TcxCustomInnerTextEdit", found_index=1)
334
- edit_user.set_edit_text(user)
335
+ edit_user.click()
336
+ await worker_sleep(2)
337
+ pyautogui.write(user)
335
338
 
336
339
  await worker_sleep(2)
337
340
  edit_password = main_window.child_window(class_name="TcxCustomInnerTextEdit", found_index=0)
338
- edit_password.set_edit_text(password)
341
+ edit_password.click()
342
+ await worker_sleep(2)
343
+ pyautogui.write(password)
339
344
 
340
345
 
341
346
  await worker_sleep(2)
342
- pyautogui.press("enter")
347
+ edit_password.type_keys("{ENTER}")
343
348
  await worker_sleep(6)
344
349
 
345
- # Seleciona a filial do emsys
346
- console.print("Seleciona a filial do emsys...")
347
- selecao_filial = await find_element_center(
348
- "assets/emsys/selecao_filial.png", (480, 590, 820, 740), 15
349
- )
350
350
 
351
- console.print(f"Selecao filial via imagem: {selecao_filial}")
352
- if selecao_filial == None:
353
- screenshot_path = take_screenshot()
354
- selecao_filial = find_target_position(
355
- screenshot_path, "Grupo", 0, -50, attempts=15
356
- )
357
- console.print(
358
- f"Selecao filial localização de texto: {selecao_filial}"
351
+ max_attempts = 15
352
+ i = 0
353
+ while i < max_attempts:
354
+ selecionar_empresa = await is_window_open_by_class("TFrmSelecaoEmpresa", "TFrmSelecaoEmpresa")
355
+ if selecionar_empresa["IsOpened"] == True:
356
+ console.print("janela para gerar seleção da empresa foi aberta com sucesso...\n")
357
+ break
358
+ else:
359
+ warning_pop_up = await is_window_open("Warning")
360
+ information_pop = await is_window_open("Information")
361
+ if warning_pop_up["IsOpened"] == True or information_pop == True:
362
+ return RpaRetornoProcessoDTO(
363
+ sucesso=False,
364
+ retorno="Pop-up Warning/Information ao tentar realizar login",
365
+ status=RpaHistoricoStatusEnum.Falha,
366
+ )
367
+ else:
368
+ edit_password.type_keys("{ENTER}")
369
+ await worker_sleep(1)
370
+ i = i+1
371
+
372
+ if i >= max_attempts:
373
+ return RpaRetornoProcessoDTO(
374
+ sucesso=False,
375
+ retorno="Erro ao abrir a janela para seleção da empresa, tela não encontrada",
376
+ status=RpaHistoricoStatusEnum.Falha,
359
377
  )
360
- if selecao_filial == None:
361
- selecao_filial = (700, 639)
362
- console.print(f"Selecao filial posição fixa: {selecao_filial}")
363
378
 
364
- pyautogui.click(selecao_filial)
365
- console.print(
366
- f"Escrevendo [{filial_cod}] no campo filial..."
367
- )
379
+ # Seleciona a filial do emsys
380
+ console.print("Seleciona a filial do emsys...")
381
+ app = Application().connect(class_name="TFrmSelecaoEmpresa")
382
+ main_window = app["TFrmSelecaoEmpresa"]
383
+ main_window.set_focus()
368
384
 
369
- pyautogui.write(
370
- task.configEntrada.get("Código da Filial")
371
- )
385
+ edit_user = main_window.child_window(class_name="TEdit", found_index=0)
386
+ edit_user.set_edit_text(filial_cod)
372
387
 
373
- else:
374
- console.print(
375
- f"Escrevendo [{filial_cod}] no campo filial..."
376
- )
377
- type_text_into_field(
378
- task.configEntrada.get("Código da Filial"),
379
- app["Seleção de Empresas"]["Edit"],
380
- True,
381
- "50",
382
- )
383
- pyautogui.press("enter")
388
+ await worker_sleep(2)
389
+ edit_password.type_keys("{ENTER}")
384
390
 
391
+
385
392
  await worker_sleep(5)
386
393
  console.print(
387
394
  f"Verificando a presença de Warning..."
@@ -393,6 +400,29 @@ async def login_emsys_fiscal(
393
400
  retorno=f"Erro: Não foi possível acessar a filial {filial_cod}, esta com o CNPJ bloqueado, por favor verificar",
394
401
  status=RpaHistoricoStatusEnum.Falha,
395
402
  )
403
+
404
+ information_pop_up = await is_window_open_by_class("TMessageForm","TMessageForm")
405
+ if information_pop_up["IsOpened"] == True:
406
+ app_information = Application().connect(
407
+ class_name="TMessageForm"
408
+ )
409
+ main_window_information = app_information["TMessageForm"]
410
+ main_window.set_focus()
411
+ await worker_sleep(2)
412
+ btn_no = main_window_information["&No"]
413
+ if btn_no.exists():
414
+ try:
415
+ btn_no.click()
416
+ await worker_sleep(3)
417
+ console.print("O botão No após selecionar a filiam na seleção de empresa foi clicado com sucesso.", style="green")
418
+ except:
419
+ console.print("Falha ao clicar no botão No após selecionar a filiam na seleção de empresa", style="red")
420
+ else:
421
+ return RpaRetornoProcessoDTO(
422
+ sucesso=False,
423
+ retorno=f"Erro: Botão No, nao existe no pop-up information após a seleção da filial da empresa",
424
+ status=RpaHistoricoStatusEnum.Falha,
425
+ )
396
426
 
397
427
  max_attempts = 10
398
428
  i = 0
@@ -3103,4 +3133,21 @@ async def check_nota_importada(xml_nota: str) -> RpaRetornoProcessoDTO:
3103
3133
  sucesso=False,
3104
3134
  retorno=f"Erro em obter o retorno, Nota inserida com sucesso, erro {e}",
3105
3135
  status=RpaHistoricoStatusEnum.Falha,
3136
+ )
3137
+
3138
+
3139
+ async def kill_all_emsys():
3140
+ try:
3141
+ await kill_process("EMSysFiscal")
3142
+ await kill_process("EMSys")
3143
+ return RpaRetornoProcessoDTO(
3144
+ sucesso=True,
3145
+ retorno=f"EMSys encerrado com sucesso",
3146
+ status=RpaHistoricoStatusEnum.Sucesso,
3147
+ )
3148
+ except Exception as e:
3149
+ return RpaRetornoProcessoDTO(
3150
+ sucesso=False,
3151
+ retorno=f"Erro ao fechar o emsys, erro{e}",
3152
+ status=RpaHistoricoStatusEnum.Falha,
3106
3153
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: worker-automate-hub
3
- Version: 0.4.347
3
+ Version: 0.4.350
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
@@ -44,7 +44,7 @@ worker_automate_hub/tasks/jobs/entrada_de_notas_32.py,sha256=bAzQZD6EP7_eofC0GL4
44
44
  worker_automate_hub/tasks/jobs/entrada_de_notas_33.py,sha256=zwDQzPbqqw1RpjJkF3VSkMnqgrzjFAXLGq7xrFo5D0o,31459
45
45
  worker_automate_hub/tasks/jobs/entrada_de_notas_34.py,sha256=RGYSCUwVIsdM3pRIOhezR0IKlfwfDFy_NPZO1auBXwk,31811
46
46
  worker_automate_hub/tasks/jobs/entrada_de_notas_36.py,sha256=s6FVDaEer86EGM623IswqUTQEdTcusZRCrhB2vdxHf8,22719
47
- worker_automate_hub/tasks/jobs/entrada_de_notas_39.py,sha256=aAYbF2bPdFp6xya6s8sGtktpMs5SKnwikTiEKK49038,30359
47
+ worker_automate_hub/tasks/jobs/entrada_de_notas_39.py,sha256=qehK7bOuDF9krcaA354ByEDHAUt70eyKd8CRNI9U_-0,28388
48
48
  worker_automate_hub/tasks/jobs/entrada_de_notas_500.py,sha256=Pls1zcdhgiU8csrtXGUq9m8rCZm2xmK45dld6N1MKdM,26598
49
49
  worker_automate_hub/tasks/jobs/entrada_de_notas_505.py,sha256=G2EwCtsltWOAVg5iUg0VSp88OBJeI5U4122QfZORyp4,14493
50
50
  worker_automate_hub/tasks/jobs/entrada_de_notas_7139.py,sha256=Fp9hCyXqKY2o7Ijsd_tll5ZcR2KLxxlzdWeyGWnggcI,14187
@@ -54,7 +54,7 @@ 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=eoH7_gK550OXacA0zjWms0CnZ7JysynrTjCn2zz7dcY,19577
57
+ worker_automate_hub/tasks/jobs/sped_fiscal.py,sha256=ZumAOktR22DhkA6Q23mcdEqlWO4VEagoqzWciGPKvbc,20451
58
58
  worker_automate_hub/tasks/jobs/transferencias.py,sha256=keCUlvbPhLrTiZQ9Co_r6IqL5wjYqVGB_-mgvdDe9pM,36080
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
@@ -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=Ec0NblD-0Og4PVI2SRCf8R1ao51mJPSRR-GIxOGnBBs,117295
67
+ worker_automate_hub/utils/util.py,sha256=Z2d_U9S5_0PHSH8tTten3msiuOCjU93-_5MWAJYYp_U,119501
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.347.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
71
- worker_automate_hub-0.4.347.dist-info/METADATA,sha256=k8TW4CxaRNnneZQhA3vstLgm35Lb18UTeZqy1bOnxjI,2895
72
- worker_automate_hub-0.4.347.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
73
- worker_automate_hub-0.4.347.dist-info/RECORD,,
70
+ worker_automate_hub-0.4.350.dist-info/entry_points.txt,sha256=sddyhjx57I08RY8X7UxcTpdoOsWULAWNKN9Xr6pp_Kw,54
71
+ worker_automate_hub-0.4.350.dist-info/METADATA,sha256=lgI2v-Se-gYEYjNn9D1JorSaRGSc2syN0UMECEqIt98,2895
72
+ worker_automate_hub-0.4.350.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
73
+ worker_automate_hub-0.4.350.dist-info/RECORD,,