public mantenerSolicitudesAdquisicionViewModel(SolicitudAdquisicion p, BuscadorSolicitudesAdquisicionViewModel model) { this.P = p; this.model = model; Lst = p.LstProductos; Habilitar(); }
public object Buscar(params object[] filters) { List<SolicitudAdquisicion> lstSolicitud = new List<SolicitudAdquisicion>(); DBConexion db = new DBConexion(); SqlDataReader reader; String where = ""; if (filters.Length > 1 && filters.Length <= 5) { string tienda = Convert.ToString(filters[0]); int estado = Convert.ToInt32(filters[1]); DateTime fechaIni = Convert.ToDateTime(filters[2]); DateTime fechaFin = Convert.ToDateTime(filters[3]); if (!String.IsNullOrEmpty(tienda)) { where += " and t.nombre like '%" + tienda+"%' " ; } if (estado != 4) { where += " and s.estado = " + estado; } else { where += " and s.estado <> 0 "; } if (fechaIni != null) { where += " and CONVERT(DATE,'" + fechaIni.ToString("yyyy-MM-dd") + "') <= CONVERT(DATETIME,s.fechaReg,103) "; } if (fechaFin != null) { where += " and CONVERT(DATE,'" + fechaFin.ToString("yyyy-MM-dd") + "') >= CONVERT(DATETIME,s.fechaReg,103) "; } } db.cmd.CommandText = "SELECT s.estado , s.idSolicitudAD ,s.fechaCierre, s.fechaReg , s.fechaAtencion , t.nombre " + "FROM SolicitudAdquisicion s INNER JOIN Tienda t ON s.idTienda = t.idTienda " + "WHERE 1=1 " + where; db.cmd.CommandType = CommandType.Text; db.cmd.Connection = db.conn; //MessageBox.Show(where); try { db.conn.Open(); reader = db.cmd.ExecuteReader(); while (reader.Read()) { SolicitudAdquisicion p = new SolicitudAdquisicion(); p.Estado = Convert.ToInt32(reader["estado"].ToString()); p.IdSolicitudAD = Convert.ToInt32 (reader["idSolicitudAD"].ToString()); p.NombreTienda = reader["nombre"].ToString(); p.FechaReg =reader["fechaReg"].ToString(); p.FechaAtencion = reader.IsDBNull(reader.GetOrdinal("fechaAtencion")) ? "" :reader["fechaAtencion"].ToString(); p.FechaCierre = reader.IsDBNull(reader.GetOrdinal("fechaCierre")) ? "" : reader["fechaCierre"].ToString(); p.Codigo = "SOL-"+Convert.ToString(10000000 + p.IdSolicitudAD); p.LstProductos = new ProductoxSolicitudAdSQL().Buscar(p.IdSolicitudAD) as List<ProductoxSolicitudAd>; p.Est = getEstado(p.Estado); lstSolicitud.Add(p); // MessageBox.Show("id = " + p.Codigo); } db.conn.Close(); } catch (Exception e) { MessageBox.Show(e.StackTrace.ToString()); } return lstSolicitud; }