public List<Select.Producto> search_Producto(Search.Producto p) { try { List<Select.Producto> productos = new List<Select.Producto>(); Select.Producto prd; DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(); string ConnString = ConfigurationManager.ConnectionStrings["barabaresConnectionString"].ConnectionString; using (SqlConnection SqlConn = new SqlConnection(ConnString)) { try { SqlConn.Open(); } catch (Exception ex) { Debug.WriteLine(ex.ToString()); return productos; } SqlCommand sqlCmd = new SqlCommand("PRODUCTO_SEARCH", SqlConn); sqlCmd.CommandType = CommandType.StoredProcedure; sqlCmd.Parameters.Add("@ipsNombre", SqlDbType.VarChar).Value = p.Nombre; sqlCmd.Parameters.Add("@ipnMinimo", SqlDbType.Real).Value = p.Minimo; sqlCmd.Parameters.Add("@ipnMaximo", SqlDbType.Real).Value = p.Maximo; sqlCmd.Parameters.Add("@ipnIdUnidadProducto", SqlDbType.Int).Value = p.IdUnidadProducto; sqlCmd.Parameters.Add("@ipnIdTipoProducto", SqlDbType.Int).Value = p.IdTipoProducto; sqlCmd.Parameters.Add("@ipnPresentacion", SqlDbType.Int).Value = p.Presentacion; sqlCmd.Parameters.Add("@ipbEstado", SqlDbType.Bit).Value = p.Activo; sqlCmd.Parameters.Add("@ipdDesde", SqlDbType.DateTime).Value = p.Desde; sqlCmd.Parameters.Add("@ipdHasta", SqlDbType.DateTime).Value = p.Hasta; sda.SelectCommand = sqlCmd; sda.Fill(dt); SqlConn.Close(); sqlCmd.Dispose(); sda.Dispose(); } DataRow[] rows = dt.Select(); for (int i = 0; i < rows.Length; i++) { prd = Utils.select_producto_parse(rows[i]); productos.Add(prd); } return productos; } catch (Exception ex) { Select.Producto prd = new Select.Producto(); LogBarabares b = new LogBarabares() { Accion = Constantes.LOG_BUSCAR, Servicio = Constantes.Search_Producto, Input = JsonSerializer.search_Producto(p), Descripcion = ex.ToString(), Clase = prd.GetType().Name, Aplicacion = Constantes.ENTORNO_SERVICIOS, Estado = Constantes.FALLA, Ip = "", IdUsuario = 1 //TODO: obtener usuario de la sesión }; Utils.add_LogBarabares(b); return new List<Select.Producto>(); } }
public static Select.Producto select_producto_parse(DataRow r) { Select.Producto p = new Select.Producto(); p.IdProducto = Int32.Parse(r["idProducto"].ToString()); p.Nombre = r["nombre"].ToString(); p.Descripcion = r["descripcion"].ToString(); p.Perecible = Boolean.Parse(r["perecible"].ToString()); p.PrecioUnitario = r["precioUnitario"].ToString(); p.FechaCreacion = DateTime.ParseExact(r["fechaCreacion"].ToString(), "M/d/yyyy h:mm:ss ttt", null); p.Presentacion = r["presentacion"].ToString(); p.Activo = Boolean.Parse(r["activo"].ToString()); return p; }
public List<Select.Producto> selectByTipo_Producto(int idTipo) { try { List<Select.Producto> productos = new List<Select.Producto>(); Select.Producto p; DataTable dt = new DataTable(); SqlDataAdapter sda = new SqlDataAdapter(); string ConnString = ConfigurationManager.ConnectionStrings["barabaresConnectionString"].ConnectionString; using (SqlConnection SqlConn = new SqlConnection(ConnString)) { try { SqlConn.Open(); } catch (Exception ex) { Debug.WriteLine(ex.ToString()); return productos; } SqlCommand sqlCmd = new SqlCommand("PRODUCTO_SELECT_BY_TIPO", SqlConn); sqlCmd.CommandType = CommandType.StoredProcedure; sqlCmd.Parameters.Add("@ipnIdTipoProducto", SqlDbType.Int).Value = idTipo; sda.SelectCommand = sqlCmd; sda.Fill(dt); SqlConn.Close(); sqlCmd.Dispose(); sda.Dispose(); } DataRow[] rows = dt.Select(); for (int i = 0; i < rows.Length; i++) { p = Utils.select_producto_parse(rows[i]); productos.Add(p); } return productos; } catch (Exception ex) { Select.Producto p = new Select.Producto(); LogBarabares b = new LogBarabares() { Accion = Constantes.LOG_LISTAR, Servicio = Constantes.SelectByTipo_Producto, Input = JsonSerializer.selectByTipo(idTipo), Descripcion = ex.ToString(), Clase = p.GetType().Name, Aplicacion = Constantes.ENTORNO_SERVICIOS, Estado = Constantes.FALLA, Ip = "", IdUsuario = 1 //TODO: obtener usuario de la sesión }; Utils.add_LogBarabares(b); return new List<Select.Producto>(); } }