public ModeloDeListaDeCaraters RetonarCaratersPorFiltro(ModeloDeFiltroDeCarater filtro, int pagina, int registrosPorPagina = 30) { try { DateTime?dataInicial = null; DateTime?dataFinal = null; if (!String.IsNullOrEmpty(filtro.DataInicio)) { dataInicial = DateTime.Parse(filtro.DataInicio); dataInicial = new DateTime(dataInicial.Value.Year, dataInicial.Value.Month, dataInicial.Value.Day, 0, 0, 0); } if (!String.IsNullOrEmpty(filtro.DataFim)) { dataFinal = DateTime.Parse(filtro.DataFim); dataFinal = new DateTime(dataFinal.Value.Year, dataFinal.Value.Month, dataFinal.Value.Day, 23, 59, 59); } var quantidadeEncontrada = 0; var caraters = this._servicoExternoDePersistencia.RepositorioDeCaraters.RetornarCaratersPorFiltro(filtro.Placa, filtro.CidadesSelecionadas, filtro.CrimesSelecionados, filtro.SituacaoDoCarater, dataInicial, dataFinal, pagina, registrosPorPagina, false, out quantidadeEncontrada); var modelo = new ModeloDeListaDeCaraters(caraters, quantidadeEncontrada, filtro); return(modelo); } catch (Exception ex) { throw new ExcecaoDeAplicacao("Erro ao consultar os caráters"); } }
public ModeloDeListaDeCaraters GerarPDFeRetornar(ModeloDeFiltroDeCarater filtro, UsuarioLogado usuario) { try { DateTime?dataInicial = null; DateTime?dataFinal = null; if (!String.IsNullOrEmpty(filtro.DataInicio)) { dataInicial = DateTime.Parse(filtro.DataInicio); dataInicial = new DateTime(dataInicial.Value.Year, dataInicial.Value.Month, dataInicial.Value.Day, 0, 0, 0); } if (!String.IsNullOrEmpty(filtro.DataFim)) { dataFinal = DateTime.Parse(filtro.DataFim); dataFinal = new DateTime(dataFinal.Value.Year, dataFinal.Value.Month, dataFinal.Value.Day, 23, 59, 59); } var quantidadeEncontrada = 0; var caraters = this._servicoExternoDePersistencia.RepositorioDeCaraters.RetornarCaratersPorFiltro(filtro.Placa, filtro.CidadesSelecionadas, filtro.CrimesSelecionados, filtro.SituacaoDoCarater, dataInicial, dataFinal, 0, 30, true, out quantidadeEncontrada); var modelo = new ModeloDeListaDeCaraters(caraters, quantidadeEncontrada, filtro); modelo.ArquivoHtml = RetornaHtmlDaLista(modelo.Lista.OrderBy(a => a.PlacaInicial).ToList(), dataInicial != null? dataInicial.Value : DateTime.MinValue, dataFinal != null ? dataFinal.Value : DateTime.MinValue, usuario); return(modelo); } catch (Exception ex) { throw new ExcecaoDeAplicacao("Erro ao consultar os caráters"); } }
public ModeloDeListaDeCaraters BuscarCaraterPorPlaca(string placa) { try { var quantidadeEncontrada = 0; var caraters = this._servicoExternoDePersistencia.RepositorioDeCaraters.BuscarCaratersPorFragmentos(placa); var modelo = new ModeloDeListaDeCaraters(caraters, quantidadeEncontrada, new ModeloDeFiltroDeCarater()); return(modelo); } catch (Exception ex) { throw new ExcecaoDeAplicacao("Erro ao consultar os caráters"); } }
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 Dashboard(ModeloDeListaDeCaraters modelo) { if (User.Autenticado()) { modelo = this._servicoDeGestaoDeCaraters.RetonarCaratersPorCidades(modelo.Filtro); modelo.Filtro.Cidades = ListaDeItensDeDominio.DaClasseSemOpcaoPadrao <Cidade>(nameof(Cidade.Descricao), nameof(Cidade.Id), () => this._servicoDeGestaoDeCidades.RetonarCidadesPorUf(7)); modelo.Filtro.CidadesLocalizacao = ListaDeItensDeDominio.DaClasseComOpcaoPadrao <Cidade>(nameof(Cidade.Descricao), nameof(Cidade.Id), () => this._servicoDeGestaoDeCidades.RetonarCidadesPorUf(7)); if (modelo.Filtro.CidadesSelecionadas != null) { foreach (var cidade in modelo.Filtro.CidadesSelecionadas) { modelo.Filtro.Cidades.FirstOrDefault(a => a.Value == cidade.ToString()).Selected = true; } } return(View(nameof(Dashboard), modelo)); } return(View()); }