public DTO RealizarConsultaDinamica(DTO miDTO) { List <string> provincias = miDTO.getProvincias(); List <string> cantones = miDTO.getCantones(); List <string> distritos = miDTO.getDistritos(); string anioInicio = miDTO.getAnios()[0]; string anioFinal = miDTO.getAnios()[1]; List <Indicador> indicadores = new List <Indicador>(); foreach (KeyValuePair <string, string> entry in miDTO.getIndicadoresUsuario()) { indicadores.Add(new Indicador(entry.Key, entry.Value)); } Localizaciones localizaciones = new Localizaciones(provincias, cantones, distritos); QueryDinamica queryDinamica = new QueryDinamica( provincias, cantones, distritos, int.Parse(anioInicio), int.Parse(anioFinal), indicadores ); Handler_Mapas miManejador = new Handler_Mapas(); DTO miCarrito = new DTO(ConstruirURL(miManejador.realizarConsulta(queryDinamica))); return(miCarrito); }
public DataTable correrQueryDinamico(QueryDinamica queryDinamica) { string query = ""; if (queryDinamica.indicadores.Count > 0) { TipoLesion tipoLesionDecorador = new TipoLesion(queryDinamica, queryDinamica.indicadores); Genero generoDecorador = new Genero(tipoLesionDecorador, tipoLesionDecorador.indicadores); EdadQuincenal edadQuincenal = new EdadQuincenal(generoDecorador, generoDecorador.indicadores); TipoAfectado tipoAfectado = new TipoAfectado(edadQuincenal, edadQuincenal.indicadores); query = tipoAfectado.construirConsulta(); query = query.Replace(" AND {4}", ""); } else { query = queryDinamica.construirConsulta(); query = query.Replace("{4}", "1 = 1"); } return(RealizarConsulta(query)); }
public ColeccionResultado realizarConsulta(QueryDinamica query) //TODO no se si vamos a pasarle el query por un dto o por parametros separados { DAO_Query dao = new DAO_Query(); DataTable datos = procesarResultadosQuery(dao.correrQueryDinamico(query)); //List<ResultadoDinamica> info = new List<ResultadoDinamica>(); //-- ColeccionResultado resultados = new ColeccionResultado(); //-- foreach (DataRow row in datos.Rows) // nombre_[provincia|canton|distrito], latitud, longitud, Accidentes { //-- resultados.addResultado ( row["Accidentes"].ToString(), convertirCoordenada(row["latitud"].ToString()), convertirCoordenada(row["longitud"].ToString()) ); //-- /*ResultadoDinamica miResultado = new ResultadoDinamica(); * //resultado.setProvincia(row["nombre_provincia"].ToString()); * //resultado.setCanton(row["nombre_canton"].ToString()); * //resultado.setDistrito(row["nombre_distrito"].ToString()); * miResultado.setLatitud(convertirCoordenada(row["latitud"].ToString())); * miResultado.setLongitud(convertirCoordenada(row["longitud"].ToString())); * miResultado.setAccidentes(row["Accidentes"].ToString()); * * info.Add(miResultado);*/ } return(resultados); }