public ServicoDeBuscaDeCaraters(SqlConnection conexao) { this._servicoDePersistencia = new ServicoExternoDePersistenciaViaEntityFramework(contexto); this._servicoHttp = new ServicoDeComunicacaoViaHttp(); this._urlToken = VariaveisDeAmbiente.Pegar <string>("Cortex:urlToken"); this._urlDaBusca = VariaveisDeAmbiente.Pegar <string>("Cortex:urlBuscaVeiculo"); }
public ServicoDeBuscaDeVeiculo(IServicoDeComunicacaoViaHttp servicoHttp, string urlToken, string urlCompleta) { this._urlToken = urlToken; this._servicoHttp = servicoHttp; this._urlDaApiCompleta = urlCompleta; this._urlDaApiProprietario = VariaveisDeAmbiente.Pegar <string>("Cortex:urlBuscaProprietario"); }
private string RetornaHtmlDaLista(List <ModeloDeCaratersDaLista> caraters, DateTime?dataInicial, DateTime?dataFinal, UsuarioLogado usuario) { StringBuilder html = new StringBuilder(); var caminhoBlob = VariaveisDeAmbiente.Pegar <string>("azure:caminhoDoBlob"); var contador = 0; var dataInicialTratada = dataInicial.Value != DateTime.MinValue ? $" - {dataInicial.Value.ToString("dd/MM")}" : String.Empty; var dataFinalTratada = dataFinal.Value != DateTime.MinValue ? $" a {dataFinal.Value.ToString("dd/MM/yyyy")}" : String.Empty; html.Append($"<html><head> <meta charset='UTF-8'></head>"); html.Append("<style> .table{width: 100%; margin-bottom: 1rem; color: #212529; background-color: transparent; border: solid 1px #212529;} .table th, .table td { padding: 0.75rem; vertical-align: top; border: 1px solid #dee2e6;} .table thead th { vertical-align: bottom; border-bottom: 2px solid #dee2e6;} .table tbody + tbody { border-top: 2px solid #dee2e6; } .text-muted { color: #6c757d !important;} .placa { font-size: 18pt; font-weight: bold; } .verde {color: #139f11 !important; font-weight: bold; } .amarelo {color: #ff6a00 !important;font-weight: bold;}"); html.Append($"</style>"); html.Append($"<body>"); html.Append($"<table class='table'>"); html.Append($"<tr><th colspan='9'>RELAÇÃO DE CARÁTER GERAL {dataInicialTratada}{dataFinalTratada} "); html.Append($"</th></tr>"); html.Append($"<tr><th>NUM</th><th>PLACA</th><th>UF</th><th style'width: 150px;'>MODELO</th><th>COR</th><th>ANO</th><th>CIDADE</th><th>CRIME</th><th>DATA</th></tr>"); foreach (var carater in caraters) { html.Append($"<tr>"); html.Append($"<td><span class='placa'>{carater.PlacaInicial.ToUpper()}</span></td>"); html.Append($"<td><span class='placa'>{carater.PlacaFinal.ToUpper()}</span></td>"); html.Append($"<td><span>{carater.UfVeiculo.ToUpper()}</span></td>"); html.Append($"<td><span>{carater.NomeVeiculo}</span></td>"); html.Append($"<td><p style='text-align:center;'><span>{carater.CorVeiculo}</span></p></td>"); html.Append($"<td><p style='text-align:center;'><span>{carater.AnoVeiculo}</span></p></td>"); html.Append($"<td><p style='text-align:center;'><span>{carater.NomeCidade}</span></p></td>"); html.Append($"<td><p style='text-align:center;'><span>{carater.NomeCrime}</span></p></td>"); html.Append($"<td><p style='text-align:center;'><span>{carater.DataDoFato}</span></p></td>"); html.Append($"</tr>"); contador++; } if (contador <= 15) { contador = 6; } else { contador = 0; } for (int i = 0; i < contador; i++) { html.Append($"<tr>"); for (int j = 0; j < 9; j++) { html.Append($"<td style='height: 50px; overflow: hidden; '></td>"); } html.Append($"</tr>"); } html.Append($"</table></body>"); html.Append($"<footer class='main-footer'> Emitido por {usuario.Nome} em {DateTime.Now.ToShortDateString()}<br> <b>Caráter Geral</b> Policial 2021(CGP) - All rights reserved.</footer>"); html.Append($"</html>"); return(html.ToString()); }
public ActionResult Index() { if (User.Autenticado()) { ViewBag.Usuario = User.Logado().Nome; ViewBag.Tutorial = $"{VariaveisDeAmbiente.Pegar<string>("azure:caminhoDoBlob")}/arquivos/TutorialCaraterGeral.pdf"; return(RedirectToAction(nameof(Dashboard))); } return(View()); }
public ModeloDeHistoricoDePassagensDaLista(HistoricoDePassagem historico, bool ehCelular, Camera camera = null) { if (historico == null) { return; } this.Id = historico.Id; this.DataPassagem = historico.Data.ToString("dd/MM/yyyy HH:mm"); this.Local = historico.Local; var arquivoTratado = historico.Arquivo.Replace(@"I:\", "").Replace(@"\", @"/"); var caminho = VariaveisDeAmbiente.Pegar <string>("LOCAL:servidorDePassagens") + arquivoTratado; if (ehCelular) { caminho.Replace("https://", "http://"); } if (historico.TipoDeHistoricoDePassagem == TipoDeHistoricoDePassagem.Automatico) { this.Arquivo = caminho; } else if (historico.TipoDeHistoricoDePassagem == TipoDeHistoricoDePassagem.Manual) { if (!String.IsNullOrEmpty(historico.Arquivo)) { var caminhoBlob = $"{VariaveisDeAmbiente.Pegar<string>("azure:caminhoDoBlob")}fotos/{historico.Arquivo}"; this.Arquivo = caminhoBlob; } } else if (!String.IsNullOrEmpty(historico.Arquivo)) { this.Arquivo = caminho; } if (camera != null) { this.TemLatLong = true; this.Cidade = camera.Cidade.Descricao; this.Latitude = camera.Latitude; this.Longitude = camera.Longitude; this.LocalParaMapa = $"<b>{camera.Cidade.Descricao}</b><br/>{historico.Local}"; } else { this.TemLatLong = !String.IsNullOrEmpty(historico.Latitude) && !String.IsNullOrEmpty(historico.Longitude) ? true : false; this.Latitude = historico.Latitude; this.Longitude = historico.Longitude; this.LocalParaMapa = $"{historico.Local}"; } this.IdCarater = historico.Carater != null ? historico.Carater.Id : 0; }
public ModeloDeBatalhoesDaLista(Batalhao batalhao) { var caminhoBlob = VariaveisDeAmbiente.Pegar <string>("azure:caminhoDoBlob"); this.Id = batalhao.Id; this.Nome = batalhao.Nome; this.Sigla = batalhao.Sigla; this.Cidade = batalhao.Cidade != null ? batalhao.Cidade.Descricao : String.Empty; this.NomeComando = batalhao.ComandoRegional != null ? batalhao.ComandoRegional.Sigla : String.Empty; this.DataDoCadastro = batalhao.DataDoCadastro.ToShortDateString(); this.Ativo = batalhao.Ativo; }
public ModeloDeFotosDaLista(Foto foto) { if (foto == null) { return; } this.Id = foto.Id; this.Descricao = foto.Descricao; var caminhoBlob = $"{VariaveisDeAmbiente.Pegar<string>("azure:caminhoDoBlob")}fotos/{foto.Caminho}"; this.Caminho = caminhoBlob; this.IdCarater = foto.Carater != null ? foto.Carater.Id : 0; this.Ativo = foto.Ativo; }
public static void Injetar() { var container = new Container(); container.Options.DefaultScopedLifestyle = new WebRequestLifestyle(); container.Register <Contexto, Contexto>(Lifestyle.Scoped); container.Register <IServicoExternoDePersistenciaViaEntityFramework, ServicoExternoDePersistenciaViaEntityFramework>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeFuncionarios, ServicoDeGestaoDeFuncionarios>(Lifestyle.Scoped); container.Register <IServicoDeLogin, ServicoDeLogin>(Lifestyle.Scoped); container.Register <IServicoDeGeracaoDeHashSha, ServicoDeGeracaoDeHashSha>(Lifestyle.Scoped); container.Register <IServicoExternoDeAutenticacao, ServicoExternoDeAutenticacaoViaCookieOwin>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeBatalhoes, ServicoDeGestaoDeBatalhoes>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeUsuarios, ServicoDeGestaoDeUsuarios>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeDashboard, ServicoDeGestaoDeDashboard>(Lifestyle.Scoped); container.Register <IServicoDeGeracaoDeDocumentosEmPdf, ServicoDeGeracaoDeDocumentosEmPdf>(Lifestyle.Scoped); container.Register <IServicoDeMontagemDeEmails, ServicoDeMontagemDeEmails>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeComandosRegionais, ServicoDeGestaoDeComandosRegionais>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeCidades, ServicoDeGestaoDeCidades>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeVeiculos, ServicoDeGestaoDeVeiculos>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeCrimes, ServicoDeGestaoDeCrimes>(Lifestyle.Scoped); container.Register <IServicoDeGestaoDeCaraters, ServicoDeGestaoDeCaraters>(Lifestyle.Scoped); container.Register <IServicoDeGestaDeCameras, ServicoDeGestaoDeCameras>(Lifestyle.Scoped); container.Register <IServicoDeHistoricoDePassagens, ServicoDeGestaoDeHistoricoDePassagens>(Lifestyle.Scoped); container.Register <IServicoDeEnvioDeEmails>(() => new ServicoDeEnvioDeEmails( VariaveisDeAmbiente.Pegar <string>("chaveSendGrid"), VariaveisDeAmbiente.Pegar <string>("EmailDaEmpresa"), VariaveisDeAmbiente.Pegar <string>("NomeDaEmpresa")), Lifestyle.Scoped); container.Register <IServicoDeComunicacaoViaHttp, ServicoDeComunicacaoViaHttp>(Lifestyle.Scoped); container.Register <IServicoDeCriptografia, ServicoDeCriptografia>(Lifestyle.Scoped); container.Register <IServicoDeBuscaDeVeiculo>(() => new ServicoDeBuscaDeVeiculo(container.GetInstance <IServicoDeComunicacaoViaHttp>(), VariaveisDeAmbiente.Pegar <string>("Cortex:urlToken"), VariaveisDeAmbiente.Pegar <string>("Cortex:urlBuscaVeiculo")), Lifestyle.Scoped); container.Register <IServicoDeGestaoDeUsuariosSGPOL>(() => new ServicoDeGestaoDeUsuariosSGPOL(container.GetInstance <IServicoDeComunicacaoViaHttp>(), container.GetInstance <IServicoDeGeracaoDeHashSha>(), VariaveisDeAmbiente.Pegar <string>("SGPOL:urlToken"), VariaveisDeAmbiente.Pegar <string>("SGPOL:urlBusca")), Lifestyle.Scoped); container.Register <IServicoExternoDeArmazenamentoEmNuvem>(() => new ServicoExternoDeArmazenamentoEmNuvem( VariaveisDeAmbiente.Pegar <string>("azure:contaDeArmazenamentoAzure"), VariaveisDeAmbiente.Pegar <string>("azure:chaveDaContaDeArmazenamentoAzure")), Lifestyle.Scoped); container.Register <IServicoDeLoginAd>(() => new ServicoDeLoginAd(ConfigurationManager.ConnectionStrings["conexao_AD"].ConnectionString), Lifestyle.Scoped); container.Register <IServicoDeBuscaViaDapper>(() => new ServicoDeBuscaViaDapper( VariaveisDeAmbiente.ConnectionString("conexaoDoBanco")), Lifestyle.Singleton); container.Verify(); DependencyResolver.SetResolver(new SimpleInjectorDependencyResolver(container)); }
public ModeloDeAlertaDaLista(Alerta alerta) { if (alerta == null) { return; } this.Id = alerta.Id; var arquivoTratado = alerta.HistoricoDePassagem.Arquivo.Replace(@"I:\", "").Replace(@"\", "/"); var caminho = VariaveisDeAmbiente.Pegar <string>("LOCAL:servidorDePassagens") + arquivoTratado; this.DataPassagem = alerta.HistoricoDePassagem.Data.ToString("dd/MM/yyyy HH:mm"); this.Local = alerta.HistoricoDePassagem.Local; this.Arquivo = caminho; this.IdCarater = alerta.HistoricoDePassagem != null ? alerta.HistoricoDePassagem.Carater.Id : 0; this.Placa = alerta.HistoricoDePassagem != null ? alerta.HistoricoDePassagem.Carater.Veiculo.Placa : String.Empty; }
private string EfetuarODownloadDoTemplateDeEmail(string caminho) { string url = VariaveisDeAmbiente.Pegar <string>("azure:caminhoDoBlob"); string urlDoArquivo = url + caminho; string urlLogoEmpresa = url + "arquivos/logo/logoPmdf.png"; using (WebClient client = new WebClient()) { string body = client.DownloadString(urlDoArquivo); string data = DateTime.Now.ToString("U"); body = body.Replace("{DATA_DE_ENVIO}", data); body = body.Replace("{BLOB_AZURE}", url); body = body.Replace("{NUMERO_ALEATORIO}", new Random().Next().ToString()); body = body.Replace("{NOME_DA_EMPRESA}", VariaveisDeAmbiente.Pegar <string>("NomeDaEmpresa")); body = body.Replace("{LOGO_EMPRESA}", urlLogoEmpresa); return(body); } }
public ModeloDeEmail MontarEmailCadastroAtivo(Usuario usuario) { var titulo = $"Seu usuário foi ativado no {VariaveisDeAmbiente.Pegar<string>("NomeDaEmpresa")}"; string caminho = "arquivos/email/emailPadrao.html"; string corpo = EfetuarODownloadDoTemplateDeEmail(caminho); var mensagem = new StringBuilder(); mensagem.Append($"<p>Olá <b>{ usuario.Nome.Valor }</b>, seu cadastro no {VariaveisDeAmbiente.Pegar<string>("NomeDaEmpresa")} foi ativado com sucesso!</p>"); mensagem.Append($"<p>Para isto, basta acessar o sistema e realizar o login com seus dados.</p>"); corpo = corpo.Replace("{TITULO}", titulo); corpo = corpo.Replace("{MENSAGEM}", mensagem.ToString()); var link = $"{VariaveisDeAmbiente.Pegar<string>("NomeDoSite")}"; corpo = corpo.Replace("{URL}", link); corpo = corpo.Replace("{MENSAGEM}", mensagem.ToString()); corpo = corpo.Replace("{DESCRICAO_BOTAO}", "Acesse Agora"); return(new ModeloDeEmail(titulo, corpo.ToString())); }
public ModeloDeEmail MontarEmailRenovacaoSenha(Usuario usuario, string token) { var titulo = $"Renovação de Senha - {VariaveisDeAmbiente.Pegar<string>("NomeDaEmpresa")}"; string caminho = "arquivos/email/emailPadrao.html"; string corpo = EfetuarODownloadDoTemplateDeEmail(caminho); var mensagem = new StringBuilder(); mensagem.Append($"<p>Olá <b>{ usuario.Nome.Valor }</b>, você solicitou renovação de senha no {VariaveisDeAmbiente.Pegar<string>("NomeDaEmpresa")}.</p>"); mensagem.Append($"<p>Para isto, basta clicar no link abaixo para renovar sua senha.</p>"); corpo = corpo.Replace("{TITULO}", titulo); corpo = corpo.Replace("{MENSAGEM}", mensagem.ToString()); var link = $"{VariaveisDeAmbiente.Pegar<string>("NomeDoSite")}/EsqueciMinhaSenha/RenovacaoDeSenha?t={token}"; corpo = corpo.Replace("{URL}", link); corpo = corpo.Replace("{MENSAGEM}", mensagem.ToString()); corpo = corpo.Replace("{DESCRICAO_BOTAO}", "Clique para renovar senha"); return(new ModeloDeEmail(titulo, corpo.ToString())); }
public ModeloDeEmail MontarEmailBoasVindas(Usuario usuario) { var titulo = $"Bem Vindo(a) ao Caráter Geral Policial"; string caminho = "arquivos/email/emailPadrao.html"; string corpo = EfetuarODownloadDoTemplateDeEmail(caminho); var mensagem = new StringBuilder(); mensagem.Append($"<p>Olá <b>{ usuario.Nome.Valor }</b>, seu cadastro no {VariaveisDeAmbiente.Pegar<string>("NomeDaEmpresa")} foi concluído com sucesso!</p>"); mensagem.Append($"<p>Você receberá um email quando o Adminsitrador aprovar seu cadastro.</p>"); corpo = corpo.Replace("{TITULO}", titulo); corpo = corpo.Replace("{MENSAGEM}", mensagem.ToString()); var link = $"{VariaveisDeAmbiente.Pegar<string>("NomeDoSite")}"; corpo = corpo.Replace("{URL}", link); corpo = corpo.Replace("{MENSAGEM}", mensagem.ToString()); corpo = corpo.Replace("{DESCRICAO_BOTAO}", "Acesse Agora"); return(new ModeloDeEmail(titulo, corpo.ToString())); }
public ModeloDeHistoricoDeCaraterDaLista(HistoricoDeCarater historico, List <Foto> fotos) { var exibeBotao = new List <TipoDeHistoricoDeCarater> { TipoDeHistoricoDeCarater.HistoricoCarater }; var exibeDescricao = new List <TipoDeHistoricoDeCarater> { TipoDeHistoricoDeCarater.Historico, TipoDeHistoricoDeCarater.Baixa }; if (historico == null) { return; } this.Id = historico.Id; this.DataDoCadastro = historico.DataDoCadastro.ToString("dd.MMMM.yyyy"); this.Descricao = !String.IsNullOrEmpty(historico.Descricao) ? historico.Descricao.Replace(Environment.NewLine, "<br />").Replace("\n", "<br />") : ""; this.Titulo = historico.Titulo; this.IdUsuario = historico.Usuario != null ? historico.Usuario.Id : 0; this.Usuario = historico.Usuario != null ? historico.Usuario.PerfilDeUsuario == PerfilDeUsuario.Atenas ? historico.Usuario.PerfilDeUsuario.ToString() : historico.Usuario.Nome.Valor : ""; this.IdCarater = historico.Carater != null ? historico.Carater.Id : 0; this.IdEntidade = historico.IdEntidade; this.TipoDeHistoricoDeCarater = historico.TipoDeHistoricoDeCarater; this.IconeDoTipo = RetornaIconeDoTipo(historico.TipoDeHistoricoDeCarater); this.TempoDecorrido = TimeAgo(historico.DataDoCadastro); this.ExibeBotao = exibeBotao.Contains(historico.TipoDeHistoricoDeCarater); this.ExibeDescricao = exibeDescricao.Contains(historico.TipoDeHistoricoDeCarater); if (fotos != null && fotos.Count > 0) { var caminhoBlob = VariaveisDeAmbiente.Pegar <string>("azure:caminhoDoBlob"); var foto = fotos.FirstOrDefault(a => a.Id == historico.IdEntidade); this.UrlFoto = foto != null ? $"{caminhoBlob}fotos/{foto.Caminho}" : String.Empty; } }
public void Configuration(IAppBuilder app) { var configuracaoDoTempoDeSessao = "60"; var sessaoEmMinutos = !string.IsNullOrEmpty(configuracaoDoTempoDeSessao) ? double.Parse(configuracaoDoTempoDeSessao) : 90; var configuracaoDaPaginaDeLogin = "******"; var paginaDeLogin = !string.IsNullOrEmpty(configuracaoDaPaginaDeLogin) ? configuracaoDaPaginaDeLogin : "******"; var configuracaoDoDominio = VariaveisDeAmbiente.Pegar <string>("NomeDoSite"); var opcoes = new CookieAuthenticationOptions(); opcoes.AuthenticationType = "ApplicationCookie"; opcoes.SlidingExpiration = true; opcoes.CookieHttpOnly = true; opcoes.LoginPath = new PathString(paginaDeLogin); opcoes.ExpireTimeSpan = TimeSpan.FromMinutes(sessaoEmMinutos); opcoes.CookieSecure = CookieSecureOption.SameAsRequest; opcoes.CookieDomain = new Uri(configuracaoDoDominio).Host; opcoes.CookieName = VariaveisDeAmbiente.Pegar <string>("NomeDoSite") + "_secure"; app.UseCookieAuthentication(opcoes); }
public ActionResult Index(ModeloDeListaDeCameras modelo) { if (!User.EhAdministrador() && !User.EhInterno()) { return(UsuarioSemPermissao()); } modelo = this._servicoDeGestaoDeCameras.RetonarCamerasPorFiltro(modelo.Filtro, this.Pagina(), VariaveisDeAmbiente.Pegar <int>("registrosPorPagina")); modelo.Filtro.Cidades = ListaDeItensDeDominio.DaClasseComOpcaoPadrao <Cidade>(nameof(Cidade.Descricao), nameof(Cidade.Id), () => this._servicoDeGestaoDeCidades.RetonarCidadesPorUf(7)); return(View(modelo)); }
public async Task <ActionResult> Index(ModeloDeListaDeCaraters modelo, string exportar) { if (exportar == "imprimir") { modelo = this._servicoDeGestaoDeCaraters.GerarPDFeRetornar(modelo.Filtro, User.Logado()); using (Stream enviarParaAzure = new MemoryStream(this._servicoDeGeracaoDeDocumentosEmPdf.CriarPdf(modelo.ArquivoHtml))) { var nomeArquivo = $"caraterGeral{DateTime.Now.ToString().Trim().Replace('/', '.').Trim()}.pdf"; string blob = $"caraters"; var retorno = await this._servicoExternoDeArmazenamentoEmNuvem.EnviarArquivoAsync(enviarParaAzure, blob, nomeArquivo.Trim()); Response.Redirect(retorno, true); } } modelo = this._servicoDeGestaoDeCaraters.RetonarCaratersPorFiltro(modelo.Filtro, this.Pagina(), VariaveisDeAmbiente.Pegar <int>("registrosPorPagina")); modelo.Filtro.Cidades = ListaDeItensDeDominio.DaClasseSemOpcaoPadrao <Cidade>(nameof(Cidade.Descricao), nameof(Cidade.Id), () => this._servicoDeGestaoDeCidades.RetonarCidadesPorUf(7)); modelo.Filtro.Crimes = ListaDeItensDeDominio.DaClasseSemOpcaoPadrao <Crime>(nameof(Crime.Nome), nameof(Crime.Id), () => this._servicoDeGestaoDeCrimes.RetonarTodosOsCrimesAtivos()); if (modelo.Filtro.CidadesSelecionadas != null) { foreach (var cidade in modelo.Filtro.CidadesSelecionadas) { modelo.Filtro.Cidades.FirstOrDefault(a => a.Value == cidade.ToString()).Selected = true; } } if (modelo.Filtro.CrimesSelecionados != null) { foreach (var crime in modelo.Filtro.CrimesSelecionados) { modelo.Filtro.Crimes.FirstOrDefault(a => a.Value == crime.ToString()).Selected = true; } } this.TotalDeRegistrosEncontrados(modelo.TotalDeRegistros); return(View(modelo)); }
public ActionResult Index(ModeloDeListaDeComandosRegionais modelo) { modelo = this._servicoDeGestaoDeComandosRegionais.RetonarComandosRegionaisPorFiltro(modelo.Filtro, this.Pagina(), VariaveisDeAmbiente.Pegar <int>("registrosPorPagina")); this.TotalDeRegistrosEncontrados(modelo.TotalDeRegistros); return(View(modelo)); }
public SendEmail(IOptions <VariaveisDeAmbiente> options) { _variaveis = options.Value; }
public ModeloDeAutorizacaoSGPOL() { this.Username = VariaveisDeAmbiente.Pegar <string>("SGPOL:username"); this.Password = VariaveisDeAmbiente.Pegar <string>("SGPOL:password"); }
public ActionResult Index(ModeloDeListaDeHistoricoDePassagens modelo) { modelo = this._servicoDeHistoricoDePassagens.RetornarHistociosDePassagensPorFiltro(modelo.Filtro, this.Pagina(), VariaveisDeAmbiente.Pegar <int>("registrosPorPagina")); modelo.Filtro.Cidades = ListaDeItensDeDominio.DaClasseSemOpcaoPadrao <Cidade>(nameof(Cidade.Descricao), nameof(Cidade.Id), () => this._servicoDeGestaoDeCidades.RetonarCidadesPorUf(7)); modelo.Filtro.Crimes = ListaDeItensDeDominio.DaClasseSemOpcaoPadrao <Crime>(nameof(Crime.Nome), nameof(Crime.Id), () => this._servicoDeGestaoDeCrimes.RetonarTodosOsCrimesAtivos()); if (modelo.Filtro.CidadesSelecionadas != null) { foreach (var cidade in modelo.Filtro.CidadesSelecionadas) { modelo.Filtro.Cidades.FirstOrDefault(a => a.Value == cidade.ToString()).Selected = true; } } if (modelo.Filtro.CrimesSelecionados != null) { foreach (var crime in modelo.Filtro.CrimesSelecionados) { modelo.Filtro.Crimes.FirstOrDefault(a => a.Value == crime.ToString()).Selected = true; } } this.TotalDeRegistrosEncontrados(modelo.TotalDeRegistros); return(View(modelo)); }
public ModeloDeEdicaoDeCarater(Carater carater, bool ehCelular) { if (carater == null) { return; } this.DataHistorico = DateTime.Now.ToShortDateString(); var situacoesBaixas = new Dominio.ObjetosDeValor.SituacaoDoCarater[] { Dominio.ObjetosDeValor.SituacaoDoCarater.Localizado, Dominio.ObjetosDeValor.SituacaoDoCarater.BaixaAutomatica }; this.HistoricosDeCaraters = new List <ModeloDeHistoricoDeCaraterDaLista>(); this.HistoricosDePassagens = new List <ModeloDeHistoricoDePassagensDaLista>(); this.Fotos = new List <ModeloDeFotosDaLista>(); this.SituacoesDoCarater = ListaDeItensDeDominio.DoEnumComOpcaoPadrao <SituacaoDoCarater>(); var caminhoBlob = VariaveisDeAmbiente.Pegar <string>("azure:caminhoDoBlob"); this.Id = carater.Id; this.Descricao = carater.Descricao; this.ComplementoEndereco = carater.ComplementoEndereco; this.ComplementoEnderecoTradado = !String.IsNullOrEmpty(carater.ComplementoEndereco) ? $" - {carater.ComplementoEndereco}" : String.Empty; this.Cidade = carater.Cidade != null ? carater.Cidade.Id : 0; this.Crime = carater.Crime != null ? carater.Crime.Id : 0; this.NomeCrime = carater.Crime != null ? $"{carater.Crime.Nome}" : String.Empty; this.NomeCidade = carater.Cidade != null ? $"{carater.Cidade.Descricao}" : String.Empty; this.Data = carater.DataHoraDoFato.HasValue ? carater.DataHoraDoFato.Value.ToShortDateString() : String.Empty; this.Hora = carater.DataHoraDoFato.HasValue ? carater.DataHoraDoFato.Value.ToShortTimeString() : String.Empty; this.UrlImagem = $"{caminhoBlob}/{carater.UrlImagem}"; var usuario = carater.UsuarioQueAlterou != null ? carater.UsuarioQueAlterou.PerfilDeUsuario == PerfilDeUsuario.Atenas ? carater.UsuarioQueAlterou.PerfilDeUsuario.ToString() : carater.UsuarioQueAlterou.Nome.Valor : String.Empty; this.UsuarioCadastro = $"Cadastro por {usuario} no dia {carater.DataDoCadastro.ToString("dd/MM")} às {carater.DataDoCadastro.ToString("HH:mm")}"; this.SituacaoDoCarater = (int)carater.SituacaoDoCarater; this.CssTipoCrime = RetornaCssCrime(NomeCrime); if (carater.Veiculo != null) { this.Placa = carater.Veiculo.Placa; this.UfVeiculo = carater.Veiculo.Uf; this.MunicipioVeiculo = carater.Veiculo.Municipio; this.IdVeiculo = carater.Veiculo.Id; this.ModeloVeiculo = carater.Veiculo.Modelo; this.MarcaVeiculo = carater.Veiculo.Marca; this.AnoVeiculo = carater.Veiculo.Ano; this.CorVeiculo = carater.Veiculo.Cor; this.ChassiVeiculo = carater.Veiculo.Chassi; this.ChassiVeiculoTratado = !String.IsNullOrEmpty(carater.Veiculo.Chassi) ? carater.Veiculo.Chassi.Length > 4 ? carater.Veiculo.Chassi.Substring(carater.Veiculo.Chassi.Length - 5) : carater.Veiculo.Chassi : String.Empty; this.Renavam = carater.Veiculo.Renavam; this.Motor = carater.Veiculo.Motor; this.UltimoCRV = !String.IsNullOrEmpty(carater.Veiculo.UltimoCRV) ? Convert.ToDateTime(carater.Veiculo.UltimoCRV).ToShortDateString() : String.Empty; this.AtualizacaoVeiculo = carater.Veiculo.Atualizacao.ToString(); this.Situacao = carater.Veiculo.Situacao; if (carater.Veiculo.Proprietario != null) { this.Proprietario = new ModeloDeProprietario(carater.Veiculo.Proprietario); } if (carater.Veiculo.Possuidor != null) { this.Possuidor = new ModeloDePossuidor(carater.Veiculo.Possuidor); } } if (situacoesBaixas.Contains(carater.SituacaoDoCarater)) { this.RealizouBaixa = true; this.DescricaoLocalizacao = carater.DescricaoLocalizado; var dataHora = carater.DataHoraLocalizacao.HasValue ? carater.DataHoraLocalizacao.Value : DateTime.MinValue; this.CidadeLocalizacao = carater.CidadeLocalizado != null ? $" - Cidade: {carater.CidadeLocalizado.Descricao}" : String.Empty; this.UsuarioLocalizacao = $"Baixa por {usuario} no dia {dataHora.ToString("dd/MM")} às {dataHora.ToString("HH:mm")}"; } carater.HistoricosDeCaraters.Where(a => !a.Excluido).OrderByDescending(a => a.DataDoCadastro).ToList().ForEach(a => this.HistoricosDeCaraters.Add(new ModeloDeHistoricoDeCaraterDaLista(a, carater.Fotos.ToList()))); carater.HistoricosDePassagens.Where(a => !a.Excluido).OrderByDescending(a => a.DataDoCadastro).ToList().ForEach(a => this.HistoricosDePassagens.Add(new ModeloDeHistoricoDePassagensDaLista(a, ehCelular))); carater.Fotos.Where(a => a.Ativo).ToList().ForEach(a => this.Fotos.Add(new ModeloDeFotosDaLista(a))); this.SeloAtenas = carater.SeloAtenas; this.Excluido = carater.Excluido; }
public ActionResult Index(ModeloDeListaDeBatalhoes modelo) { modelo = this._servicoDeGestaoDeBatalhoes.RetonarTodosOsBatalhoes(modelo.Filtro, this.Pagina(), VariaveisDeAmbiente.Pegar <int>("registrosPorPagina")); modelo.Filtro.ComandosRegionais = ListaDeItensDeDominio.DaClasseComOpcaoPadrao <ComandoRegional>(nameof(ComandoRegional.Sigla), nameof(ComandoRegional.Id), () => this._servicoDeGestaoDeComandosRegionais.RetonarTodosOsComandosRegionaisAtivos()); modelo.Filtro.Cidades = ListaDeItensDeDominio.DaClasseComOpcaoPadrao <Cidade>(nameof(Cidade.Descricao), nameof(Cidade.Id), () => this._servicoDeGestaoDeCidades.RetonarCidadesPorUf(7)); this.TotalDeRegistrosEncontrados(modelo.TotalDeRegistros); return(View(modelo)); }
public ActionResult Index(ModeloDeListaDeUsuarios modelo, bool?Ativo) { if (User.EhInterno() && User.EhUsuario()) { return(UsuarioSemPermissao()); } if (Ativo.HasValue) { modelo.Filtro.Ativo = Ativo.Value; } modelo = this._servicoDeGestaoDeUsuarios.RetonarUsuariosPorFiltro(modelo.Filtro, User.Logado(), this.Pagina(), VariaveisDeAmbiente.Pegar <int>("registrosPorPagina")); modelo.Filtro.Batalhoes = ListaDeItensDeDominio.DaClasseComOpcaoPadrao <Batalhao>(nameof(Batalhao.Sigla), nameof(Batalhao.Id), () => this._servicoDeGestaoDeBatalhoes.RetonarTodosOsBatalhoesAtivos()); this.TotalDeRegistrosEncontrados(modelo.TotalDeRegistros); return(View(modelo)); }