public async Task <byte[]> ReportAntivetorialTotalizador([FromHeader] string ibge, [FromBody] ReportParamsLevPredialViewModel report) { try { ibge = _config.GetConnectionString(Connection.GetConnection(ibge)); var relatorio = new ReportEndemiasViewModel(); relatorio.ibge = ibge; relatorio.unidade = (int)report.unidadelogadaParam; string filtrotexto = string.Empty; string filtrodata = string.Empty; string filtrobairro = string.Empty; string filtroprofissional = string.Empty; if (report.dataInicial == null) { throw new Exception("A data inicial deve ser informada!"); } if (report.dataFinal == null) { throw new Exception("A data final deve ser informada!"); } filtrotexto += $@"Período: {report.dataInicial?.ToString("dd/MM/yyyy")} a {report.dataFinal?.ToString("dd/MM/yy")}"; filtrodata += $@" CAST(VI.DATA_HORA_ENTRADA AS DATE) BETWEEN '{report.dataInicial?.ToString("dd.MM.yyyy")}' AND '{report.dataFinal?.ToString("dd.MM.yyyy")}' "; if (!string.IsNullOrWhiteSpace(report.bairro)) { filtrotexto += $@", Bairro: {report.nomeBairro}"; filtrobairro += $@" AND B.CSI_CODBAI = {report.bairro} "; } if (!string.IsNullOrWhiteSpace(report.profissionais)) { //filtrotexto += $@", Profissionais: {report.nomeProfissional}"; filtroprofissional += $@" AND VI.ID_PROFISSIONAL IN ({report.profissionais}) "; } else { filtrotexto += $@", Profissionais: TODOS"; } //preencher aqui a view model de relatorio com as informações consultadas var antivetorialTotalizador = _repository.GetAntivetorialTotalizador(ibge, filtrodata + filtrobairro, filtrodata + filtrobairro + filtroprofissional); var antivetorialTrabalhoCampoTotais = _repository.GetAntivetorialTrabalhoCampoTotais(ibge, filtrodata + filtrobairro + filtroprofissional); var antivetorialResumoLab = _repository.GetAntivetorialResumoLab(ibge, filtrodata + filtrobairro + filtroprofissional, filtrodata + filtrobairro + filtroprofissional); var antivetorialInfectados = _repository.GetAntivetorialInfectados(ibge, filtrodata + filtrobairro + filtroprofissional); relatorio.AntivetorialTotalizador = antivetorialTotalizador; relatorio.AntivetorialCamposTotais = antivetorialTrabalhoCampoTotais; relatorio.AntivetorialResumoLab.AddRange(antivetorialResumoLab); relatorio.AntivetorialInfectados.AddRange(antivetorialInfectados); relatorio.impresso_por = $"Relatório emitido por {report.usuarioParam} - {DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")}"; relatorio.filtro = filtrotexto; relatorio.cabecalho = _segrepository.GetCabecalhoPaisagem(ibge, (int)report.unidadelogadaParam); var model = GeraReportAntivetorialTotalizador(relatorio); return(await model); } catch (Exception ex) { throw ex; } }
public async Task <byte[]> ReportLevantamentoPredial([FromHeader] string ibge, [FromBody] ReportParamsLevPredialViewModel report) { try { ibge = _config.GetConnectionString(Connection.GetConnection(ibge)); var relatorio = new ReportEndemiasViewModel(); relatorio.ibge = ibge; relatorio.unidade = (int)report.unidadelogadaParam; string filtrotexto = string.Empty; string filtro = string.Empty; if (report.dataInicial != null) { filtro += $@" AND VI.DATA_HORA_ENTRADA >= '{report.dataInicial?.ToString("dd.MM.yyyy")}'"; filtrotexto += $@"Entre {report.dataInicial?.ToString("dd/MM/yyyy")} "; } if (report.dataFinal != null) { filtro += $@" AND VI.DATA_HORA_SAIDA <= '{report.dataFinal?.ToString("dd.MM.yyyy")}'"; filtrotexto += $@"e {report.dataFinal?.ToString("dd/MM/yyyy")} ."; } if (!string.IsNullOrWhiteSpace(report.bairro)) { filtro += $@" AND B.CSI_CODBAI IN({report.bairro})"; } var itens = _repository.GetInfestacaoPredialReport(ibge, filtro); relatorio.itens.AddRange(itens); relatorio.impresso_por = $"Relatório emitido por {report.usuarioParam} - {DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")}"; relatorio.filtro = filtrotexto; relatorio.cabecalho = _segrepository.GetCabecalhoPaisagem(ibge, (int)report.unidadelogadaParam); //if (itens.Count == 0) // return BadRequest(TrataErro.GetResponse("Não foram encontrados registros!", true)); //return BadRequest(TrataErro.GetResponse("Existem doses desse Lote que já foram retiradas do Estoque. Não é possível editar o Lote.", true)); var model = GeraReportLevantamentoPredial(relatorio, (int)report.tipo); return(await model); } catch (Exception ex) { throw ex; } }
public async Task <byte[]> ReportAntivetorialAnalitico([FromHeader] string ibge, [FromBody] ReportParamsLevPredialViewModel report) { try { ibge = _config.GetConnectionString(Connection.GetConnection(ibge)); var relatorio = new ReportEndemiasViewModel(); relatorio.ibge = ibge; relatorio.unidade = (int)report.unidadelogadaParam; relatorio.datainicial = report.dataInicial; relatorio.datafinal = report.dataFinal; relatorio.ciclo = _ciclorepository.ValidaExistenciaCicloPeriodo(ibge, report.dataInicial, report.dataFinal).Take(1).FirstOrDefault()?.num_ciclo; string filtrotexto = string.Empty; string filtro = string.Empty; if (report.dataInicial == null) { throw new Exception("A data inicial deve ser informada!"); } if (report.dataFinal == null) { throw new Exception("A data final deve ser informada!"); } filtrotexto += $@"Período: {report.dataInicial?.ToString("dd/MM/yyyy")} a {report.dataFinal?.ToString("dd/MM/yy")}"; filtro += $@"WHERE CAST(VI.DATA_HORA_ENTRADA AS DATE) BETWEEN '{report.dataInicial?.ToString("dd.MM.yyyy")}' AND '{report.dataFinal?.ToString("dd.MM.yyyy")}'"; //if (report.tipo == 0) filtrotexto += $@", Tipo de Relatório: Analítico;"; //else // filtrotexto += $@", Tipo de Relatório: Totalizador;"; if (!string.IsNullOrWhiteSpace(report.profissionais)) { filtrotexto += $@", Profissionais: {report.nomeProfissional}"; filtro += $@" AND VI.ID_PROFISSIONAL IN ({report.profissionais})"; } else { filtrotexto += $@", Profissionais: TODOS"; } if (!string.IsNullOrWhiteSpace(report.nomeBairro)) { filtrotexto += $@", Bairro: {report.nomeBairro}"; filtro += $@" AND B.CSI_CODBAI = {report.bairro}"; } var itens = _repository.GetAntivetorialAnatico(ibge, filtro); relatorio.AntivetorialAnalitico.AddRange(itens); relatorio.impresso_por = $"Relatório emitido por {report.usuarioParam} - {DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")}"; relatorio.filtro = filtrotexto; relatorio.cabecalho = _segrepository.GetCabecalhoPaisagem(ibge, (int)report.unidadelogadaParam); var model = GeraReportAntivetorialAnalitico(relatorio); return(await model); } catch (Exception ex) { throw ex; } }