worker-automate-hub 0.5.16__py3-none-any.whl → 0.5.17__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of worker-automate-hub might be problematic. Click here for more details.

Files changed (35) hide show
  1. worker_automate_hub/tasks/jobs/coleta_dje_process.py +12 -0
  2. worker_automate_hub/tasks/jobs/conexao_rdp.py +4 -4
  3. worker_automate_hub/tasks/jobs/descartes.py +21 -18
  4. worker_automate_hub/tasks/jobs/ecac_estadual_go.py +8 -6
  5. worker_automate_hub/tasks/jobs/ecac_estadual_main.py +4 -2
  6. worker_automate_hub/tasks/jobs/ecac_estadual_mt.py +8 -6
  7. worker_automate_hub/tasks/jobs/ecac_estadual_sc.py +5 -3
  8. worker_automate_hub/tasks/jobs/ecac_estadual_sp.py +9 -7
  9. worker_automate_hub/tasks/jobs/ecac_federal.py +11 -8
  10. worker_automate_hub/tasks/jobs/entrada_de_notas_15.py +14 -12
  11. worker_automate_hub/tasks/jobs/entrada_de_notas_16.py +19 -11
  12. worker_automate_hub/tasks/jobs/entrada_de_notas_207.py +23 -11
  13. worker_automate_hub/tasks/jobs/entrada_de_notas_32.py +63 -32
  14. worker_automate_hub/tasks/jobs/entrada_de_notas_33.py +56 -28
  15. worker_automate_hub/tasks/jobs/entrada_de_notas_34.py +54 -38
  16. worker_automate_hub/tasks/jobs/entrada_de_notas_36.py +33 -16
  17. worker_automate_hub/tasks/jobs/entrada_de_notas_39.py +53 -28
  18. worker_automate_hub/tasks/jobs/entrada_de_notas_500.py +40 -14
  19. worker_automate_hub/tasks/jobs/entrada_de_notas_505.py +28 -14
  20. worker_automate_hub/tasks/jobs/entrada_de_notas_7139.py +18 -12
  21. worker_automate_hub/tasks/jobs/entrada_de_notas_9.py +40 -13
  22. worker_automate_hub/tasks/jobs/exemplo_processo.py +3 -0
  23. worker_automate_hub/tasks/jobs/fechar_conexao_rdp.py +3 -3
  24. worker_automate_hub/tasks/jobs/fidc_gerar_nosso_numero.py +9 -7
  25. worker_automate_hub/tasks/jobs/login_emsys.py +2 -1
  26. worker_automate_hub/tasks/jobs/playground.py +4 -0
  27. worker_automate_hub/tasks/jobs/sped_fiscal.py +24 -0
  28. worker_automate_hub/tasks/jobs/transferencias.py +28 -26
  29. worker_automate_hub/tasks/task_executor.py +3 -0
  30. worker_automate_hub/utils/util.py +148 -141
  31. worker_automate_hub/utils/utils_nfe_entrada.py +10 -0
  32. {worker_automate_hub-0.5.16.dist-info → worker_automate_hub-0.5.17.dist-info}/METADATA +1 -1
  33. {worker_automate_hub-0.5.16.dist-info → worker_automate_hub-0.5.17.dist-info}/RECORD +35 -35
  34. {worker_automate_hub-0.5.16.dist-info → worker_automate_hub-0.5.17.dist-info}/WHEEL +0 -0
  35. {worker_automate_hub-0.5.16.dist-info → worker_automate_hub-0.5.17.dist-info}/entry_points.txt +0 -0
@@ -23,6 +23,8 @@ from worker_automate_hub.api.client import (
23
23
  from worker_automate_hub.models.dto.rpa_historico_request_dto import (
24
24
  RpaHistoricoStatusEnum,
25
25
  RpaRetornoProcessoDTO,
26
+ RpaTagDTO,
27
+ RpaTagEnum,
26
28
  )
27
29
  from worker_automate_hub.models.dto.rpa_processo_entrada_dto import (
28
30
  RpaProcessoEntradaDTO,
@@ -117,6 +119,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
117
119
  sucesso=False,
118
120
  retorno=document_type.retorno,
119
121
  status=RpaHistoricoStatusEnum.Falha,
122
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
120
123
  )
121
124
 
122
125
  await worker_sleep(4)
@@ -130,6 +133,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
130
133
  sucesso=False,
131
134
  retorno=imported_nfe.retorno,
132
135
  status=RpaHistoricoStatusEnum.Falha,
136
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
133
137
  )
134
138
 
135
139
  await worker_sleep(5)
@@ -148,6 +152,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
148
152
  sucesso=False,
149
153
  retorno=warning_work.retorno,
150
154
  status=RpaHistoricoStatusEnum.Falha,
155
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
151
156
  )
152
157
 
153
158
  # VERIFICANDO A EXISTENCIA DE ERRO
@@ -187,6 +192,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
187
192
  sucesso=False,
188
193
  retorno=f"Erro mapeado, CFOP diferente de inicio com 540 ou 510, necessario ação manual ou ajuste no robo.",
189
194
  status=RpaHistoricoStatusEnum.Falha,
195
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
190
196
  )
191
197
 
192
198
  await worker_sleep(3)
@@ -214,6 +220,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
214
220
  sucesso=False,
215
221
  retorno=f"Erro ao iterar itens de almoxarifado: {e}",
216
222
  status=RpaHistoricoStatusEnum.Falha,
223
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
217
224
  )
218
225
 
219
226
  await worker_sleep(1)
@@ -229,6 +236,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
229
236
  sucesso=False,
230
237
  retorno=f"Fornecedor não mapeado para andamento no processo, forneceodr: {fornecedor}",
231
238
  status=RpaHistoricoStatusEnum.Falha,
239
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
232
240
  )
233
241
 
234
242
  tipo_despesa_work = await tipo_despesa(despesa)
@@ -239,6 +247,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
239
247
  sucesso=False,
240
248
  retorno=tipo_despesa_work.retorno,
241
249
  status=RpaHistoricoStatusEnum.Falha,
250
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
242
251
  )
243
252
 
244
253
  # INTERAGINDO COM O CHECKBOX ZERAR ICMS
@@ -250,6 +259,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
250
259
  sucesso=False,
251
260
  retorno=checkbox_zerar_icms.retorno,
252
261
  status=RpaHistoricoStatusEnum.Falha,
262
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
253
263
  )
254
264
 
255
265
  # INTERAGINDO COM O CAMPO DE CODIGO DO ICMS
@@ -261,6 +271,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
261
271
  sucesso=False,
262
272
  retorno=cod_icms_work.retorno,
263
273
  status=RpaHistoricoStatusEnum.Falha,
274
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
264
275
  )
265
276
 
266
277
  # INTERAGINDO COM O CAMPO Manter Natureza de Operação selecionada
@@ -321,24 +332,28 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
321
332
  sucesso=False,
322
333
  retorno="Número máximo de tentativas atingido, Não foi possivel finalizar os trabalhos na tela de Informações para importação da Nota Fiscal Eletrônica",
323
334
  status=RpaHistoricoStatusEnum.Falha,
335
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
324
336
  )
325
337
 
326
338
  await worker_sleep(10)
327
339
 
328
- console.print(
329
- "Verificando a existencia de POP-UP de Itens não localizados ou NCM ...\n"
330
- )
331
- itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
332
- if itens_by_supplier["IsOpened"] == True:
333
- itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
334
- if itens_by_supplier_work["window"] == "NCM" or itens_by_supplier_work["window"] == "MultiplasRef":
335
- console.log(itens_by_supplier_work["retorno"], style="bold green")
336
- else:
337
- return RpaRetornoProcessoDTO(
338
- sucesso=False,
339
- retorno=itens_by_supplier_work["retorno"],
340
- status=RpaHistoricoStatusEnum.Falha,
341
- )
340
+ try:
341
+ console.print("Verificando itens não localizados ou NCM...\n")
342
+ itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
343
+
344
+ if itens_by_supplier["IsOpened"] == True:
345
+ itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
346
+
347
+ if not itens_by_supplier_work.sucesso:
348
+ return itens_by_supplier_work
349
+
350
+ except Exception as error:
351
+ return RpaRetornoProcessoDTO(
352
+ sucesso=False,
353
+ retorno=f"Falha ao verificar a existência de POP-UP de itens não localizados: {error}",
354
+ status=RpaHistoricoStatusEnum.Falha,
355
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
356
+ )
342
357
 
343
358
  await worker_sleep(3)
344
359
  console.print(f"Trabalhando com itens com multiplas referencias.\n")
@@ -424,6 +439,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
424
439
  sucesso=False,
425
440
  retorno="Quantidade de tentativa atingida (3), não foi possivel capturar o item da nota com multiplas referencias para andamento no processo",
426
441
  status=RpaHistoricoStatusEnum.Falha,
442
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
427
443
  )
428
444
 
429
445
  console.print(
@@ -519,6 +535,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
519
535
  sucesso=False,
520
536
  retorno=f"Não foi possivel encontrar o item mais proximo ao item da nota com multiplas referencias {itens_nao_semelhantes}",
521
537
  status=RpaHistoricoStatusEnum.Falha,
538
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
522
539
  )
523
540
 
524
541
  # VERIFICANDO A EXISTENCIA DE ERRO
@@ -529,22 +546,26 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
529
546
  sucesso=False,
530
547
  retorno=error_work.retorno,
531
548
  status=RpaHistoricoStatusEnum.Falha,
549
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
532
550
  )
533
551
 
534
- console.print(
535
- "Verificando a existencia de POP-UP de Itens não localizados ou NCM ...\n"
536
- )
537
- itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
538
- if itens_by_supplier["IsOpened"] == True:
539
- itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
540
- if itens_by_supplier_work["window"] == "NCM":
541
- console.log(itens_by_supplier_work["retorno"], style="bold green")
542
- else:
543
- return RpaRetornoProcessoDTO(
544
- sucesso=False,
545
- retorno=f"{itens_by_supplier_work['retorno']}",
546
- status=RpaHistoricoStatusEnum.Falha,
547
- )
552
+ try:
553
+ console.print("Verificando itens não localizados ou NCM...\n")
554
+ itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
555
+
556
+ if itens_by_supplier["IsOpened"] == True:
557
+ itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
558
+
559
+ if not itens_by_supplier_work.sucesso:
560
+ return itens_by_supplier_work
561
+
562
+ except Exception as error:
563
+ return RpaRetornoProcessoDTO(
564
+ sucesso=False,
565
+ retorno=f"Falha ao verificar a existência de POP-UP de itens não localizados: {error}",
566
+ status=RpaHistoricoStatusEnum.Falha,
567
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
568
+ )
548
569
 
549
570
  await worker_sleep(2)
550
571
  console.print("Navegando pela Janela de Nota Fiscal de Entrada...\n")
@@ -621,6 +642,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
621
642
  sucesso=False,
622
643
  retorno=f"A soma dos pagamentos não bate com o valor da nota.",
623
644
  status=RpaHistoricoStatusEnum.Falha,
645
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
624
646
  )
625
647
  else:
626
648
  console.print(
@@ -654,6 +676,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
654
676
  sucesso=False,
655
677
  retorno=f"Número máximo de tentativas atingido. A tela para Rateio da Despesa não foi encontrada.",
656
678
  status=RpaHistoricoStatusEnum.Falha,
679
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
657
680
  )
658
681
 
659
682
  despesa_rateio_work = await rateio_despesa(filialEmpresaOrigem)
@@ -664,6 +687,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
664
687
  sucesso=False,
665
688
  retorno=despesa_rateio_work.retorno,
666
689
  status=RpaHistoricoStatusEnum.Falha,
690
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
667
691
  )
668
692
 
669
693
  # Verifica se a info 'Nota fiscal incluida' está na tela
@@ -711,12 +735,14 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
711
735
  sucesso=False,
712
736
  retorno=f"Filial: {filialEmpresaOrigem} está com o livro fechado ou encerrado, verificar com o setor fiscal",
713
737
  status=RpaHistoricoStatusEnum.Falha,
738
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
714
739
  )
715
740
  else:
716
741
  return RpaRetornoProcessoDTO(
717
742
  sucesso=False,
718
743
  retorno=f"Warning não mapeado para seguimento do robo, mensagem: {captured_text}",
719
744
  status=RpaHistoricoStatusEnum.Falha,
745
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
720
746
  )
721
747
 
722
748
  await worker_sleep(3)
@@ -739,6 +765,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
739
765
  sucesso=False,
740
766
  retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
741
767
  status=RpaHistoricoStatusEnum.Falha,
768
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
742
769
  )
743
770
  else:
744
771
  console.print("Erro ao lançar nota", style="bold red")
@@ -746,6 +773,7 @@ async def entrada_de_notas_33(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
746
773
  sucesso=False,
747
774
  retorno=f"Erro ao lançar nota, erro: {nf_imported.retorno}",
748
775
  status=RpaHistoricoStatusEnum.Falha,
776
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
749
777
  )
750
778
 
751
779
  except Exception as ex:
@@ -23,6 +23,8 @@ from worker_automate_hub.api.client import (
23
23
  from worker_automate_hub.models.dto.rpa_historico_request_dto import (
24
24
  RpaHistoricoStatusEnum,
25
25
  RpaRetornoProcessoDTO,
26
+ RpaTagDTO,
27
+ RpaTagEnum,
26
28
  )
27
29
  from worker_automate_hub.models.dto.rpa_processo_entrada_dto import (
28
30
  RpaProcessoEntradaDTO,
@@ -117,6 +119,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
117
119
  sucesso=False,
118
120
  retorno=document_type.retorno,
119
121
  status=RpaHistoricoStatusEnum.Falha,
122
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
120
123
  )
121
124
 
122
125
  await worker_sleep(4)
@@ -130,6 +133,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
130
133
  sucesso=False,
131
134
  retorno=imported_nfe.retorno,
132
135
  status=RpaHistoricoStatusEnum.Falha,
136
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
133
137
  )
134
138
 
135
139
  await worker_sleep(5)
@@ -148,6 +152,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
148
152
  sucesso=False,
149
153
  retorno=warning_work.retorno,
150
154
  status=RpaHistoricoStatusEnum.Falha,
155
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
151
156
  )
152
157
 
153
158
  # VERIFICANDO A EXISTENCIA DE ERRO
@@ -187,6 +192,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
187
192
  sucesso=False,
188
193
  retorno=f"Erro mapeado, CFOP diferente de inicio com 540 ou 510, necessario ação manual ou ajuste no robo.",
189
194
  status=RpaHistoricoStatusEnum.Falha,
195
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
190
196
  )
191
197
 
192
198
  await worker_sleep(3)
@@ -214,6 +220,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
214
220
  sucesso=False,
215
221
  retorno=f"Erro ao iterar itens de almoxarifado: {e}",
216
222
  status=RpaHistoricoStatusEnum.Falha,
223
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
217
224
  )
218
225
 
219
226
  await worker_sleep(1)
@@ -229,6 +236,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
229
236
  sucesso=False,
230
237
  retorno=f"Fornecedor não mapeado para andamento no processo, forneceodr: {fornecedor}",
231
238
  status=RpaHistoricoStatusEnum.Falha,
239
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
232
240
  )
233
241
 
234
242
  tipo_despesa_work = await tipo_despesa(despesa)
@@ -239,6 +247,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
239
247
  sucesso=False,
240
248
  retorno=tipo_despesa_work.retorno,
241
249
  status=RpaHistoricoStatusEnum.Falha,
250
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
242
251
  )
243
252
 
244
253
  # INTERAGINDO COM O CHECKBOX ZERAR ICMS
@@ -249,7 +258,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
249
258
  return RpaRetornoProcessoDTO(
250
259
  sucesso=False,
251
260
  retorno=checkbox_zerar_icms.retorno,
252
- status=RpaHistoricoStatusEnum.Falha,
261
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
253
262
  )
254
263
 
255
264
  # INTERAGINDO COM O CAMPO DE CODIGO DO ICMS
@@ -260,7 +269,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
260
269
  return RpaRetornoProcessoDTO(
261
270
  sucesso=False,
262
271
  retorno=cod_icms_work.retorno,
263
- status=RpaHistoricoStatusEnum.Falha,
272
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
264
273
  )
265
274
 
266
275
  # INTERAGINDO COM O CAMPO Manter Natureza de Operação selecionada
@@ -320,25 +329,27 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
320
329
  return RpaRetornoProcessoDTO(
321
330
  sucesso=False,
322
331
  retorno="Número máximo de tentativas atingido, Não foi possivel finalizar os trabalhos na tela de Informações para importação da Nota Fiscal Eletrônica",
323
- status=RpaHistoricoStatusEnum.Falha,
332
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
324
333
  )
325
334
 
326
335
  await worker_sleep(6)
327
336
 
328
- console.print(
329
- "Verificando a existencia de POP-UP de Itens não localizados ou NCM ...\n"
330
- )
331
- itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
332
- if itens_by_supplier["IsOpened"] == True:
333
- itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
334
- if itens_by_supplier_work["window"] == "NCM" or itens_by_supplier_work["window"] == "MultiplasRef":
335
- console.log(itens_by_supplier_work["retorno"], style="bold green")
336
- else:
337
- return RpaRetornoProcessoDTO(
338
- sucesso=False,
339
- retorno=itens_by_supplier_work["retorno"],
340
- status=RpaHistoricoStatusEnum.Falha,
341
- )
337
+ try:
338
+ console.print("Verificando itens não localizados ou NCM...\n")
339
+ itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
340
+
341
+ if itens_by_supplier["IsOpened"] == True:
342
+ itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
343
+
344
+ if not itens_by_supplier_work.sucesso:
345
+ return itens_by_supplier_work
346
+
347
+ except Exception as error:
348
+ return RpaRetornoProcessoDTO(
349
+ sucesso=False,
350
+ retorno=f"Falha ao verificar a existência de POP-UP de itens não localizados: {error}",
351
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
352
+ )
342
353
 
343
354
  await worker_sleep(3)
344
355
  console.print(f"Trabalhando com itens com multiplas referencias.\n")
@@ -431,7 +442,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
431
442
  return RpaRetornoProcessoDTO(
432
443
  sucesso=False,
433
444
  retorno="Quantidade de tentativa atingida (3), não foi possivel capturar o item da nota com multiplas referencias para andamento no processo",
434
- status=RpaHistoricoStatusEnum.Falha,
445
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
435
446
  )
436
447
  console.print(
437
448
  f"Interagindo com os multiplos itens e detectando qual ira ser selecionado para andamento no processo... \n"
@@ -525,7 +536,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
525
536
  return RpaRetornoProcessoDTO(
526
537
  sucesso=False,
527
538
  retorno=f"Não foi possivel encontrar o item mais proximo ao item da nota com multiplas referencias {itens_nao_semelhantes}",
528
- status=RpaHistoricoStatusEnum.Falha,
539
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
529
540
  )
530
541
 
531
542
  # VERIFICANDO A EXISTENCIA DE ERRO
@@ -535,23 +546,25 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
535
546
  return RpaRetornoProcessoDTO(
536
547
  sucesso=False,
537
548
  retorno=error_work.retorno,
538
- status=RpaHistoricoStatusEnum.Falha,
549
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
539
550
  )
540
551
 
541
- console.print(
542
- "Verificando a existencia de POP-UP de Itens não localizados ou NCM ...\n"
543
- )
544
- itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
545
- if itens_by_supplier["IsOpened"] == True:
546
- itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
547
- if itens_by_supplier_work["window"] == "NCM":
548
- console.log(itens_by_supplier_work["retorno"], style="bold green")
549
- else:
550
- return RpaRetornoProcessoDTO(
551
- sucesso=False,
552
- retorno=f"{itens_by_supplier_work['retorno']}",
553
- status=RpaHistoricoStatusEnum.Falha,
554
- )
552
+ try:
553
+ console.print("Verificando itens não localizados ou NCM...\n")
554
+ itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
555
+
556
+ if itens_by_supplier["IsOpened"] == True:
557
+ itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
558
+
559
+ if not itens_by_supplier_work.sucesso:
560
+ return itens_by_supplier_work
561
+
562
+ except Exception as error:
563
+ return RpaRetornoProcessoDTO(
564
+ sucesso=False,
565
+ retorno=f"Falha ao verificar a existência de POP-UP de itens não localizados: {error}",
566
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
567
+ )
555
568
 
556
569
  await worker_sleep(2)
557
570
  console.print("Navegando pela Janela de Nota Fiscal de Entrada...\n")
@@ -627,7 +640,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
627
640
  return RpaRetornoProcessoDTO(
628
641
  sucesso=False,
629
642
  retorno=f"A soma dos pagamentos não bate com o valor da nota.",
630
- status=RpaHistoricoStatusEnum.Falha,
643
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)],
631
644
  )
632
645
  else:
633
646
  console.print(
@@ -660,7 +673,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
660
673
  return RpaRetornoProcessoDTO(
661
674
  sucesso=False,
662
675
  retorno=f"Número máximo de tentativas atingido. A tela para Rateio da Despesa não foi encontrada.",
663
- status=RpaHistoricoStatusEnum.Falha,
676
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
664
677
  )
665
678
 
666
679
  despesa_rateio_work = await rateio_despesa(filialEmpresaOrigem)
@@ -670,7 +683,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
670
683
  return RpaRetornoProcessoDTO(
671
684
  sucesso=False,
672
685
  retorno=despesa_rateio_work.retorno,
673
- status=RpaHistoricoStatusEnum.Falha,
686
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)],
674
687
  )
675
688
 
676
689
  # Verifica se a info 'Nota fiscal incluida' está na tela
@@ -717,13 +730,14 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
717
730
  return RpaRetornoProcessoDTO(
718
731
  sucesso=False,
719
732
  retorno=f"Filial: {filialEmpresaOrigem} está com o livro fechado ou encerrado, verificar com o setor fiscal",
720
- status=RpaHistoricoStatusEnum.Falha,
733
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)],
721
734
  )
722
735
  else:
723
736
  return RpaRetornoProcessoDTO(
724
737
  sucesso=False,
725
738
  retorno=f"Warning não mapeado para seguimento do robo, mensagem: {captured_text}",
726
739
  status=RpaHistoricoStatusEnum.Falha,
740
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
727
741
  )
728
742
 
729
743
  await worker_sleep(3)
@@ -746,6 +760,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
746
760
  sucesso=False,
747
761
  retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
748
762
  status=RpaHistoricoStatusEnum.Falha,
763
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
749
764
  )
750
765
  else:
751
766
  console.print("Erro ao lançar nota", style="bold red")
@@ -753,6 +768,7 @@ async def entrada_de_notas_34(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
753
768
  sucesso=False,
754
769
  retorno=f"Erro ao lançar nota, erro: {nf_imported.retorno}",
755
770
  status=RpaHistoricoStatusEnum.Falha,
771
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
756
772
  )
757
773
 
758
774
  except Exception as ex:
@@ -23,6 +23,8 @@ from worker_automate_hub.api.client import (
23
23
  from worker_automate_hub.models.dto.rpa_historico_request_dto import (
24
24
  RpaHistoricoStatusEnum,
25
25
  RpaRetornoProcessoDTO,
26
+ RpaTagDTO,
27
+ RpaTagEnum,
26
28
  )
27
29
  from worker_automate_hub.models.dto.rpa_processo_entrada_dto import (
28
30
  RpaProcessoEntradaDTO,
@@ -114,6 +116,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
114
116
  sucesso=False,
115
117
  retorno=document_type.retorno,
116
118
  status=RpaHistoricoStatusEnum.Falha,
119
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
117
120
  )
118
121
 
119
122
  await worker_sleep(4)
@@ -127,6 +130,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
127
130
  sucesso=False,
128
131
  retorno=imported_nfe.retorno,
129
132
  status=RpaHistoricoStatusEnum.Falha,
133
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
130
134
  )
131
135
 
132
136
  await worker_sleep(5)
@@ -145,6 +149,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
145
149
  sucesso=False,
146
150
  retorno=warning_work.retorno,
147
151
  status=RpaHistoricoStatusEnum.Falha,
152
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
148
153
  )
149
154
 
150
155
  # VERIFICANDO A EXISTENCIA DE ERRO
@@ -194,6 +199,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
194
199
  sucesso=False,
195
200
  retorno=f"Erro mapeado, CFOP diferente de inicio com 540 ou 510, necessario ação manual ou ajuste no robo.",
196
201
  status=RpaHistoricoStatusEnum.Falha,
202
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
197
203
  )
198
204
 
199
205
  # INTERAGINDO COM O CAMPO ALMOXARIFADO
@@ -219,6 +225,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
219
225
  sucesso=False,
220
226
  retorno=f"Erro ao iterar itens de almoxarifado: {e}",
221
227
  status=RpaHistoricoStatusEnum.Falha,
228
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
222
229
  )
223
230
 
224
231
  await worker_sleep(2)
@@ -265,6 +272,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
265
272
  sucesso=False,
266
273
  retorno="Número máximo de tentativas atingido, Não foi possivel finalizar os trabalhos na tela de Informações para importação da Nota Fiscal Eletrônica",
267
274
  status=RpaHistoricoStatusEnum.Falha,
275
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
268
276
  )
269
277
 
270
278
 
@@ -276,25 +284,26 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
276
284
  sucesso=False,
277
285
  retorno=waiting_for_delay.retorno,
278
286
  status=RpaHistoricoStatusEnum.Falha,
287
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
279
288
  )
280
289
 
