private bool checkStock(int qty) { //validamos si carro de compras esta vacio if (Session["mycart"] != null) { ArrayList arr = (ArrayList)Session["mycart"]; //For para barrer carrito si existe producto, //pregunte por cantidad + lo que ya existe en cantidad del carrito for (int i = 0; i < arr.Count; i++) { if (((ItemCart)arr[i]).Pid == pid && ((ItemCart)arr[i]).Cid == cid) { qty = qty + ((ItemCart)arr[i]).Cantidad; } } } //true si es que hay stock disponible bool resp = true; ProductoBD pBD = new ProductoBD(); Producto prod = pBD.Consultar(pid, cid, prov); //si la cantidad es mayor al stock disponoble, return false if (qty > prod.Stock) { resp = false; } return(resp); }
private void ActualizaStock() { foreach (GridViewRow gvd in gvDetalle.Rows) { //instanciamos productoBD para acceder a sus metodos ProductoBD pBD = new ProductoBD(); //vector codigo que toma el productoid y codigoid combinado //funcion split para posteriormente guardar en variables int string[] codigo = gvd.Cells[0].Text.ToString().Split('C'); string[] codigo2 = codigo[1].Split('V'); int gpid, gcid, gprov; //variable para evaluar el arreglo carrito gpid = Convert.ToInt32(codigo[0].Substring(1)); gcid = Convert.ToInt32(codigo2[0]); gprov = Convert.ToInt32(codigo2[1]); //consultamos stock del producto para luego actualizar Producto prod = pBD.Consultar(gpid, gcid, gprov); int stock = prod.Stock; //tomamos la cantidad que el cliente desea comprar para luego restar y actulizar producto int cantidad = int.Parse(gvd.Cells[2].Text.ToString()); int newstock = stock - cantidad; //actualizamos stock en la base a cada producto pBD.ActualizaStock(gpid, gcid, gprov, newstock); } }
private void llenarProductos(int cateid) { ProductoBD prodBD = new ProductoBD(); List <Producto> lstProd = prodBD.Consultar(cateid); this.gvProducto.DataSource = lstProd; gvProducto.DataBind(); }
protected void lknActualizar_Click(object sender, EventArgs e) { if (Session["mycart"] != null) { ProductoBD pBD = new ProductoBD(); //foreach para recorrer el grid por filas foreach (GridViewRow dgc in gvCart.Rows) { //vector codigo que toma el productoid y codigoid combinado //funcion split para posteriormente guardar en variables int string[] codigo = dgc.Cells[1].Text.ToString().Split('C'); string[] codigo2 = codigo[1].Split('V'); int gpid, gcid, gprov; //variable para evaluar el arreglo carrito gpid = Convert.ToInt32(codigo[0].Substring(1)); gcid = Convert.ToInt32(codigo2[0]); gprov = Convert.ToInt32(codigo2[1]); //llenado en variable de nueva cantidad especificada por el usuario TextBox t = (TextBox)dgc.Cells[3].Controls[1]; //valida que el textbox cantidad no este vacio y no sea cero if (t.Text != "" && int.Parse(t.Text) != 0) { int newqty = int.Parse(t.Text); //instancia de arreglo de carrito de compras ArrayList arr = (ArrayList)Session["mycart"]; //For para barrer el arreglo y obtener calculos actualizando el carrito for (int i = 0; i < arr.Count; i++) { if (((ItemCart)arr[i]).Pid == gpid && ((ItemCart)arr[i]).Cid == gcid && ((ItemCart)arr[i]).Prov == gprov) { Producto prod = pBD.Consultar(gcid, gcid, gprov); //valida stock if (newqty > prod.Stock) { ((ItemCart)arr[i]).MsgStock = "No tenemos suficiente stock para su pedido"; } else { ((ItemCart)arr[i]).MsgStock = ""; //actualiza la cantidad con la nueva especificada por el usuario ((ItemCart)arr[i]).Cantidad = newqty; //actualiza subtotal ((ItemCart)arr[i]).SubTotal = ((ItemCart)arr[i]).PrecioUni * ((ItemCart)arr[i]).Cantidad; } } } } } //llenado del gvcart llenarGrid(); Response.Redirect("swvmicart05.aspx"); } else { Response.Redirect("swvmicart05.aspx"); } }
private int lastId() { //encuentra el ultimo id traido desde la lista segun categoria y le suma 1 para futura incersion int lastid = 0; ProductoBD prodBD = new ProductoBD(); List <Producto> lstProd = prodBD.Consultar(int.Parse(ddlGcateid.SelectedValue.ToString())); lastid = lstProd[lstProd.Count - 1].Proid + 1; return(lastid); }
private Producto getDatos() { //getParametros(); //instanciamos productobd para accedere a sus metodos ProductoBD productobd = new ProductoBD(); //instanciamos producto para recibir datos Producto producto = new Producto(); producto = productobd.Consultar(pid, cid, prov); return(producto); }
private void loadDetalle() { //instanciamos funciones para utilizar las Mayusculas Funciones funciones = new Funciones(); loadParametros(); //instanciamos productobd para accedere a sus metodos ProductoBD productobd = new ProductoBD(); //instanciamos producto para recibir datos Producto producto = new Producto(); producto = productobd.Consultar(pid, cid, prov); this.lblNombre.Text = funciones.Mayus(producto.Nombre); this.lblPrecio.Text = producto.Precio.ToString().Substring(0, (producto.Precio.ToString().Length) - 2); this.lblSize.Text = producto.Size; this.lblStock.Text = producto.Stock.ToString(); this.lblDetalle.Text = producto.Descripcion; this.lblProveedor.Text = funciones.Mayus(nameProv(producto.Provid)); this.imgProducto.ImageUrl = "images/" + rutaimg + "/big" + producto.Image; }