summaryrefslogtreecommitdiff
path: root/Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs
diff options
context:
space:
mode:
authorLucas Faria Mendes <lucas.fariamo08@gmail.com>2026-03-30 15:29:41 +0000
committerLucas Faria Mendes <lucas.fariamo08@gmail.com>2026-03-30 15:29:41 +0000
commit225aa1499e37faf9d38257caabbadc68d78b427e (patch)
tree102bb7a40c58595348ae9d3c7076201759fe0720 /Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs
parent1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 (diff)
downloadgestor-225aa1499e37faf9d38257caabbadc68d78b427e.tar.gz
gestor-225aa1499e37faf9d38257caabbadc68d78b427e.zip
decompiler.com
Diffstat (limited to 'Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs')
-rw-r--r--Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs209
1 files changed, 209 insertions, 0 deletions
diff --git a/Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs b/Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs
new file mode 100644
index 0000000..3232c05
--- /dev/null
+++ b/Decompiler/Gestor.Application.Servicos/AssinaturaServico.cs
@@ -0,0 +1,209 @@
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using Assinador.Infrastructure.UnitOfWork.Generic;
+using Assinador.Infrastructure.UnitOfWork.Logic;
+using Assinador.Model.Common;
+using Assinador.Model.Domain;
+using Assinador.Model.Generic;
+using Assinador.Modelos;
+using Assinador.Processos;
+using Gestor.Application.Helpers;
+using Gestor.Model.Domain.Common;
+using Gestor.Model.Domain.Generic;
+using Newtonsoft.Json;
+using Sign.Modelos;
+
+namespace Gestor.Application.Servicos;
+
+public class AssinaturaServico
+{
+ internal async void SaveLog(AssinaturaLogAssinador keyValues, UnitOfWork unitOfWork)
+ {
+ if (keyValues == null)
+ {
+ return;
+ }
+ try
+ {
+ unitOfWork.AssinaturaLogRepository.SaveOrUpdate(keyValues);
+ ((GenericUnitOfWork)unitOfWork).Commit();
+ }
+ catch (Exception)
+ {
+ }
+ }
+
+ public static async Task<ParametrosAssinaturaAssinador> BuscarParametrosAssinatura(long id)
+ {
+ return await Task.Run((Func<ParametrosAssinaturaAssinador>)delegate
+ {
+ try
+ {
+ UnitOfWork read = InstanciaAssinador.Read;
+ try
+ {
+ return read.EmpresaRepository.FindByEmpresa(id);
+ }
+ finally
+ {
+ ((IDisposable)read)?.Dispose();
+ }
+ }
+ catch (Exception)
+ {
+ return (ParametrosAssinaturaAssinador)null;
+ }
+ });
+ }
+
+ public async Task<ArquivoParaAssinaturaAssinador> Save(ArquivoParaAssinaturaAssinador arquivo)
+ {
+ return await Task.Run((Func<ArquivoParaAssinaturaAssinador>)delegate
+ {
+ //IL_003d: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0042: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0049: Unknown result type (might be due to invalid IL or missing references)
+ //IL_005a: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0065: Unknown result type (might be due to invalid IL or missing references)
+ //IL_006c: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0071: Unknown result type (might be due to invalid IL or missing references)
+ //IL_007d: Expected O, but got Unknown
+ //IL_0082: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0092: Unknown result type (might be due to invalid IL or missing references)
+ //IL_00a3: Expected O, but got Unknown
+ try
+ {
+ UnitOfWork commited = InstanciaAssinador.Commited;
+ try
+ {
+ arquivo = ((((BaseModel)arquivo).Id == 0L) ? commited.ArquivoParaAssinaturaRepository.SaveOrUpdate(arquivo) : commited.ArquivoParaAssinaturaRepository.Merge(arquivo));
+ AssinaturaLogAssinador keyValues = new AssinaturaLogAssinador
+ {
+ Acao = (Acao)0,
+ EntidadeId = ((BaseModel)arquivo).Id,
+ DataHora = Funcoes.GetNetworkTime(),
+ Descricao = JsonConvert.SerializeObject((object)arquivo, new JsonSerializerSettings
+ {
+ ReferenceLoopHandling = (ReferenceLoopHandling)1
+ }),
+ UsuarioId = ((DomainBase)Recursos.Usuario).Id,
+ Versao = ApplicationHelper.Versao.ToString()
+ };
+ SaveLog(keyValues, commited);
+ ((GenericUnitOfWork)commited).Commit();
+ return arquivo;
+ }
+ finally
+ {
+ ((IDisposable)commited)?.Dispose();
+ }
+ }
+ catch (Exception)
+ {
+ return (ArquivoParaAssinaturaAssinador)null;
+ }
+ });
+ }
+
+ public async Task<ArquivoParaAssinaturaAssinador> Assinar(ArquivoDigital arquivoDigital, ApoliceAssinador apolice)
+ {
+ AggerSigner val = new AggerSigner(AssinadorHelper.Remetente);
+ ArquivoAssinatura val2 = new ArquivoAssinatura
+ {
+ Bytes = arquivoDigital.Arquivo,
+ Nome = arquivoDigital.Descricao + arquivoDigital.Extensao.ToLower()
+ };
+ List<Destinatario> destinatarios = new List<Destinatario>
+ {
+ new Destinatario
+ {
+ Email = apolice.Email,
+ Nome = apolice.Cliente,
+ Documento = apolice.Documento
+ }
+ };
+ val2.Destinatarios = destinatarios;
+ ArquivoCriado val3 = await val.EnviarParaAssinatura(val2);
+ return new ArquivoParaAssinaturaAssinador
+ {
+ AssinaturaId = val3.Id,
+ Chave = val3.Chave,
+ DocumentoId = ((BaseModel)apolice).Id,
+ ClienteId = apolice.ClienteId,
+ IndiceId = apolice.ArquivoId,
+ UrlAssinatura = val3.Url,
+ Enviado = Funcoes.GetNetworkTime(),
+ UsuarioId = ((DomainBase)Recursos.Usuario).Id
+ };
+ }
+
+ public async Task<bool> VerificarAssinado(long id)
+ {
+ return await Task.Run(delegate
+ {
+ //IL_001c: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0022: Invalid comparison between Unknown and I4
+ //IL_0025: Unknown result type (might be due to invalid IL or missing references)
+ //IL_002b: Invalid comparison between Unknown and I4
+ UnitOfWork read = InstanciaAssinador.Read;
+ try
+ {
+ ArquivoParaAssinaturaAssinador val = read.ArquivoParaAssinaturaRepository.FindByIndice(id);
+ return val != null && ((int)val.Status == 1 || (int)val.Status == 2);
+ }
+ finally
+ {
+ ((IDisposable)read)?.Dispose();
+ }
+ });
+ }
+
+ public async Task<bool> VerificarEnviado(long id)
+ {
+ return await Task.Run(delegate
+ {
+ //IL_001c: Unknown result type (might be due to invalid IL or missing references)
+ //IL_0022: Invalid comparison between Unknown and I4
+ UnitOfWork read = InstanciaAssinador.Read;
+ try
+ {
+ ArquivoParaAssinaturaAssinador val = read.ArquivoParaAssinaturaRepository.FindByIndice(id);
+ return val != null && (int)val.Status == 0;
+ }
+ finally
+ {
+ ((IDisposable)read)?.Dispose();
+ }
+ });
+ }
+
+ public async Task<ArquivoParaAssinaturaAssinador> Reenviar(long indice)
+ {
+ AggerSigner val = new AggerSigner(AssinadorHelper.Remetente);
+ UnitOfWork unitOfWork = InstanciaAssinador.Commited;
+ try
+ {
+ ArquivoParaAssinaturaAssinador assinatura = unitOfWork.ArquivoParaAssinaturaRepository.FindByIndice(indice);
+ await val.ReenviarParaAssinatura(new List<int> { assinatura.AssinaturaId }, (string)null);
+ AssinaturaLogAssinador keyValues = new AssinaturaLogAssinador
+ {
+ Acao = (Acao)1,
+ EntidadeId = ((BaseModel)assinatura).Id,
+ DataHora = Funcoes.GetNetworkTime(),
+ Descricao = JsonConvert.SerializeObject((object)assinatura, new JsonSerializerSettings
+ {
+ ReferenceLoopHandling = (ReferenceLoopHandling)1
+ }),
+ UsuarioId = ((DomainBase)Recursos.Usuario).Id,
+ Versao = ApplicationHelper.Versao.ToString()
+ };
+ SaveLog(keyValues, unitOfWork);
+ return assinatura;
+ }
+ finally
+ {
+ ((IDisposable)unitOfWork)?.Dispose();
+ }
+ }
+}