Пример #1
0
        private string GetCarritoItem(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            string itemCarrito = "";

            try
            {
                itemCarrito += "<tr id=\"trItemCarrito" + objCarrito_ProductoBE.Id_Carrito_Producto + "\">";
                itemCarrito += "<td class=\"image\">";
                itemCarrito += "<img src=\"/images/productos/" + objCarrito_ProductoBE.Imagen + "\" alt=\"\" width=\"100\" height=\"124\" /></td>";
                itemCarrito += "<td class=\"desc\">";
                itemCarrito += objCarrito_ProductoBE.Nombre;
                foreach (Carrito_Producto_Elemento_AtributoBE cpe in objCarrito_ProductoBE.lstCarrito_Producto_Elemento_AtributoBE)
                {
                    itemCarrito += "<br/><span class=\"compra-atributos\">" + cpe.Atributo + ": " + cpe.Elemento + "</span>";
                }
                itemCarrito += "</td>";
                //itemCarrito += "<td class=\"price\">" + objCarrito_ProductoBE.Color + "</td>";
                itemCarrito += "<td class=\"price\">" + objCarrito_ProductoBE.Cantidad + "</td>";
                itemCarrito += "<td class=\"price\">S/. <span id=\"spanPrecio" + objCarrito_ProductoBE.Id_Carrito_Producto + "\">" + objCarrito_ProductoBE.Precio + "</span></td>";
                itemCarrito += "<td class=\"price\">S/. <span id=\"spanTotal" + objCarrito_ProductoBE.Id_Carrito_Producto + "\">" + objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad + "</span></td>";
                itemCarrito += "</tr>";

                return(itemCarrito);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #2
0
        public static object AgregarCarrito(int id_producto, string atributos)
        {
            try
            {
                if (Tools.AñadirCarrito(id_producto, 1, atributos))
                {
                    CarritoBE objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"];

                    //Saco una instancia del carrito que acabo de agregar
                    Carrito_ProductoBE objCarrito_ProductoBE = objCarritoBE.lstCarrito_ProductoBE[objCarritoBE.lstCarrito_ProductoBE.Count - 1];

                    string control = Tools.HtmlCarrito(objCarrito_ProductoBE);

                    return(new { control = control, precio = objCarrito_ProductoBE.Precio });
                }
                else
                {
                    return new { control = "", precio = 0 }
                };
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }
Пример #3
0
 public void Update_Carrito_Producto(Carrito_ProductoBE objCarrito_ProductoBE)
 {
     try
     {
         objCarrito_ProductoDALC.Update_Carrito_Producto(objCarrito_ProductoBE);
     }
     catch (Exception)
     {
         throw;
     }
 }
Пример #4
0
 public int Insert_Carrito_Producto(Carrito_ProductoBE objCarrito_ProductoBE)
 {
     try
     {
         return(objCarrito_ProductoDALC.Insert_Carrito_Producto(objCarrito_ProductoBE));
     }
     catch (Exception)
     {
         throw;
     }
 }
Пример #5
0
        public List <Carrito_ProductoBE> Select_Carrito_Producto()
        {
            String                    cadena;
            String                    sql = "Carrito_Producto_Select";
            Carrito_ProductoBE        objCarrito_ProductoBE = null;
            List <Carrito_ProductoBE> lstCarrito_ProductoBE = null;

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        cmd.Connection.Open();

                        using (SqlDataReader dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                if (lstCarrito_ProductoBE == null)
                                {
                                    lstCarrito_ProductoBE = new List <Carrito_ProductoBE>();
                                }

                                objCarrito_ProductoBE                     = new Carrito_ProductoBE();
                                objCarrito_ProductoBE.Cantidad            = Convert.ToInt32(dr["cantidad"]);
                                objCarrito_ProductoBE.Id_Carrito          = Convert.ToInt32(dr["id_carrito"]);
                                objCarrito_ProductoBE.Id_Producto         = Convert.ToInt32(dr["id_producto"]);
                                objCarrito_ProductoBE.Id_Carrito_Producto = Convert.ToInt32(dr["id_carrito_producto"]);

                                lstCarrito_ProductoBE.Add(objCarrito_ProductoBE);
                            }
                        }
                    }
                }

                return(lstCarrito_ProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #6
0
        public Carrito_ProductoBE Get_Carrito_Producto(Int32 id_carrito_producto)
        {
            String cadena;
            String sql = "Carrito_Producto_Get";

            SqlParameter[]     arrParameters         = new SqlParameter[1];
            Carrito_ProductoBE objCarrito_ProductoBE = null;

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@id_carrito_producto", id_carrito_producto);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();

                        using (SqlDataReader dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                objCarrito_ProductoBE                     = new Carrito_ProductoBE();
                                objCarrito_ProductoBE.Cantidad            = Convert.ToInt32(dr["cantidad"]);
                                objCarrito_ProductoBE.Id_Carrito          = Convert.ToInt32(dr["id_carrito"]);
                                objCarrito_ProductoBE.Id_Producto         = Convert.ToInt32(dr["id_producto"]);
                                objCarrito_ProductoBE.Id_Carrito_Producto = Convert.ToInt32(dr["id_carrito_producto"]);
                            }
                        }
                    }
                }
                return(objCarrito_ProductoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #7
0
        private string GetCarritoItem(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            string itemCarrito = "";
            string idAtributos = "";
            string atributos   = "";

            try
            {
                foreach (Carrito_Producto_Elemento_AtributoBE cpe in objCarrito_ProductoBE.lstCarrito_Producto_Elemento_AtributoBE)
                {
                    idAtributos += cpe.Id_Elemento_Atributo + "_";
                    atributos   += "<br/><span class=\"compra-atributos\">" + cpe.Atributo + ": " + cpe.Elemento + "</span>";
                }

                itemCarrito += "<tr id=\"trItemCarrito" + objCarrito_ProductoBE.Id_Producto + "_" + idAtributos + "\">";
                itemCarrito += "<td class=\"image\"><img src=\"/images/productos/" + objCarrito_ProductoBE.Imagen + "\" alt=\"\" width=\"100\" height=\"124\" /></td>";
                itemCarrito += "<td class=\"desc\">";
                itemCarrito += objCarrito_ProductoBE.Nombre + " <a title=\"Remove Item\" class=\"icon-remover\" href=\"#\" onclick=\"RemoverShopCarrito(" + objCarrito_ProductoBE.Id_Producto + ",'" + idAtributos + "')\"></a>";
                itemCarrito += atributos;
                itemCarrito += "</td>";
                //itemCarrito += "<td>";
                //if (lstProducto_ColorBE != null)
                //{

                //    itemCarrito += "<select name=\"ddlColor\" id=\"ddlColor" + objCarrito_ProductoBE.Id_Producto + "\" class=\"span2 validate[required]\">";
                //    itemCarrito += "<option value=\"-1\" disabled=\"disabled\" " + (objCarrito_ProductoBE.Id_Color == null ? "selected=\"selected\"" : "") + " style=\"display:none;\">Elija un Color</option>";
                //    foreach (Producto_ColorBE pc in lstProducto_ColorBE)
                //    {
                //        itemCarrito += "<option value=\"" + pc.Id_Color + "\" " + (objCarrito_ProductoBE.Id_Color == pc.Id_Color ? "selected=\"selected\"" : "") + ">" + pc.Color + "</option>";
                //    }
                //    itemCarrito += "</select>";
                //}
                //itemCarrito += "</td>";
                itemCarrito += "<td class=\"qty\"><input type=\"text\" maxlength=\"2\" class=\"tiny-size positive-integer validate[required]\" name=\"inputCantidad\" id=\"inputCantidad" + objCarrito_ProductoBE.Id_Carrito_Producto + "\" value=\"" + objCarrito_ProductoBE.Cantidad + "\" onkeyup=\"CalcularSubtotal()\" /></td>";
                itemCarrito += "<td class=\"price\">S/. <span id=\"spanPrecio" + objCarrito_ProductoBE.Id_Carrito_Producto + "\">" + objCarrito_ProductoBE.Precio + "</span></td>";
                itemCarrito += "<td class=\"price\">S/. <span id=\"spanTotal" + objCarrito_ProductoBE.Id_Carrito_Producto + "\">" + objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad + "</span></td>";
                itemCarrito += "</tr>";

                return(itemCarrito);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #8
0
        public int Insert_Carrito_Producto(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            String cadena;
            String sql = "Carrito_Producto_Insert";

            SqlParameter[] arrParameters = new SqlParameter[3];
            int            codigo        = 0;

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@cantidad", objCarrito_ProductoBE.Cantidad);
                        arrParameters[1] = new SqlParameter("@id_carrito", objCarrito_ProductoBE.Id_Carrito);
                        arrParameters[2] = new SqlParameter("@id_producto", objCarrito_ProductoBE.Id_Producto);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();

                        codigo = Convert.ToInt32(cmd.ExecuteScalar());
                    }
                }

                return(codigo);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #9
0
        public int Insert_Carrito_Producto_Completo(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            Carrito_Producto_Elemento_AtributoBC objCarrito_Producto_Elemento_AtributoBC = new Carrito_Producto_Elemento_AtributoBC();

            try
            {
                int id_carrito_producto = objCarrito_ProductoDALC.Insert_Carrito_Producto(objCarrito_ProductoBE);

                foreach (Carrito_Producto_Elemento_AtributoBE cp in objCarrito_ProductoBE.lstCarrito_Producto_Elemento_AtributoBE)
                {
                    cp.Id_Carrito_Producto = id_carrito_producto;
                    objCarrito_Producto_Elemento_AtributoBC.Insert_Carrito_Producto_Elemento_Atributo(cp);
                }

                return(id_carrito_producto);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #10
0
        //protected void lnkRemoverCarrito_Click(object sender, EventArgs e)
        //{
        //    CarritoBE objCarritoBE = null;
        //    Carrito_ProductoBE objCarrito_ProductoBE = null;

        //    try
        //    {
        //        objCarritoBE = (CarritoBE)Session["CARRITO"];

        //        if (objCarritoBE.lstCarrito_ProductoBE.Count == 1)
        //        {
        //            objCarritoBE = new CarritoBE();

        //            if (Session["USUARIO"] != null)
        //            {
        //                CarritoBC objCarritoBC = new CarritoBC();
        //                objCarritoBC.Delete_Carrito_Total(((UsuarioBE)Session["USUARIO"]).Id_Usuario);
        //            }
        //        }
        //        else
        //        {
        //            //objCarritoBE.lstCarrito_ProductoBE = (from c in objCarritoBE.lstCarrito_ProductoBE
        //            //                                      where c.Id_Producto != Convert.ToInt32(hdIdProducto.Value)
        //            //                                      select c).ToList();

        //            objCarrito_ProductoBE = (from c in objCarritoBE.lstCarrito_ProductoBE
        //                                    where c.Id_Producto != Convert.ToInt32(hdIdProducto.Value)
        //                                    select c).ToList()[0];

        //            objCarritoBE.lstCarrito_ProductoBE.Remove(objCarrito_ProductoBE);

        //            objCarritoBE.Total -= objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad;

        //            if (Session["USUARIO"] != null)
        //            {
        //                Carrito_ProductoBC objCarrito_ProductoBC = new Carrito_ProductoBC();
        //                objCarrito_ProductoBC.Delete_Carrito_Producto(objCarrito_ProductoBE.Id_Carrito_Producto);
        //            }
        //        }

        //        Session["CARRITO"] = objCarritoBE;

        //        eshop masterPage = (eshop)Page.Master;
        //        masterPage.CargarItemsCarrito();
        //    }
        //    catch (Exception)
        //    {
        //        throw;
        //    }
        //}

        public void SetParametros(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            string idAtributos = "";
            string atributos   = "";

            foreach (Carrito_Producto_Elemento_AtributoBE cp in objCarrito_ProductoBE.lstCarrito_Producto_Elemento_AtributoBE)
            {
                idAtributos += cp.Id_Elemento_Atributo + "_";
                atributos   += cp.Atributo + ": " + cp.Elemento + "<br/>";
            }

            imgProducto.ImageUrl  = "/images/productos/" + objCarrito_ProductoBE.Imagen;
            lnkNombre.PostBackUrl = "/Producto/" + objCarrito_ProductoBE.Id_Producto;
            lnkNombre.Text        = objCarrito_ProductoBE.Nombre;
            hdIdProducto.Value    = objCarrito_ProductoBE.Id_Producto.ToString();
            lblPrecio.Text        = objCarrito_ProductoBE.Precio.ToString();
            lblCantidad.Text      = objCarrito_ProductoBE.Cantidad.ToString();
            pnlItemCart.ID        = "pnlItemCart" + objCarrito_ProductoBE.Id_Producto + "_" + idAtributos;
            hdIdAtributos.Value   = idAtributos;
            lblAtributos.Text     = atributos;
        }
Пример #11
0
        public static string HtmlCarrito(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            try
            {
                String control = "";

                string textoAtributos = "";
                string idAtributos    = "";

                foreach (Carrito_Producto_Elemento_AtributoBE cp in objCarrito_ProductoBE.lstCarrito_Producto_Elemento_AtributoBE)
                {
                    textoAtributos += cp.Atributo + ": " + cp.Elemento + "<br/>";
                    idAtributos    += cp.Id_Elemento_Atributo + "_";
                }

                control += "<div class=\"item-in-cart clearfix\" id=\"pnlItemCart" + objCarrito_ProductoBE.Id_Producto + "_" + idAtributos + "\">";
                control += "<div class=\"image\">";
                control += "<img src=\"/images/productos/" + objCarrito_ProductoBE.Imagen + "\" width=\"124\" height=\"124\" alt=\"cart item\" />";
                control += "</div>";
                control += "<div class=\"desc\">";
                control += "<strong><a href=\"/Producto/" + objCarrito_ProductoBE.Id_Producto + "\">" + objCarrito_ProductoBE.Nombre + "</a> <a href=\"#\" class=\"icon-remover\" title=\"Remover Item\" onclick=\"QuitarCarrito(" + objCarrito_ProductoBE.Id_Producto + ",'" + idAtributos + "');\"></a></strong>";
                control += "<span class=\"light-clr qty\">";
                control += textoAtributos;
                control += "Cantidad: " + objCarrito_ProductoBE.Cantidad.ToString();
                control += "</span>";
                control += "</div>";
                control += "<div class=\"price\">";
                control += "<strong>S/. " + objCarrito_ProductoBE.Precio.ToString() + "</strong>";
                control += "</div>";
                control += "</div>";

                return(control);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #12
0
        public void Update_Carrito_Producto(Carrito_ProductoBE objCarrito_ProductoBE)
        {
            String cadena;
            String sql = "Carrito_Producto_Update";

            SqlParameter[] arrParameters = new SqlParameter[2];

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@cantidad", objCarrito_ProductoBE.Cantidad);
                        arrParameters[1] = new SqlParameter("@id_carrito_producto", objCarrito_ProductoBE.Id_Carrito_Producto);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();
                        cmd.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #13
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;
            }
        }
Пример #14
0
        public CarritoBE Get_Carrito_Usuario(Int32 id_usuario)
        {
            String cadena;
            String sql = "Carrito_Get_Usuario";

            SqlParameter[]     arrParameters         = new SqlParameter[1];
            CarritoBE          objCarritoBE          = null;
            Carrito_ProductoBE objCarrito_ProductoBE = new Carrito_ProductoBE();
            Carrito_Producto_Elemento_AtributoBE objCarrito_Producto_Elemento_AtributoBE = new Carrito_Producto_Elemento_AtributoBE();

            try
            {
                cadena = Tool.GetCadenaConexion();

                using (SqlConnection conn = new SqlConnection(cadena))
                {
                    using (SqlCommand cmd = conn.CreateCommand())
                    {
                        cmd.CommandText = sql;
                        cmd.CommandType = CommandType.StoredProcedure;

                        arrParameters[0] = new SqlParameter("@id_usuario", id_usuario);

                        for (int i = 0; i < arrParameters.Length; i++)
                        {
                            cmd.Parameters.Add(arrParameters[i]);
                        }

                        cmd.Connection.Open();

                        using (SqlDataReader dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                objCarritoBE                          = new CarritoBE();
                                objCarritoBE.Id_Carrito               = Convert.ToInt32(dr["id_carrito"]);
                                objCarritoBE.Id_Direccion_Envio       = dr["id_direccion_envio"] != DBNull.Value ? (Int32?)Convert.ToInt32(dr["id_direccion_envio"]) : null;
                                objCarritoBE.Id_Direccion_Facturacion = dr["id_direccion_facturacion"] != DBNull.Value ? (Int32?)Convert.ToInt32(dr["id_direccion_facturacion"]) : null;
                                objCarritoBE.Id_Usuario               = Convert.ToInt32(dr["id_usuario"]);
                                objCarritoBE.Total                    = Convert.ToDecimal(dr["total"]);
                            }

                            dr.NextResult();

                            while (dr.Read())
                            {
                                objCarrito_ProductoBE                     = new Carrito_ProductoBE();
                                objCarrito_ProductoBE.Cantidad            = Convert.ToInt32(dr["cantidad"]);
                                objCarrito_ProductoBE.Id_Carrito          = Convert.ToInt32(dr["id_carrito"]);
                                objCarrito_ProductoBE.Id_Producto         = Convert.ToInt32(dr["id_producto"]);
                                objCarrito_ProductoBE.Nombre              = dr["nombre_producto"].ToString();
                                objCarrito_ProductoBE.Imagen              = dr["nombre_imagen"].ToString();
                                objCarrito_ProductoBE.Precio              = Convert.ToDecimal(dr["precio"]);
                                objCarrito_ProductoBE.Id_Color            = dr["id_color"] != DBNull.Value ? (Int32?)Convert.ToInt32(dr["id_color"]) : null;
                                objCarrito_ProductoBE.Id_Carrito_Producto = Convert.ToInt32(dr["id_carrito_producto"]);

                                objCarritoBE.lstCarrito_ProductoBE.Add(objCarrito_ProductoBE);
                            }

                            dr.NextResult();

                            while (dr.Read())
                            {
                                objCarrito_Producto_Elemento_AtributoBE = new Carrito_Producto_Elemento_AtributoBE();
                                objCarrito_Producto_Elemento_AtributoBE.Id_Carrito_Producto  = Convert.ToInt32(dr["id_carrito_producto"]);
                                objCarrito_Producto_Elemento_AtributoBE.Id_Elemento_Atributo = Convert.ToInt32(dr["id_elemento_atributo"]);
                                objCarrito_Producto_Elemento_AtributoBE.Elemento             = dr["elemento"].ToString();
                                objCarrito_Producto_Elemento_AtributoBE.Atributo             = dr["atributo"].ToString();

                                foreach (Carrito_ProductoBE cp in objCarritoBE.lstCarrito_ProductoBE)
                                {
                                    if (cp.Id_Carrito_Producto == objCarrito_Producto_Elemento_AtributoBE.Id_Carrito_Producto)
                                    {
                                        cp.lstCarrito_Producto_Elemento_AtributoBE.Add(objCarrito_Producto_Elemento_AtributoBE);
                                        break;
                                    }
                                }
                            }
                        }
                    }
                }
                return(objCarritoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #15
0
        public static decimal QuitarCarrito(int id_producto, string idAtributos)
        {
            CarritoBE objCarritoBE = null;
            List <Carrito_ProductoBE> lstCarrito_ProductoBE = null;
            Carrito_ProductoBE        objCarrito_ProductoBE = new Carrito_ProductoBE();

            try
            {
                objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"];

                lstCarrito_ProductoBE = (from c in objCarritoBE.lstCarrito_ProductoBE
                                         where c.Id_Producto == Convert.ToInt32(id_producto)
                                         select c).ToList();

                foreach (Carrito_ProductoBE cp in lstCarrito_ProductoBE)
                {
                    string[] atributos = idAtributos.Split('_');

                    int atributosEliminados = 0;

                    foreach (Carrito_Producto_Elemento_AtributoBE cpe in cp.lstCarrito_Producto_Elemento_AtributoBE)
                    {
                        foreach (string s in atributos)
                        {
                            if (!string.IsNullOrEmpty(s) && cpe.Id_Elemento_Atributo == Convert.ToInt32(s))
                            {
                                atributosEliminados++;
                                break;
                            }
                        }
                    }

                    if (atributosEliminados == atributos.Length - 1)
                    {
                        objCarrito_ProductoBE = cp;
                        break;
                    }
                }

                if (objCarritoBE.lstCarrito_ProductoBE.Count == 1)
                {
                    objCarritoBE = new CarritoBE();

                    if (HttpContext.Current.Session["USUARIO"] != null)
                    {
                        CarritoBC objCarritoBC = new CarritoBC();
                        objCarritoBC.Delete_Carrito_Total(((UsuarioBE)HttpContext.Current.Session["USUARIO"]).Id_Usuario);
                    }
                }
                else
                {
                    objCarritoBE.lstCarrito_ProductoBE.Remove(objCarrito_ProductoBE);

                    objCarritoBE.Total -= objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad;

                    if (HttpContext.Current.Session["USUARIO"] != null)
                    {
                        Carrito_ProductoBC objCarrito_ProductoBC = new Carrito_ProductoBC();
                        objCarrito_ProductoBC.Delete_Carrito_Producto(objCarrito_ProductoBE.Id_Carrito_Producto);
                    }
                }

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

                return(objCarrito_ProductoBE.Precio * objCarrito_ProductoBE.Cantidad);
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }