private String query;
private List<Anuncio_Vehiculo> bav;
org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("c3p0.DataSourceC3P0");
public List<Anuncio_Vehiculo> MostrarVehiculo(String palabra, String nombre, String nombreEstado, String marca, String modelo, String pmin, String pmax, String version, String kmin, String kmax, String combustible, String amin, String amax) {
try {
conn = dconexion.getConnection();
query = "select av.Id_Anuncio_Vehiculos, av.Titulo, av.Descripcion, av.Precio, av.Fecha_pub, av.kilometraje, ma.nombre, ea.Nombre,\n"
+ "avc.anos, mv.nombre_modelo, mvc.nombre_marca, vvc.nombre_version, tvc.Nombre,\n"
+ "(select ruta from imagen_vehiculo iv where av.Id_Anuncio_Vehiculos=iv.Id_Vehiculo limit 1) as ruta,\n"
+ "(select count(*) as no_rutas from imagen_vehiculo iv where iv.Id_Vehiculo=av.Id_Anuncio_Vehiculos) as no_rutas,\n"
+ "(select nombre from combustible_vehiculos_catalogo cvc where cvc.Id_Combustible=? and cvc.Id_Combustible=av.Id_Combustible)as combustible,\n"
+ "(select nombre from color_vehiculo_catalogo covc where covc.Id_Color_Vehiculo_Catalogo=av.Id_Color)as color\n"
+ "from anuncio_vehiculo av, estado_anuncio ea, municipio_anuncio ma,ano_vehiculo_catalogo avc, ano_modelo_version amv, modelos_vehiculos mv, marca_vehiculo_catalogo mvc,\n"
+ "version_vehiculos_catalogos vvc, tipo_vehiculo_catalogo tvc\n"
+ "where av.Id_Minicipio=ma.Id_Municipio_Anuncio and ea.Id_Estado=ma.Id_Estado and av.id_ano_model_version=amv.id_ano_modelo_version and avc.id_anio_vehiculo=amv.id_ano_vehiculos\n"
+ "and mv.id_modelo_vehiculo=amv.id_modelo_vehiculos and mvc.id_marca_vehiculo=mv.id_marca_vehiculo and vvc.id_version_vehiculos=amv.id_version_vehiculos\n"
+ "and tvc.Id_Tipo_Vehiculo=vvc.id_version_vehiculos and av.Titulo like ? or av.Precio>=? and av.Precio<=? or av.kilometraje>=? and av.kilometraje<=? or avc.anos>=? and avc.anos<=?\n"
+ "and mv.id_modelo_vehiculo=? or mv.id_marca_vehiculo=? or vvc.id_version_vehiculos=? or tvc.Id_Tipo_Vehiculo=? or ea.Id_Estado=? ;";
PreparedStatement st = conn.prepareStatement(query);
logger.info("combustible " + combustible);
logger.info("palabra " + palabra);
logger.info("pmin " + pmin);
logger.info("pmax " + pmax);
logger.info("kmin " + kmin);
logger.info("kmax " + kmax);
logger.info("amin " + amin);
logger.info("amax " + amax);
logger.info("modelo " + modelo);
logger.info("marca " + marca);
logger.info("version " + version);
logger.info("nombre tipo " + nombre);
logger.info("nombreEstado " + nombreEstado);
st.setInt(1, Integer.valueOf(combustible));
st.setString(2, "%" + palabra + "");
st.setString(3, "pmin");
st.setString(4, "pmax");
st.setString(5, "kmin");
st.setString(6, "kmax");
st.setString(7, "amin");
st.setString(8, "amax");
st.setInt(9, Integer.valueOf(modelo));
st.setInt(10, Integer.valueOf(marca));
st.setInt(11, Integer.valueOf(version));
st.setInt(12, Integer.valueOf(nombre));
st.setInt(13, Integer.valueOf(nombreEstado));
ResultSet result = st.executeQuery();
bav = new ArrayList<Anuncio_Vehiculo>();
while (result.next()) {
Anuncio_Vehiculo bavs = new Anuncio_Vehiculo();
bavs.setId_publicacion(result.getString("Id_Anuncio_Vehiculos").toString());
bavs.setTitulo(result.getString("titulo"));
bavs.setDescripcion2(result.getString("Descripcion"));
bavs.setPreciop(String.valueOf(result.getFloat("precio")));
bavs.setFecha(result.getDate("fecha_pub").toString());
bavs.setDescripcion1(result.getString("nombre"));
bavs.setRuta(result.getString("ruta"));
bavs.setNo_rutas(result.getString("no_rutas").toString());
bavs.setCategoria("Vehículos");
bavs.setLista_imagenes(imgd.getListImagenes(bavs.getId_publicacion()));
bav.add(bavs);
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("Problema en el metodo de la consulta");
} finally {
if (conn != null) {
try {
conn.close();
} catch (SQLException ex) {
Logger.
getLogger(AnuncioVehiculoDao.
class.
getName()).
log(Level.
SEVERE, null, ex
); }
}
}
return bav;
}