using Gestor.Application.Helpers; using Gestor.Application.Servicos.Generic; using Gestor.Application.ViewModels; using Gestor.Infrastructure.Repository.Interface; using Gestor.Infrastructure.UnitOfWork.Generic; using Gestor.Infrastructure.UnitOfWork.Logic; using Gestor.Model.Common; using Gestor.Model.Domain.Common; using Gestor.Model.Domain.Configuracoes; using Gestor.Model.Domain.Generic; using Gestor.Model.Domain.Relatorios; using Gestor.Model.Domain.Seguros; using Gestor.Model.Validation; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Net; using System.Net.Sockets; using System.Runtime.CompilerServices; using System.Threading.Tasks; namespace Gestor.Application.Servicos.Configuracoes { public class ConfuguracoesServico : BaseServico { public ConfuguracoesServico() { } public async Task> Buscar() { int num = 3; List configuracaoSistemas1 = await Task.Run>(() => { List configuracaoSistemas; while (num > 0) { try { using (UnitOfWork read = Instancia.Read) { configuracaoSistemas = read.get_ConfiguracaoRepository().BuscarConfiguracoes(); } } catch (Exception exception) { num = base.Registrar(exception, 297, num, null, true); continue; } return configuracaoSistemas; } return null; }); return configuracaoSistemas1; } public async Task> BuscarParametros(Relatorio relatorio) { int num = 3; List parametrosRelatorios1 = await Task.Run>(() => { List parametrosRelatorios; while (num > 0) { try { using (UnitOfWork read = Instancia.Read) { parametrosRelatorios = read.get_ParametrosRelatorioRepository().Find(Recursos.Usuario.get_Id(), relatorio); } } catch (Exception exception) { num = base.Registrar(exception, 301, num, new { Id = Recursos.Usuario.get_Id(), relatorio = relatorio }, true); continue; } return parametrosRelatorios; } return null; }); return parametrosRelatorios1; } public List BuscarParametroTotalizacao(Relatorio relatorio) { List parametrosTotalizacaos; int num = 3; while (num > 0) { try { using (UnitOfWork read = Instancia.Read) { parametrosTotalizacaos = read.get_ParametrosTotalizacaoRepository().Find(Recursos.Usuario.get_Id(), relatorio); } } catch (Exception exception1) { Exception exception = exception1; num = base.Registrar(exception, 302, num, new { Id = Recursos.Usuario.get_Id(), relatorio = relatorio }, true); continue; } return parametrosTotalizacaos; } return null; } public async Task> BuscarParametroTotalizacaoAsync(Relatorio relatorio) { int num = 3; List parametrosTotalizacaos1 = await Task.Run>(() => { List parametrosTotalizacaos; while (num > 0) { try { using (UnitOfWork read = Instancia.Read) { parametrosTotalizacaos = read.get_ParametrosTotalizacaoRepository().Find(Recursos.Usuario.get_Id(), relatorio); } } catch (Exception exception) { num = base.Registrar(exception, 302, num, new { Id = Recursos.Usuario.get_Id(), relatorio = relatorio }, true); continue; } return parametrosTotalizacaos; } return null; }); return parametrosTotalizacaos1; } public async Task Excluir(ConfiguracaoSistema configuracao) { int num = 3; bool flag1 = await Task.Run(() => { bool flag; string str; while (num > 0) { try { using (UnitOfWork commited = Instancia.Commited) { commited.get_ConfiguracaoRepository().Delete(configuracao.get_Id()); DateTime networkTime = Gestor.Application.Helpers.Funcoes.GetNetworkTime(); IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName()); RegistroLog registroLog = new RegistroLog(); registroLog.set_Acao(2); registroLog.set_Usuario(Recursos.Usuario); registroLog.set_DataHora(networkTime); registroLog.set_Descricao(string.Format("O USUÁRIO {0} EXCLUIU, EM {1}, A CONFIGURAÇÃO {2} ", Recursos.Usuario.get_Nome(), networkTime, Gestor.Model.Validation.Funcoes.GetDescription(configuracao.get_Configuracao()))); registroLog.set_EntidadeId(configuracao.get_Id()); registroLog.set_Tela(50); registroLog.set_Versao(LoginViewModel.VersaoAtual); registroLog.set_NomeMaquina(Environment.MachineName); registroLog.set_UsuarioMaquina(Environment.UserName); IPAddress[] addressList = hostEntry.AddressList; Func u003cu003e9_21 = ConfuguracoesServico.u003cu003ec.u003cu003e9__2_1; if (u003cu003e9_21 == null) { u003cu003e9_21 = (IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork; ConfuguracoesServico.u003cu003ec.u003cu003e9__2_1 = u003cu003e9_21; } IPAddress pAddress = ((IEnumerable)addressList).FirstOrDefault(u003cu003e9_21); if (pAddress != null) { str = pAddress.ToString(); } else { str = null; } registroLog.set_Ip(str); base.SaveLog(registroLog, commited); commited.Commit(); flag = true; } } catch (Exception exception) { num = base.Registrar(exception, 298, num, configuracao, true); continue; } return flag; } return false; }); return flag1; } public async Task Salvar(ConfiguracaoSistema configuracao) { int num = 3; ConfiguracaoSistema configuracaoSistema2 = await Task.Run(() => { ConfiguracaoSistema configuracaoSistema; string str; while (num > 0) { try { using (UnitOfWork commited = Instancia.Commited) { ConfiguracaoSistema configuracaoSistema1 = commited.get_ConfiguracaoRepository().SaveOrUpdate(configuracao); DateTime networkTime = Gestor.Application.Helpers.Funcoes.GetNetworkTime(); IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName()); RegistroLog registroLog = new RegistroLog(); registroLog.set_Acao(0); registroLog.set_Usuario(Recursos.Usuario); registroLog.set_DataHora(networkTime); registroLog.set_Descricao(string.Format("O USUÁRIO {0} ADICIONOU, EM {1}, A CONFIGURAÇÃO {2} ", Recursos.Usuario.get_Nome(), networkTime, Gestor.Model.Validation.Funcoes.GetDescription(configuracaoSistema1.get_Configuracao()))); registroLog.set_EntidadeId(configuracaoSistema1.get_Id()); registroLog.set_Tela(50); registroLog.set_Versao(LoginViewModel.VersaoAtual); registroLog.set_NomeMaquina(Environment.MachineName); registroLog.set_UsuarioMaquina(Environment.UserName); IPAddress[] addressList = hostEntry.AddressList; Func u003cu003e9_11 = ConfuguracoesServico.u003cu003ec.u003cu003e9__1_1; if (u003cu003e9_11 == null) { u003cu003e9_11 = (IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork; ConfuguracoesServico.u003cu003ec.u003cu003e9__1_1 = u003cu003e9_11; } IPAddress pAddress = ((IEnumerable)addressList).FirstOrDefault(u003cu003e9_11); if (pAddress != null) { str = pAddress.ToString(); } else { str = null; } registroLog.set_Ip(str); base.SaveLog(registroLog, commited); commited.Commit(); configuracaoSistema = configuracaoSistema1; } } catch (Exception exception) { num = base.Registrar(exception, 298, num, configuracao, true); continue; } return configuracaoSistema; } return configuracao; }); return configuracaoSistema2; } public async Task Salvar(List parametrosSalvar, List parametrosDelete) { int num = 3; DateTime networkTime = Gestor.Application.Helpers.Funcoes.GetNetworkTime(); bool flag1 = await Task.Run(() => { bool flag; string str; string str1; while (num > 0) { try { IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName()); using (UnitOfWork commited = Instancia.Commited) { foreach (ParametrosRelatorio parametrosRelatorio in parametrosSalvar) { if (parametrosRelatorio.get_IdUsuario() == 0) { parametrosRelatorio.set_Id((long)0); parametrosRelatorio.set_IdUsuario(Recursos.Usuario.get_Id()); } parametrosRelatorio.set_Ordem(parametrosSalvar.IndexOf(parametrosRelatorio)); TipoAcao tipoAcao = (parametrosRelatorio.get_Id() == 0 ? 0 : 1); ParametrosRelatorio parametrosRelatorio1 = (parametrosRelatorio.get_Id() == 0 ? commited.get_ParametrosRelatorioRepository().SaveOrUpdate(parametrosRelatorio) : commited.get_ParametrosRelatorioRepository().Merge(parametrosRelatorio)); RegistroLog registroLog = new RegistroLog(); registroLog.set_Acao(tipoAcao); registroLog.set_Usuario(Recursos.Usuario); registroLog.set_DataHora(networkTime); registroLog.set_Descricao(JsonConvert.SerializeObject(parametrosRelatorio1)); registroLog.set_EntidadeId(parametrosRelatorio1.get_Id()); registroLog.set_Tela(50); registroLog.set_Versao(LoginViewModel.VersaoAtual); registroLog.set_NomeMaquina(Environment.MachineName); registroLog.set_UsuarioMaquina(Environment.UserName); IPAddress[] addressList = hostEntry.AddressList; Func u003cu003e9_61 = ConfuguracoesServico.u003cu003ec.u003cu003e9__6_1; if (u003cu003e9_61 == null) { u003cu003e9_61 = (IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork; ConfuguracoesServico.u003cu003ec.u003cu003e9__6_1 = u003cu003e9_61; } IPAddress pAddress = ((IEnumerable)addressList).FirstOrDefault(u003cu003e9_61); if (pAddress != null) { str = pAddress.ToString(); } else { str = null; } registroLog.set_Ip(str); base.SaveLog(registroLog, commited); } foreach (ParametrosRelatorio parametrosRelatorio2 in parametrosDelete) { if (parametrosRelatorio2.get_Id() == 0) { continue; } commited.get_ParametrosRelatorioRepository().Delete(parametrosRelatorio2.get_Id()); RegistroLog registroLog1 = new RegistroLog(); registroLog1.set_Acao(2); registroLog1.set_Usuario(Recursos.Usuario); registroLog1.set_DataHora(networkTime); registroLog1.set_Descricao(JsonConvert.SerializeObject(parametrosRelatorio2)); registroLog1.set_EntidadeId(parametrosRelatorio2.get_Id()); registroLog1.set_Tela(50); registroLog1.set_Versao(LoginViewModel.VersaoAtual); registroLog1.set_NomeMaquina(Environment.MachineName); registroLog1.set_UsuarioMaquina(Environment.UserName); IPAddress[] pAddressArray = hostEntry.AddressList; Func u003cu003e9_62 = ConfuguracoesServico.u003cu003ec.u003cu003e9__6_2; if (u003cu003e9_62 == null) { u003cu003e9_62 = (IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork; ConfuguracoesServico.u003cu003ec.u003cu003e9__6_2 = u003cu003e9_62; } IPAddress pAddress1 = ((IEnumerable)pAddressArray).FirstOrDefault(u003cu003e9_62); if (pAddress1 != null) { str1 = pAddress1.ToString(); } else { str1 = null; } registroLog1.set_Ip(str1); base.SaveLog(registroLog1, commited); } commited.Commit(); } flag = true; } catch (Exception exception) { num = base.Registrar(exception, 303, num, parametrosSalvar, true); continue; } return flag; } return false; }); return flag1; } public async Task SalvarTotalizacoes(List parametrosSalvar, List parametrosDeletar) { int num = 3; DateTime networkTime = Gestor.Application.Helpers.Funcoes.GetNetworkTime(); bool flag1 = await Task.Run(() => { bool flag; string str; string str1; while (num > 0) { try { IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName()); using (UnitOfWork commited = Instancia.Commited) { foreach (ParametrosTotalizacao parametrosTotalizacao in parametrosSalvar) { if (parametrosTotalizacao.get_IdUsuario() == 0) { parametrosTotalizacao.set_Id((long)0); parametrosTotalizacao.set_IdUsuario(Recursos.Usuario.get_Id()); } parametrosTotalizacao.set_Ativa(true); TipoAcao tipoAcao = (parametrosTotalizacao.get_Id() == 0 ? 0 : 1); ParametrosTotalizacao parametrosTotalizacao1 = (parametrosTotalizacao.get_Id() == 0 ? commited.get_ParametrosTotalizacaoRepository().SaveOrUpdate(parametrosTotalizacao) : commited.get_ParametrosTotalizacaoRepository().Merge(parametrosTotalizacao)); RegistroLog registroLog = new RegistroLog(); registroLog.set_Acao(tipoAcao); registroLog.set_Usuario(Recursos.Usuario); registroLog.set_DataHora(networkTime); registroLog.set_Descricao(JsonConvert.SerializeObject(parametrosTotalizacao1)); registroLog.set_EntidadeId(parametrosTotalizacao1.get_Id()); registroLog.set_Tela(50); registroLog.set_Versao(LoginViewModel.VersaoAtual); registroLog.set_NomeMaquina(Environment.MachineName); registroLog.set_UsuarioMaquina(Environment.UserName); IPAddress[] addressList = hostEntry.AddressList; Func u003cu003e9_71 = ConfuguracoesServico.u003cu003ec.u003cu003e9__7_1; if (u003cu003e9_71 == null) { u003cu003e9_71 = (IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork; ConfuguracoesServico.u003cu003ec.u003cu003e9__7_1 = u003cu003e9_71; } IPAddress pAddress = ((IEnumerable)addressList).FirstOrDefault(u003cu003e9_71); if (pAddress != null) { str = pAddress.ToString(); } else { str = null; } registroLog.set_Ip(str); base.SaveLog(registroLog, commited); } foreach (ParametrosTotalizacao parametrosTotalizacao2 in parametrosDeletar) { if (parametrosTotalizacao2.get_Id() == 0) { continue; } commited.get_ParametrosTotalizacaoRepository().Delete(parametrosTotalizacao2.get_Id()); RegistroLog registroLog1 = new RegistroLog(); registroLog1.set_Acao(2); registroLog1.set_Usuario(Recursos.Usuario); registroLog1.set_DataHora(networkTime); registroLog1.set_Descricao(JsonConvert.SerializeObject(parametrosTotalizacao2)); registroLog1.set_EntidadeId(parametrosTotalizacao2.get_Id()); registroLog1.set_Tela(50); registroLog1.set_Versao(LoginViewModel.VersaoAtual); registroLog1.set_NomeMaquina(Environment.MachineName); registroLog1.set_UsuarioMaquina(Environment.UserName); IPAddress[] pAddressArray = hostEntry.AddressList; Func u003cu003e9_72 = ConfuguracoesServico.u003cu003ec.u003cu003e9__7_2; if (u003cu003e9_72 == null) { u003cu003e9_72 = (IPAddress ip) => ip.AddressFamily == AddressFamily.InterNetwork; ConfuguracoesServico.u003cu003ec.u003cu003e9__7_2 = u003cu003e9_72; } IPAddress pAddress1 = ((IEnumerable)pAddressArray).FirstOrDefault(u003cu003e9_72); if (pAddress1 != null) { str1 = pAddress1.ToString(); } else { str1 = null; } registroLog1.set_Ip(str1); base.SaveLog(registroLog1, commited); } commited.Commit(); } flag = true; } catch (Exception exception) { num = base.Registrar(exception, 304, num, parametrosSalvar, true); continue; } return flag; } return false; }); return flag1; } } }