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);
        }
    }
Exemple #2
0
 public VentaN()
 {
     ventaBD         = new VentaBD();
     ventaProductoBD = new VentaProductoBD();
     clienteBD       = new ClienteBD();
     productoBD      = new ProductoBD();
 }
Exemple #3
0
    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 cargarDatos(int itemrow)
    {
        Funciones  f      = new Funciones();
        ProductoBD prodBD = new ProductoBD();

        int proid  = Convert.ToInt32(gvProducto.Rows[itemrow].Cells[2].Text);
        int provid = Convert.ToInt32(gvProducto.Rows[itemrow].Cells[3].Text);
        int cateid = int.Parse(ddlGcateid.SelectedValue.ToString());

        Producto prod = prodBD.ConsultarP(proid, cateid, provid);

        //text
        txtId.Text          = prod.Proid.ToString();
        txtNombre.Text      = f.Mayus(prod.Nombre);
        txtStock.Text       = prod.Stock.ToString();
        txtPrecio.Text      = prod.Precio.ToString();
        txtSize.Text        = prod.Size;
        txtUrl.Text         = prod.Url;
        txtDescripcion.Text = prod.Descripcion;
        //dropdownlists
        ddlCateid.SelectedIndex = int.Parse(ddlGcateid.SelectedIndex.ToString());
        ddlCateid.Enabled       = false;
        ddlProvid.SelectedIndex = prod.Provid - 1;
        ddlProvid.Enabled       = false;
        //imagen
        string fn = category(int.Parse(ddlCateid.SelectedValue.ToString()))
                    + "/big" + txtId.Text + ".jpg";

        imgProducto.Visible  = true;
        imgProducto.ImageUrl = "http://viveromarket.com/images/" + fn;
    }
    private void llenarProductos(int cateid)
    {
        ProductoBD      prodBD  = new ProductoBD();
        List <Producto> lstProd = prodBD.Consultar(cateid);

        this.gvProducto.DataSource = lstProd;
        gvProducto.DataBind();
    }
    private void llenarProductos(int cateid)
    {
        proveid = int.Parse(Convert.ToString(Session["userid"]));
        ProductoBD      prodBD  = new ProductoBD();
        List <Producto> lstProd = prodBD.ConsultarListProv(cateid, proveid);

        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);
    }
    //Boton Guardar
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        Producto   prod  = creaUI();
        ProductoBD proBD = new ProductoBD();

        //validamos cantidad de caracteres en descripción
        if (cvDescripcion.IsValid == true)
        {
            //por v= Insercion; por f= actualizacion
            if (txtId.Text == lastId().ToString())
            {
                /*Flag respuesta*/
                string flag;
                flag = proBD.ExisteProd(prod);
                if (flag == "0")     //no existe
                {
                    //validamos que control de subida de imagen
                    if (cvFlimage.IsValid == true)
                    {
                        proBD.Insertar(prod);
                        UploadImagen(0);
                        lblMensaje.Text = "Registro Exitoso";
                    }
                }
                else
                {
                    lblMensaje.Text = "Cliente ya existe";
                }
            }
            else
            {
                proBD.Actualizar(prod);
                if (chkActImage.Checked == false)
                {
                    UploadImagen(1);
                }

                lblMensaje.Text = "Actualización Exitosa";
            }
            llenarProductos(int.Parse(ddlGcateid.SelectedValue.ToString()));
            Limpiar();
            ultimoId();
            noControles();
        }
    }
    //Boton eliminar del Grid
    protected void gvProducto_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        String msg;

        lblMensaje.Text = "";
        int proid  = Convert.ToInt32(gvProducto.Rows[(Convert.ToInt32(e.RowIndex))].Cells[2].Text);
        int provid = Convert.ToInt32(gvProducto.Rows[(Convert.ToInt32(e.RowIndex))].Cells[3].Text);
        int cateid = int.Parse(ddlGcateid.SelectedValue.ToString());
        //instanciamos ProdBD para acceder al metodo eliminar
        ProductoBD prodBD = new ProductoBD();

        msg = prodBD.Eliminar(proid, cateid, provid);
        eliminarImagen(proid.ToString(), category(cateid));
        lblMensaje.Text = msg;
        //recargar pagina
        llenarProductos(int.Parse(ddlGcateid.SelectedValue.ToString()));
        Limpiar();
        ultimoId();
        noControles();
    }
Exemple #12
0
    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;
    }
Exemple #13
0
 public ProductoN()
 {
     productoBD     = new ProductoBD();
     tipoProductoBD = new TipoProductoBD();
 }