public IList <Usuario> GetByCriterio(BusquedaView busqueda) { if (busqueda.Tipo == 1) { busqueda.Campo = "ut.UsuarioTipoRol"; } else if (busqueda.Tipo == 2) { busqueda.Campo = "u.UsuarioNombre"; } else if (busqueda.Tipo == 3) { busqueda.Campo = "u.UsuarioDni"; } else { busqueda.Campo = "u.UsuarioEmail"; } IList <Usuario> res = new List <Usuario>(); using (SqlConnection connection = new SqlConnection(connectionString)) { string sql = $"SELECT u.IdUsuario, u.UsuarioNombre, u.UsuarioApellido, " + $"u.UsuarioDni, u.UsuarioTelefono, " + $"u.UsuarioEmail, u.UsuarioClave, " + $"u.UsuarioSalt, u.UsuarioDomicilio, u.IdUsuarioTipo, ut.UsuarioTipoRol" + $" FROM Usuario u INNER JOIN UsuarioTipo ut ON u.IdUsuarioTipo = ut.IdUsuarioTipo " + $"WHERE {busqueda.Campo} LIKE '%{busqueda.Criterio}%'"; using (SqlCommand command = new SqlCommand(sql, connection)) { command.CommandType = CommandType.Text; connection.Open(); var reader = command.ExecuteReader(); while (reader.Read()) { Usuario entidad = new Usuario { IdUsuario = reader.GetInt32(0), UsuarioNombre = reader.GetString(1), UsuarioApellido = reader.GetString(2), UsuarioDni = reader.GetString(3), UsuarioTelefono = reader.GetString(4), UsuarioEmail = reader.GetString(5), UsuarioClave = reader.GetString(6), UsuarioSalt = reader.GetString(7), UsuarioDomicilio = reader.GetString(8), IdUsuarioTipo = reader.GetInt32(9), Tipo = new UsuarioTipo { IdUsuarioTipo = reader.GetInt32(9), UsuarioTipoRol = reader.GetString(10), } }; res.Add(entidad); } connection.Close(); } } return(res); }
public IList <Inmueble> GetByCriterio(BusquedaView busqueda) { if (busqueda.Tipo == 1) { busqueda.Campo = "u.UsuarioDni"; } else if (busqueda.Tipo == 2) { busqueda.Campo = "u.UsuarioNombre"; } else if (busqueda.Tipo == 3) { busqueda.Campo = "i.InmuebleAmbientes"; } else if (busqueda.Tipo == 4) { busqueda.Campo = "i.InmuebleEstado"; busqueda.Criterio = "0"; } else { busqueda.Campo = "i.InmuebleEstado"; busqueda.Criterio = "1"; } IList <Inmueble> res = new List <Inmueble>(); using (SqlConnection connection = new SqlConnection(connectionString)) { string sql = $"SELECT i.IdInmueble, i.InmuebleDomicilio, i.InmuebleLatitud, " + $"i.InmuebleLongitud, i.InmueblePrecio, " + $"i.InmuebleAmbientes, i.InmuebleEstado, " + $"i.IdInmuebleUso, i.IdInmuebleTipo, i.IdUsuario, iu.InmuebleUsoNombre, it.InmuebleTipoNombre, u.UsuarioNombre, u.UsuarioDni " + $"FROM Inmueble i JOIN Usuario u ON u.IdUsuario = i.IdUsuario " + $" JOIN InmuebleTipo it ON it.IdInmuebleTipo = i.IdInmuebleTipo " + $" JOIN InmuebleUso iu ON iu.IdInmuebleUso = i.IdInmuebleUso " + $" WHERE u.IdUsuarioTipo = 3 and {busqueda.Campo} LIKE '%{busqueda.Criterio}%' "; using (SqlCommand command = new SqlCommand(sql, connection)) { command.CommandType = CommandType.Text; connection.Open(); var reader = command.ExecuteReader(); while (reader.Read()) { Inmueble entidad = new Inmueble { IdInmueble = reader.GetInt32(0), InmuebleDomicilio = reader.GetString(1), InmuebleLatitud = reader.GetDecimal(2), InmuebleLongitud = reader.GetDecimal(3), InmueblePrecio = reader.GetDecimal(4), InmuebleAmbientes = reader.GetInt32(5), InmuebleEstado = reader.GetByte(6), IdInmuebleUso = reader.GetInt32(7), IdInmuebleTipo = reader.GetInt32(8), IdUsuario = reader.GetInt32(9), InmuebleUso = new InmuebleUso { IdInmuebleUso = reader.GetInt32(7), InmuebleUsoNombre = reader.GetString(10), }, InmuebleTipo = new InmuebleTipo { IdInmuebleTipo = reader.GetInt32(8), InmuebleTipoNombre = reader.GetString(11), }, Usuario = new Usuario { IdUsuarioTipo = reader.GetInt32(9), UsuarioNombre = reader.GetString(12), UsuarioDni = reader.GetString(13), } }; res.Add(entidad); } connection.Close(); } } return(res); }