package examenes.examen20250321.controlador;

import examenes.examen20250321.modelo.Localidad;
import examenes.examen20250321.modelo.Vivienda;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;

public class ControladorVivienda {
    public static List<Vivienda> getAllViviendasFromLocalidadYFiltrado(Localidad l, String textoAFiltrar) {
        Connection conn = GestorConexiones.getConnection();
        List<Vivienda> viviendas = new ArrayList<>();
        try {
            PreparedStatement pt = null;
            if (Objects.equals(textoAFiltrar, "")) {
                pt = conn.prepareStatement("select * from vivienda where idLocalidad = ?;");
            } else {
                pt = conn.prepareStatement("select * from vivienda where idLocalidad = ? and descripcion like ?;");
                pt.setString(2, "%" + textoAFiltrar + "%");
            }
            pt.setInt(1, l.getId());
            ResultSet rs = pt.executeQuery();

            while (rs.next()) {
                viviendas.add(new Vivienda(rs.getInt("id"), rs.getString("descripcion"), rs.getInt("idLocalidad")));
            }


        } catch (SQLException e) {
            throw new RuntimeException(e);
        }
        return viviendas;
    }
}
