Пример #1
0
        private void CargarRelacionados(int idCategoria, int idProducto)
        {
            ProductoBC        objProductoBC = new ProductoBC();
            List <ProductoBE> lstProductoBE = new List <ProductoBE>();
            ucProducto        producto;

            try
            {
                lstProductoBE = objProductoBC.Select_Producto_Top_Categoria(idCategoria, idProducto);

                if (lstProductoBE != null)
                {
                    foreach (ProductoBE p in lstProductoBE)
                    {
                        producto = (ucProducto)Page.LoadControl("~/usercontrol/ucProducto.ascx");
                        producto.SetParametros(p);

                        pnlRelacionados.Controls.Add(producto);
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #2
0
        private void CargarProducto()
        {
            ProductoBE objProductoBE = new ProductoBE();
            ProductoBC objProductoBC = new ProductoBC();

            try
            {
                objProductoBE = objProductoBC.Get_Producto(Convert.ToInt32(ViewState["ID_PRODUCTO"]));

                lblDescripcion.Text   = objProductoBE.Descripcion;
                lblNombre.Text        = objProductoBE.Nombre;
                lblNombreLink.Text    = objProductoBE.Nombre;
                lblPrecio.Text        = objProductoBE.Precio.ToString();
                lblDetalle.Text       = objProductoBE.Detalle;
                lblTecnica.Text       = objProductoBE.Caracteristica_Tecnica;
                lblCategoriaLink.Text = "<a href=\"/Categoria/" + objProductoBE.lstCategoriaBE[0].Id_Categoria + "\">" + objProductoBE.lstCategoriaBE[0].Nombre + "</a>";
                youtube = objProductoBE.Youtube;

                int cantidadImagenes = objProductoBE.lstImagen_ProductoBE.Count;

                imgPrincipal.ImageUrl   = "/images/productos/" + objProductoBE.lstImagen_ProductoBE[0].Nombre;
                imgSecundario2.ImageUrl = "/images/productos/" + objProductoBE.lstImagen_ProductoBE[0].Nombre;

                if (cantidadImagenes >= 2)
                {
                    imgSecundario3.ImageUrl = "/images/productos/" + objProductoBE.lstImagen_ProductoBE[1].Nombre;
                }
                else
                {
                    imgSecundario3.Visible = false;
                }

                if (cantidadImagenes >= 3)
                {
                    imgSecundario4.ImageUrl = "/images/productos/" + objProductoBE.lstImagen_ProductoBE[2].Nombre;
                }
                else
                {
                    imgSecundario4.Visible = false;
                }

                if (cantidadImagenes >= 4)
                {
                    imgSecundario5.ImageUrl = "/images/productos/" + objProductoBE.lstImagen_ProductoBE[3].Nombre;
                }
                else
                {
                    imgSecundario5.Visible = false;
                }

                CargarRelacionados(objProductoBE.lstCategoriaBE[0].Id_Categoria, objProductoBE.Id_Producto);

                LlenarOGTags(objProductoBE);
                CargarAtributos(objProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #3
0
        private void LlenarProductosTodos()
        {
            ProductoBC objProductoBC = new ProductoBC();

            try
            {
                ViewState["PRODUCTOS"] = objProductoBC.Select_Producto();
                LlenarProductos();
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #4
0
        private void LlenarProductos()
        {
            ProductoBC objProductoBC = new ProductoBC();

            try
            {
                gvProductos.DataSource = ViewState["PRODUCTOS"];
                gvProductos.DataBind();
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #5
0
        private void Buscar(string cadena)
        {
            ProductoBC        objProductoBC = new ProductoBC();
            List <ProductoBE> lstProductoBE = new List <ProductoBE>();

            try
            {
                lstProductoBE = objProductoBC.Get_Producto_Buscar(cadena, true);

                MostrarProductos(lstProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #6
0
        private void CargarDestacados()
        {
            ProductoBC          objProductoBC = new ProductoBC();
            List <ProductoBE>   lstProductoBE = new List <ProductoBE>();
            ucProductoDestacado productoDestacado;
            Panel pnlSlide = new Panel();
            Panel pnlRow   = new Panel();
            int   row      = 0;
            int   contador = 0;

            try
            {
                lstProductoBE = objProductoBC.Select_Producto_Destacado();

                foreach (ProductoBE p in lstProductoBE)
                {
                    if (row == 0)
                    {
                        pnlSlide = SlideDestacado();
                        pnlRow   = Row();
                    }

                    productoDestacado = (ucProductoDestacado)Page.LoadControl("~/usercontrol/ucProductoDestacado.ascx");
                    productoDestacado.SetParametros(p);

                    pnlRow.Controls.Add(productoDestacado);

                    if (row == 2 || contador == lstProductoBE.Count - 1)
                    {
                        pnlSlide.Controls.Add(pnlRow);
                        pnlDestacados.Controls.Add(pnlSlide);
                        row = 0;
                    }
                    else
                    {
                        row++;
                    }

                    contador++;
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #7
0
        public static ProductoBE GetProducto(int id_producto)
        {
            ProductoBC objProductoBC = new ProductoBC();
            ProductoBE objProductoBE = new ProductoBE();

            try
            {
                objProductoBE = objProductoBC.Get_Producto(id_producto);

                return(objProductoBE);
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }
Пример #8
0
        private void CargarNuevos(CasillaProducto casilla)
        {
            ProductoBC        objProductoBC = new ProductoBC();
            List <ProductoBE> lstProductoBE = new List <ProductoBE>();
            ucProducto        producto;

            try
            {
                switch (casilla)
                {
                case CasillaProducto.Nuevo:
                    lstProductoBE = objProductoBC.Select_Producto_Nuevo();
                    break;

                case CasillaProducto.Popular:
                    lstProductoBE = objProductoBC.Select_Producto_Popular();
                    break;
                }

                foreach (ProductoBE p in lstProductoBE)
                {
                    producto = (ucProducto)Page.LoadControl("~/usercontrol/ucProducto.ascx");
                    producto.SetParametros(p);

                    switch (casilla)
                    {
                    case CasillaProducto.Nuevo:
                        pnlNuevos.Controls.Add(producto);
                        break;

                    case CasillaProducto.Popular:
                        pnlPopulares.Controls.Add(producto);
                        break;
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #9
0
        private void CargarProductos(int idCategoria = 0)
        {
            ProductoBC        objProductoBC = new ProductoBC();
            List <ProductoBE> lstProductoBE = new List <ProductoBE>();

            try
            {
                if (idCategoria == 0)
                {
                    lstProductoBE = objProductoBC.Select_Producto_Activo();
                }
                else
                {
                    lstProductoBE = objProductoBC.Get_Producto_Categoria(idCategoria);
                }

                MostrarProductos(lstProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #10
0
        protected void gvProductos_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            try
            {
                if (e.CommandName.Equals("Habilitado"))
                {
                    ProductoBC objProductoBC = new ProductoBC();

                    objProductoBC.Update_Producto_Activo(Convert.ToInt32(e.CommandArgument));

                    List <ProductoBE> lstProductoBE = (List <ProductoBE>)ViewState["PRODUCTOS"];

                    for (int i = 0; i < lstProductoBE.Count; i++)
                    {
                        if (lstProductoBE[i].Id_Producto == Convert.ToInt32(e.CommandArgument))
                        {
                            lstProductoBE[i].Activo         = !lstProductoBE[i].Activo;
                            lstProductoBE[i].Img_Habilitado = "/images/" + (lstProductoBE[i].Activo ? "checkbox_checked.png" : "checkbox_unchecked.png");
                            break;
                        }
                    }

                    ViewState["PRODUCTOS"] = lstProductoBE;

                    LlenarProductos();
                }
                else if (e.CommandName.Equals("Edicion"))
                {
                    Response.Redirect("/administrador/producto.aspx?id_producto=" + e.CommandArgument);
                }
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
Пример #11
0
        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            ProductoBC objProductoBC = new ProductoBC();
            bool?      activo;

            try
            {
                switch (ddlActivoBuscar.SelectedValue)
                {
                case "0": activo = false; break;

                case "1": activo = true; break;

                default: activo = null; break;
                }

                ViewState["PRODUCTOS"] = objProductoBC.Get_Producto_Buscar(txtNombreBuscar.Text.Trim(), activo);
                LlenarProductos();
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
Пример #12
0
        private void MostrarProducto()
        {
            ProductoBC objProductoBC = new ProductoBC();

            try
            {
                ProductoBE objProductoBE = objProductoBC.Get_Producto(Convert.ToInt32(Request.QueryString["id_producto"]));

                txtNombre.Text                = objProductoBE.Nombre;
                txtPrecio.Text                = objProductoBE.Precio.ToString();
                chkDestacado.Checked          = objProductoBE.Destacado;
                txtDescripcionCorta.Text      = objProductoBE.Descripcion_Corta;
                txtDescripcion.Text           = objProductoBE.Descripcion;
                txtYoutube.Text               = objProductoBE.Youtube;
                txtDetalle.Text               = objProductoBE.Detalle;
                txtCaracteristicaTecnica.Text = objProductoBE.Caracteristica_Tecnica;

                lbCategoriaDestino.DataSource     = objProductoBE.lstCategoriaBE;
                lbCategoriaDestino.DataValueField = "Id_Categoria";
                lbCategoriaDestino.DataTextField  = "Nombre";
                lbCategoriaDestino.DataBind();

                foreach (CategoriaBE c in objProductoBE.lstCategoriaBE)
                {
                    lbCategoriaPartida.Items.Remove(new ListItem(c.Nombre, c.Id_Categoria.ToString()));
                }

                //lbColorDestino.DataSource = objProductoBE.lstColorBE;
                //lbColorDestino.DataValueField = "Id_Color";
                //lbColorDestino.DataTextField = "Nombre";
                //lbColorDestino.DataBind();

                //foreach (ColorBE c in objProductoBE.lstColorBE)
                //    lbColorPartida.Items.Remove(new ListItem(c.Nombre, c.Id_Color.ToString()));

                //string path = "/images/productos/";

                pnlImagen1.Style.Add("background-image", "url('" + PATH_IMG_PROD + objProductoBE.lstImagen_ProductoBE[0].Nombre + "')");

                if (objProductoBE.lstImagen_ProductoBE.Count >= 2)
                {
                    pnlImagen2.Style.Add("background-image", "url('" + PATH_IMG_PROD + objProductoBE.lstImagen_ProductoBE[1].Nombre + "')");
                }
                else
                {
                    lnkEliminarImagen2.Visible = false;
                }

                if (objProductoBE.lstImagen_ProductoBE.Count >= 3)
                {
                    pnlImagen3.Style.Add("background-image", "url('" + PATH_IMG_PROD + objProductoBE.lstImagen_ProductoBE[2].Nombre + "')");
                }
                else
                {
                    lnkEliminarImagen3.Visible = false;
                }

                if (objProductoBE.lstImagen_ProductoBE.Count >= 4)
                {
                    pnlImagen4.Style.Add("background-image", "url('" + PATH_IMG_PROD + objProductoBE.lstImagen_ProductoBE[3].Nombre + "')");
                }
                else
                {
                    lnkEliminarImagen4.Visible = false;
                }

                if (objProductoBE.lstAtributoBE.Count > 0)
                {
                    foreach (AtributoBE a in objProductoBE.lstAtributoBE)
                    {
                        ViewState["ATRIBUTOS"] = ViewState["ATRIBUTOS"] + "|" + a.Id_Atributo + "," + a.Nombre;
                    }
                }
                else
                {
                    ViewState["ATRIBUTOS"] = "";
                }

                CrearAtributos();

                LlenarElementoAtributo(objProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #13
0
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            ProductoBC        objProductoBC        = new ProductoBC();
            ProductoBE        objProductoBE        = new ProductoBE();
            Imagen_ProductoBE objImagen_ProductoBE = new Imagen_ProductoBE();
            CategoriaBE       objCategoriaBE       = new CategoriaBE();

            try
            {
                UsuarioBE objUsuarioBE = (UsuarioBE)Session["USUARIO"];

                objProductoBE.Id_Usuario_Creacion     = objUsuarioBE.Id_Usuario;
                objProductoBE.Id_Usuario_Modificacion = objUsuarioBE.Id_Usuario;
                objProductoBE.Nombre                 = txtNombre.Text.Trim();
                objProductoBE.Precio                 = Convert.ToDecimal(txtPrecio.Text.Trim());
                objProductoBE.Destacado              = chkDestacado.Checked;
                objProductoBE.Descripcion_Corta      = txtDescripcionCorta.Text.Trim();
                objProductoBE.Descripcion            = txtDescripcion.Text.Trim();
                objProductoBE.Youtube                = txtYoutube.Text.Trim();
                objProductoBE.Detalle                = txtDetalle.Text.Trim();
                objProductoBE.Caracteristica_Tecnica = txtCaracteristicaTecnica.Text.Trim();

                //string colores = Request.Form[lbColorDestino.UniqueID];
                //if (!string.IsNullOrEmpty(colores))
                //{
                //    foreach (string item in colores.Split(','))
                //    {
                //        objColorBE = new ColorBE();
                //        objColorBE.Id_Color = Convert.ToInt32(item);
                //        objProductoBE.lstColorBE.Add(objColorBE);
                //    }
                //}

                string categorias = Request.Form[lbCategoriaDestino.UniqueID];
                if (!string.IsNullOrEmpty(categorias))
                {
                    foreach (string item in categorias.Split(','))
                    {
                        objCategoriaBE = new CategoriaBE();
                        objCategoriaBE.Id_Categoria = Convert.ToInt32(item);
                        objProductoBE.lstCategoriaBE.Add(objCategoriaBE);
                    }
                }

                string[] atributos = ViewState["ATRIBUTOS"].ToString().Split('|');

                GridView            gv = new GridView();
                Elemento_AtributoBE objElemento_AtributoBE = new Elemento_AtributoBE();
                //Producto_Elemento_AtributoBE objProducto_Elemento_AtributoBE = new Producto_Elemento_AtributoBE();

                foreach (string s in atributos)
                {
                    string[] atributo = s.Split(',');

                    if (!string.IsNullOrEmpty(s))
                    {
                        gv = new GridView();
                        gv = (GridView)pnlAtributos.FindControl("gvElementoAtributo" + atributo[0]);

                        foreach (GridViewRow r in gv.Rows)
                        {
                            objElemento_AtributoBE = new Elemento_AtributoBE();

                            CheckBox chk = (CheckBox)r.Cells[0].Controls[0];

                            if (chk.Checked)
                            {
                                objElemento_AtributoBE.Id_Elemento_Atributo = Convert.ToInt32(chk.ID.Replace("chk", ""));
                                objProductoBE.lstElemento_AtributoBE.Add(objElemento_AtributoBE);
                            }
                        }
                    }
                }

                if ((Modo)ViewState["MODO"] == Modo.Insertar)
                {
                    String error = ValidarImagenes();

                    if (String.IsNullOrEmpty(error))
                    {
                        if (fuImagen1.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen1, true));
                        }
                        if (fuImagen2.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen2));
                        }
                        if (fuImagen3.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen3));
                        }
                        if (fuImagen4.HasFile)
                        {
                            objProductoBE.lstImagen_ProductoBE.Add(AgregarImagen(fuImagen4));
                        }
                    }
                    else
                    {
                        Tools.Alert(error, "Agregar Producto", GetType(), this);
                        return;
                    }

                    objProductoBC.Insert_Producto_Completo(objProductoBE);

                    GuardarImagen(fuImagen1, objProductoBE.lstImagen_ProductoBE[0].Nombre);

                    if (objProductoBE.lstImagen_ProductoBE.Count >= 2)
                    {
                        GuardarImagen(fuImagen2, objProductoBE.lstImagen_ProductoBE[1].Nombre);
                    }
                    if (objProductoBE.lstImagen_ProductoBE.Count >= 3)
                    {
                        GuardarImagen(fuImagen3, objProductoBE.lstImagen_ProductoBE[2].Nombre);
                    }
                    if (objProductoBE.lstImagen_ProductoBE.Count >= 4)
                    {
                        GuardarImagen(fuImagen4, objProductoBE.lstImagen_ProductoBE[3].Nombre);
                    }
                }
                else if ((Modo)ViewState["MODO"] == Modo.Editar)
                {
                    objProductoBE.Id_Producto = Convert.ToInt32(ViewState["ID_PRODUCTO"]);

                    objProductoBC.Update_Producto_Completo(objProductoBE);
                }

                Response.Redirect("/Administrador/Productos.aspx");
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
Пример #14
0
        public static bool AñadirCarrito(int idProducto, int cantidad, string atributos)
        {
            CarritoBE          objCarritoBE;
            Carrito_ProductoBE objCarrito_ProductoBE = new Carrito_ProductoBE();
            Carrito_Producto_Elemento_AtributoBE objCarrito_Producto_Elemento_AtributoBE = new Carrito_Producto_Elemento_AtributoBE();
            ProductoBC objProductoBC = new ProductoBC();
            ProductoBE objProductoBE = new ProductoBE();

            //decimal total = 0;

            try
            {
                if (!ExisteProductoCarrito(idProducto, atributos))
                {
                    objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"];

                    string[] arrAtributos = atributos.Split('|');

                    objProductoBE = objProductoBC.Get_Producto(idProducto);

                    objCarrito_ProductoBE.Id_Producto = objProductoBE.Id_Producto;
                    objCarrito_ProductoBE.Imagen      = objProductoBE.lstImagen_ProductoBE[0].Nombre;
                    objCarrito_ProductoBE.Nombre      = objProductoBE.Nombre;
                    objCarrito_ProductoBE.Precio      = objProductoBE.Precio;
                    objCarrito_ProductoBE.Cantidad    = cantidad;

                    foreach (string s in arrAtributos)
                    {
                        if (!string.IsNullOrEmpty(s))
                        {
                            string[] arrElemento = s.Split(','); //Atributo,Elemento,Id_Elemento

                            objCarrito_Producto_Elemento_AtributoBE = new Carrito_Producto_Elemento_AtributoBE();
                            objCarrito_Producto_Elemento_AtributoBE.Id_Elemento_Atributo = Convert.ToInt32(arrElemento[2]);
                            objCarrito_Producto_Elemento_AtributoBE.Atributo             = arrElemento[0];
                            objCarrito_Producto_Elemento_AtributoBE.Elemento             = arrElemento[1];
                            objCarrito_ProductoBE.lstCarrito_Producto_Elemento_AtributoBE.Add(objCarrito_Producto_Elemento_AtributoBE);
                        }
                    }

                    objCarritoBE.Total += cantidad * objProductoBE.Precio;

                    if (HttpContext.Current.Session["USUARIO"] != null)
                    {
                        objCarritoBE.Id_Usuario = ((UsuarioBE)HttpContext.Current.Session["USUARIO"]).Id_Usuario;

                        CarritoBC          objCarritoBC          = new CarritoBC();
                        Carrito_ProductoBC objCarrito_ProductoBC = new Carrito_ProductoBC();

                        if (objCarritoBE.lstCarrito_ProductoBE.Count == 0) //El carrito no existe
                        {
                            objCarritoBE.Id_Carrito = objCarritoBC.Insert_Carrito(objCarritoBE);
                        }
                        //else
                        //    objCarritoBC.Update_Carrito(objCarritoBE);

                        objCarrito_ProductoBE.Id_Carrito          = objCarritoBE.Id_Carrito;
                        objCarrito_ProductoBE.Id_Carrito_Producto = objCarrito_ProductoBC.Insert_Carrito_Producto_Completo(objCarrito_ProductoBE);
                    }

                    objCarritoBE.lstCarrito_ProductoBE.Add(objCarrito_ProductoBE);

                    objCarritoBE.PasosCarrito = EtapaCompra.Compra0;

                    HttpContext.Current.Session["CARRITO"] = objCarritoBE;

                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }