diff options
Diffstat (limited to 'Decompiler/Gestor.Application.Servicos.Seguros/PerfilServico.cs')
| -rw-r--r-- | Decompiler/Gestor.Application.Servicos.Seguros/PerfilServico.cs | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/Decompiler/Gestor.Application.Servicos.Seguros/PerfilServico.cs b/Decompiler/Gestor.Application.Servicos.Seguros/PerfilServico.cs new file mode 100644 index 0000000..b7955f7 --- /dev/null +++ b/Decompiler/Gestor.Application.Servicos.Seguros/PerfilServico.cs @@ -0,0 +1,167 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Net.Sockets; +using System.Threading.Tasks; +using Gestor.Application.Helpers; +using Gestor.Application.Servicos.Generic; +using Gestor.Application.ViewModels; +using Gestor.Common.Validation; +using Gestor.Infrastructure.UnitOfWork.Generic; +using Gestor.Infrastructure.UnitOfWork.Logic; +using Gestor.Model.API; +using Gestor.Model.Common; +using Gestor.Model.Domain.Common; +using Gestor.Model.Domain.Generic; +using Gestor.Model.Domain.Seguros; +using Newtonsoft.Json; + +namespace Gestor.Application.Servicos.Seguros; + +internal class PerfilServico : BaseServico +{ + internal async Task<List<Perfil>> BuscarPerfis(long controleId) + { + int tries = 3; + return await Task.Run(delegate + { + while (tries > 0) + { + try + { + UnitOfWork read = Instancia.Read; + try + { + return read.PerfilRepository.FindByControleId(controleId); + } + finally + { + ((IDisposable)read)?.Dispose(); + } + } + catch (Exception e) + { + tries = Registrar(e, (TipoErro)46, tries, controleId); + } + } + return new List<Perfil>(); + }); + } + + public async Task<Perfil> Save(Perfil perfil) + { + int tries = 3; + base.Sucesso = true; + Perfil perfilOriginal = perfil; + return await Task.Run((Func<Perfil>)delegate + { + //IL_0028: Unknown result type (might be due to invalid IL or missing references) + //IL_006b: Unknown result type (might be due to invalid IL or missing references) + //IL_0070: 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_0077: Unknown result type (might be due to invalid IL or missing references) + //IL_0082: Unknown result type (might be due to invalid IL or missing references) + //IL_008d: Unknown result type (might be due to invalid IL or missing references) + //IL_0094: Unknown result type (might be due to invalid IL or missing references) + //IL_0099: Unknown result type (might be due to invalid IL or missing references) + //IL_00a5: Expected O, but got Unknown + //IL_00aa: Unknown result type (might be due to invalid IL or missing references) + //IL_00bb: Unknown result type (might be due to invalid IL or missing references) + //IL_00c3: Unknown result type (might be due to invalid IL or missing references) + //IL_00ce: Unknown result type (might be due to invalid IL or missing references) + //IL_00d9: Unknown result type (might be due to invalid IL or missing references) + //IL_00e4: Unknown result type (might be due to invalid IL or missing references) + //IL_0121: Expected O, but got Unknown + while (tries > 0) + { + perfil = perfilOriginal; + try + { + UnitOfWork commited = Instancia.Commited; + try + { + TipoAcao acao = (TipoAcao)(((DomainBase)perfil).Id != 0L); + perfil = ((((DomainBase)perfil).Id == 0L) ? commited.PerfilRepository.SaveOrUpdate(perfil) : commited.PerfilRepository.Merge(perfil)); + IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName()); + RegistroLog keyValues = new RegistroLog + { + Acao = acao, + Usuario = Recursos.Usuario, + DataHora = Funcoes.GetNetworkTime(), + Descricao = JsonConvert.SerializeObject((object)perfil, new JsonSerializerSettings + { + ReferenceLoopHandling = (ReferenceLoopHandling)1 + }), + EntidadeId = ((DomainBase)perfil).Id, + Tela = (TipoTela)32, + Versao = LoginViewModel.VersaoAtual, + NomeMaquina = Environment.MachineName, + UsuarioMaquina = Environment.UserName, + Ip = hostEntry.AddressList.FirstOrDefault((IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork)?.ToString() + }; + SaveLog(keyValues, commited); + ((GenericUnitOfWork)commited).Commit(); + return perfil; + } + finally + { + ((IDisposable)commited)?.Dispose(); + } + } + catch (Exception e) + { + tries = Registrar(e, (TipoErro)212, tries, perfil); + } + } + return perfilOriginal; + }); + } + + public async Task<bool> Delete(Perfil perfil) + { + int tries = 3; + return await Task.Run(delegate + { + //IL_0033: Unknown result type (might be due to invalid IL or missing references) + //IL_003a: Expected O, but got Unknown + while (tries > 0) + { + try + { + UnitOfWork commited = Instancia.Commited; + try + { + commited.PerfilRepository.Delete(((DomainBase)perfil).Id); + DateTime networkTime = Funcoes.GetNetworkTime(); + IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName()); + RegistroLog val = new RegistroLog(); + val.Acao = (TipoAcao)2; + val.Usuario = Recursos.Usuario; + val.DataHora = networkTime; + val.Descricao = $"O USUÁRIO {Recursos.Usuario.Nome} EXCLUIU O PERFIL, EM {networkTime}, DE " + $"ID: '{((DomainBase)perfil).Id}'" + ", NOME: '" + (string.IsNullOrWhiteSpace(perfil.Nome) ? "" : (perfil.Nome ?? "")) + "', CPF: '" + (string.IsNullOrWhiteSpace(perfil.Cpf) ? "" : (perfil.Cpf ?? "")) + "', HABILITAÇÃO: '" + (string.IsNullOrWhiteSpace(perfil.Habilitacao) ? "" : (perfil.Habilitacao ?? "")) + "', TEMPO DE HABILITAÇÃO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.TempoHabilitacao) + "', NASCIMENTO: '" + ((!perfil.Nascimento.HasValue) ? "" : (perfil.Nascimento?.ToShortDateString() ?? "")) + "', SEXO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.Sexo) + "', ESTADO CIVIL: '" + ValidationHelper.GetDescription((Enum)(object)perfil.EstadoCivil) + "', OCUPAÇÃO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.Ocupacao) + "', RELAÇÃOO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.Relacao) + "', DISTÂNCIA DO TRABALHO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.DistanciaResidenciaTrabalho) + "', USO POR DEPENDENTES: '" + ValidationHelper.GetDescription((Enum)(object)perfil.UsoDependentes) + "', TIPO DE RESIDÊNCIA: '" + ValidationHelper.GetDescription((Enum)(object)perfil.TipoResidencia) + "', GARAGEM NA RESIDÊNCIA: '" + ValidationHelper.GetDescription((Enum)(object)perfil.GaragemResidencia) + "', GARAGEM NO TRABALHO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.GaragemTrabalho) + "', GARAGEM NO ESTUDO: '" + ValidationHelper.GetDescription((Enum)(object)perfil.GaragemEstudo) + "', VEÍCULOS NA RESIDÊNCIA: '" + ((!perfil.VeiculoResidencia.HasValue) ? "" : $"{perfil.VeiculoResidencia}") + "', ANTFURTO: '" + ((!perfil.AntiFurto.HasValue) ? "" : ValidationHelper.GetDescription((Enum)(object)perfil.AntiFurto)) + "', SEGURO DE VIDA: '" + ((!perfil.SeguroVida.HasValue) ? "" : (perfil.SeguroVida.Value ? "SIM" : "NÃO")) + "', USO PROFISSIONAL: '" + ((!perfil.UsoProfissional.HasValue) ? "" : (perfil.UsoProfissional.Value ? "SIM" : "NÃO")) + "', COBERTURA ESTENDIDA: '" + ((!perfil.EstenderCobertura.HasValue) ? "" : (perfil.EstenderCobertura.Value ? "SIM" : "NÃO")) + "', CEP CIRCULAÇÃO: '" + (string.IsNullOrWhiteSpace(perfil.CepCirculacao) ? "" : (perfil.CepCirculacao ?? "")) + "', CEP PERNOITE: '" + (string.IsNullOrWhiteSpace(perfil.CepPernoite) ? "" : (perfil.CepPernoite ?? "")) + "'."; + val.EntidadeId = ((DomainBase)perfil).Id; + val.Tela = (TipoTela)3; + val.Versao = LoginViewModel.VersaoAtual; + val.NomeMaquina = Environment.MachineName; + val.UsuarioMaquina = Environment.UserName; + val.Ip = hostEntry.AddressList.FirstOrDefault((IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork)?.ToString(); + RegistroLog keyValues = val; + SaveLog(keyValues, commited); + ((GenericUnitOfWork)commited).Commit(); + return true; + } + finally + { + ((IDisposable)commited)?.Dispose(); + } + } + catch (Exception e) + { + tries = Registrar(e, (TipoErro)213, tries, perfil); + } + } + return false; + }); + } +} |