281
- console.print(
282
- "Verificando a existencia de POP-UP de Itens não localizados ou NCM ...\n"
283
- )
284
- itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
285
- if itens_by_supplier["IsOpened"] == True:
286
- console.print(
287
- "Tela de POP-UP de Itens não localizados ou NCM encontrado ...\n"
290
+ try:
291
+ console.print("Verificando itens não localizados ou NCM...\n")
292
+ itens_by_supplier = await is_window_open_by_class("TFrmAguarde", "TMessageForm")
293
+
294
+ if itens_by_supplier["IsOpened"] == True:
295
+ itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
296
+
297
+ if not itens_by_supplier_work.sucesso:
298
+ return itens_by_supplier_work
299
+
300
+ except Exception as error:
301
+ return RpaRetornoProcessoDTO(
302
+ sucesso=False,
303
+ retorno=f"Falha ao verificar a existência de POP-UP de itens não localizados: {error}",
304
+ status=RpaHistoricoStatusEnum.Falha,
305
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
288
306
  )
289
- itens_by_supplier_work = await itens_not_found_supplier(nota.get("nfe"))
290
- if itens_by_supplier_work["window"] == "NCM" or itens_by_supplier_work["window"] == "MultiplasRef":
291
- console.log(itens_by_supplier_work["retorno"], style="bold green")
292
- else:
293
- return RpaRetornoProcessoDTO(
294
- sucesso=False,
295
- retorno=itens_by_supplier_work["retorno"],
296
- status=RpaHistoricoStatusEnum.Falha,
297
- )
298
307
 
299
308
  await worker_sleep(3)
300
309
 
@@ -306,6 +315,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
306
315
  sucesso=False,
307
316
  retorno=error_work.retorno,
308
317
  status=RpaHistoricoStatusEnum.Falha,
318
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
309
319
  )
310
320
 
311
321
  # # Trabalhando com o NOP Nota
@@ -320,6 +330,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
320
330
  # sucesso=False,
321
331
  # retorno=document_type.retorno,
322
332
  # status=RpaHistoricoStatusEnum.Falha,
333
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
323
334
  # )
324
335
 
325
336
 
@@ -409,6 +420,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
409
420
  sucesso=False,
410
421
  retorno=f"Erro ao adicionar o pagamento, valor informado {valores_informado_text}.",
411
422
  status=RpaHistoricoStatusEnum.Falha,
423
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
412
424
  )
413
425
  console.print(f"Processo de incluir pagamento realizado com sucesso... \n")
414
426
 
@@ -484,18 +496,21 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
484
496
  sucesso=False,
485
497
  retorno=f"Filial: {filialEmpresaOrigem} está com o livro fechado ou encerrado, verificar com o setor fiscal",
486
498
  status=RpaHistoricoStatusEnum.Falha,
499
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Negocio)]
487
500
  )
488
501
  elif 'informe o tipo de' in captured_text.lower():
489
502
  return RpaRetornoProcessoDTO(
490
503
  sucesso=False,
491
504
  retorno=f"Mensagem do Warning, Informe o tipo cobraça ",
492
505
  status=RpaHistoricoStatusEnum.Falha,
506
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
493
507
  )
494
508
  else:
495
509
  return RpaRetornoProcessoDTO(
496
510
  sucesso=False,
497
511
  retorno=f"Warning não mapeado para seguimento do robo, mensagem: {captured_text}",
498
512
  status=RpaHistoricoStatusEnum.Falha,
513
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
499
514
  )
500
515
 
501
516
 
@@ -530,6 +545,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
530
545
  sucesso=False,
531
546
  retorno=f"Pop-up nota incluida encontrada, porém nota não encontrada no EMSys - Reprocessar",
532
547
  status=RpaHistoricoStatusEnum.Falha,
548
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
533
549
  )
534
550
  else:
535
551
  console.print("Erro ao lançar nota", style="bold red")
@@ -537,6 +553,7 @@ async def entrada_de_notas_36(task: RpaProcessoEntradaDTO) -> RpaRetornoProcesso
537
553
  sucesso=False,
538
554
  retorno=f"Erro ao lançar nota, erro: {nf_imported.retorno}",
539
555
  status=RpaHistoricoStatusEnum.Falha,
556
+ tags=[RpaTagDTO(descricao=RpaTagEnum.Tecnico)]
540
557
  )
541
558
 
542
559
  except Exception as ex: