Exemplo n.º 1
0
        public static void Comprar()
        {
            PedidoBC  objPedidoBC  = new PedidoBC();
            CarritoBC objCarritoBC = new CarritoBC();
            MailBC    objMailBC    = new MailBC();

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

                PedidoBE objPedidoBE = LlenarPedido();

                objPedidoBE.Id_Pedido = objPedidoBC.Insert_Pedido_Completo(objPedidoBE);
                objCarritoBC.Delete_Carrito_Total(objUsuarioBE.Id_Usuario);

                objMailBC.Confirmar_Compra(objUsuarioBE, objCarritoBE);

                HttpContext.Current.Session["CARRITO"] = new CarritoBE();
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 2
0
        public static DireccionBE DatosDireccion(int idDireccion, int tipoDireccion)
        {
            try
            {
                DireccionBC objDireccionBC = new DireccionBC();

                DireccionBE objDireccionBE = objDireccionBC.Get_Direccion(idDireccion);

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

                if (tipoDireccion == 1) //Envio
                {
                    //objCarritoBE.Precio_Envio = objDireccionBE.Precio_Envio;
                    objCarritoBE.Direccion_Envio = objDireccionBE;
                }
                else
                {
                    objCarritoBE.Direccion_Facturacion = objDireccionBE;
                }


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

                return(objDireccionBE);
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }
Exemplo n.º 3
0
        public static void Continuar(CarritoBE objCarritoAuxBE)
        {
            try
            {
                if (Tools.EstaLogueado())
                {
                    CarritoBE objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"];

                    objCarritoBE.Id_Forma_Pago  = objCarritoAuxBE.Id_Forma_Pago;
                    objCarritoBE.Id_Tipo_Recibo = objCarritoAuxBE.Id_Tipo_Recibo;

                    if (objCarritoBE.Id_Tipo_Recibo == (int)Tipo_Recibo.Factura)
                    {
                        objCarritoBE.Razon_Social = objCarritoAuxBE.Razon_Social;
                        objCarritoBE.Ruc          = objCarritoAuxBE.Ruc;
                    }
                    else
                    {
                        objCarritoBE.Razon_Social = null;
                        objCarritoBE.Ruc          = null;
                    }

                    objCarritoBE.PasosCarrito = EtapaCompra.Compra3;

                    HttpContext.Current.Session["CARRITO"] = objCarritoBE;
                }
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }
Exemplo n.º 4
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;
            }
        }
Exemplo n.º 5
0
        private void ValidarCarrito()
        {
            try
            {
                CarritoBE objCarritoBE = (CarritoBE)Session["CARRITO"];

                switch (objCarritoBE.PasosCarrito)
                {
                case EtapaCompra.Compra0:
                    Response.Redirect("/Comprar");
                    break;

                case EtapaCompra.Compra1:
                    Response.Redirect("/Comprar2");
                    break;

                case EtapaCompra.Compra2:
                    Response.Redirect("/Comprar3");
                    break;
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 6
0
        private void LlenarCarrito()
        {
            decimal subtotal = 0;

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

                for (int i = objCarritoBE.lstCarrito_ProductoBE.Count - 1; i >= 0; i--)
                {
                    Label lblCarrito = new Label();

                    lblCarrito.Text = GetCarritoItem(objCarritoBE.lstCarrito_ProductoBE[i]);

                    bodyCarrito.Controls.AddAt(0, lblCarrito);

                    subtotal += objCarritoBE.lstCarrito_ProductoBE[i].Precio * objCarritoBE.lstCarrito_ProductoBE[i].Cantidad;
                }

                objCarritoBE.Subtotal = subtotal;
                objCarritoBE.Total    = subtotal + objCarritoBE.Precio_Envio;

                lblFinalEnvio.Text    = objCarritoBE.Precio_Envio.ToString();
                lblFinalSubTotal.Text = subtotal.ToString();
                lblFinalTotal.Text    = (subtotal + objCarritoBE.Precio_Envio).ToString();

                Session["CARRITO"] = objCarritoBE;
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 7
0
 public int Insert_Carrito(CarritoBE objCarritoBE)
 {
     try
     {
         return(objCarritoDALC.Insert_Carrito(objCarritoBE));
     }
     catch (Exception)
     {
         throw;
     }
 }
Exemplo n.º 8
0
 public void Insert_Update_Carrito(CarritoBE objCarritoBE)
 {
     try
     {
         objCarritoDALC.Insert_Update_Carrito(objCarritoBE);
     }
     catch (Exception)
     {
         throw;
     }
 }
Exemplo n.º 9
0
        private void LlenarCarrito()
        {
            decimal                 subtotal            = 0;
            string                  codigo              = "";
            Producto_ColorBC        objProducto_ColorBC = new Producto_ColorBC();
            List <Producto_ColorBE> lstProducto_ColorBE = new List <Producto_ColorBE>();

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

                if (objCarritoBE.lstCarrito_ProductoBE.Count > 0)
                {
                    foreach (Carrito_ProductoBE cp in objCarritoBE.lstCarrito_ProductoBE)
                    {
                        codigo += cp.Id_Producto + ",";
                    }

                    codigo = codigo.Remove(codigo.Length - 1);

                    if (!String.IsNullOrEmpty(codigo))
                    {
                        lstProducto_ColorBE = objProducto_ColorBC.Select_Producto_Color(codigo);
                    }

                    for (int i = objCarritoBE.lstCarrito_ProductoBE.Count - 1; i >= 0; i--)
                    {
                        Label lblCarrito = new Label();
                        //List<Producto_ColorBE> lstProducto_ColorAuxBE = new List<Producto_ColorBE>();

                        //lstProducto_ColorAuxBE = (from c in lstProducto_ColorBE
                        //                          where c.Id_Producto == objCarritoBE.lstCarrito_ProductoBE[i].Id_Producto
                        //                          select c).ToList();

                        lblCarrito.Text = GetCarritoItem(objCarritoBE.lstCarrito_ProductoBE[i]);

                        bodyCarrito.Controls.AddAt(0, lblCarrito);

                        subtotal += objCarritoBE.lstCarrito_ProductoBE[i].Precio * objCarritoBE.lstCarrito_ProductoBE[i].Cantidad;
                    }

                    lblShopSubtotalCarrito.Text = subtotal.ToString();
                }
                else
                {
                    CarritoVacio();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 10
0
        public static bool ExisteProductoCarrito(int idProducto, string atributos)
        {
            bool existe   = false;
            int  repetido = 0;

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

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

                foreach (Carrito_ProductoBE cp in objCarritoBE.lstCarrito_ProductoBE)
                {
                    repetido = 0;

                    if (cp.Id_Producto == idProducto)
                    {
                        if (cp.lstCarrito_Producto_Elemento_AtributoBE.Count == 0)
                        {
                            existe = true;
                        }
                        else
                        {
                            foreach (Carrito_Producto_Elemento_AtributoBE cpe in cp.lstCarrito_Producto_Elemento_AtributoBE)
                            {
                                foreach (string s in arrAtributos)
                                {
                                    if (cpe.Id_Elemento_Atributo.ToString().Equals(s))
                                    {
                                        repetido++;
                                        break;
                                    }
                                }

                                if (cp.lstCarrito_Producto_Elemento_AtributoBE.Count == repetido)
                                {
                                    return(true);
                                }
                            }
                        }
                    }
                }

                return(existe);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 11
0
        private string GenerarXML()
        {
            string xml = "";

            try
            {
                string    moneda          = ConfigurationManager.AppSettings["cCodMoneda"];
                string    codServicio     = ConfigurationManager.AppSettings["cCodServicio"];
                string    contacto        = ConfigurationManager.AppSettings["Contacto"];
                UsuarioBE objUsuarioBE    = (UsuarioBE)Session["USUARIO"];
                CarritoBE objCarritoBE    = (CarritoBE)Session["CARRITO"];
                string    codTransaccion  = GenerarRandom();
                DateTime  fechaExpiracion = DateTime.Now.AddDays(5);

                xml += "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
                xml += "<SolPago>";
                xml += "  <IdMoneda>" + moneda + "</IdMoneda>";
                xml += "  <Total>" + objCarritoBE.Total + "</Total>";
                xml += "  <MetodosPago>1,2</MetodosPago>";
                xml += "  <CodServicio>" + codServicio + "</CodServicio>";
                xml += "  <Codtransaccion>" + codTransaccion + "</Codtransaccion>";
                xml += "  <EmailComercio>" + contacto + "</EmailComercio>";
                xml += "  <FechaAExpirar>" + fechaExpiracion.Day + "/" + fechaExpiracion.Month + "/" + fechaExpiracion.Year + " " + fechaExpiracion.Hour + ":" + fechaExpiracion.Minute + ":" + fechaExpiracion.Second + "</FechaAExpirar>";
                xml += "  <UsuarioId>" + objUsuarioBE.Id_Usuario + "</UsuarioId>";
                xml += "  <DataAdicional />";
                xml += "  <UsuarioNombre>" + objUsuarioBE.Nombre + "</UsuarioNombre>";
                xml += "  <UsuarioApellidos>" + objUsuarioBE.Apellido_Paterno + "</UsuarioApellidos>";
                xml += "  <UsuarioLocalidad>" + objCarritoBE.Direccion_Envio.Nombre_Distrito + "</UsuarioLocalidad>";
                xml += "  <UsuarioProvincia>" + objCarritoBE.Direccion_Envio.Id_Provincia + "</UsuarioProvincia>";
                xml += "  <UsuarioPais>PERU</UsuarioPais>";
                xml += "  <UsuarioAlias>" + objUsuarioBE.Usuario + "</UsuarioAlias>";
                xml += "  <UsuarioTipoDoc>DNI</UsuarioTipoDoc>";
                xml += "  <UsuarioNumeroDoc>" + objUsuarioBE.Dni + "</UsuarioNumeroDoc>";
                xml += "  <UsuarioEmail>" + objUsuarioBE.Email + "</UsuarioEmail>";
                xml += "  <ConceptoPago>Orden " + codTransaccion + "</ConceptoPago>";
                xml += "  <Detalles>";
                xml += "    <Detalle>";
                xml += "      <ConceptoPago>Orden " + codTransaccion + "</ConceptoPago>";
                xml += "      <Importe>" + objCarritoBE.Total + "</Importe>";
                xml += "    </Detalle>";
                xml += "  </Detalles>";
                xml += "</SolPago>";

                return(xml);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 12
0
        public static CarritoBE GetMetodoPago()
        {
            try
            {
                CarritoBE objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"];

                return(objCarritoBE);
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }
Exemplo n.º 13
0
        public CarritoBE Get_Carrito(Int32 id_carrito)
        {
            String cadena;
            String sql = "Carrito_Get";

            SqlParameter[] arrParameters = new SqlParameter[1];
            CarritoBE      objCarritoBE  = 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", id_carrito);

                        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"]);
                            }
                        }
                    }
                }
                return(objCarritoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 14
0
        public List <CarritoBE> Select_Carrito()
        {
            String           cadena;
            String           sql          = "Carrito_Select";
            CarritoBE        objCarritoBE = null;
            List <CarritoBE> lstCarritoBE = 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 (lstCarritoBE == null)
                                {
                                    lstCarritoBE = new List <CarritoBE>();
                                }

                                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"]);

                                lstCarritoBE.Add(objCarritoBE);
                            }
                        }
                    }
                }

                return(lstCarritoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 15
0
        public static int Continuar(String lstCantidad)
        {
            try
            {
                if (Tools.EstaLogueado())
                {
                    CarritoBE objCarritoBE = (CarritoBE)HttpContext.Current.Session["CARRITO"];

                    if (objCarritoBE.lstCarrito_ProductoBE != null && objCarritoBE.lstCarrito_ProductoBE.Count != 0)
                    {
                        lstCantidad = lstCantidad.Remove(lstCantidad.Length - 1);

                        String[] cantidades = lstCantidad.Split('|');

                        for (int i = 0; i < cantidades.Length; i++)
                        {
                            string[] cantidad            = cantidades[i].Split(',');
                            int      id_carrito_producto = Convert.ToInt32(cantidad[0]);

                            for (int j = 0; j < objCarritoBE.lstCarrito_ProductoBE.Count; j++)
                            {
                                if (objCarritoBE.lstCarrito_ProductoBE[j].Id_Carrito_Producto == id_carrito_producto)
                                {
                                    objCarritoBE.lstCarrito_ProductoBE[j].Cantidad = Convert.ToInt32(cantidad[1]);
                                    break;
                                }
                            }
                        }

                        objCarritoBE.PasosCarrito = EtapaCompra.Compra1;

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

                        return(1);
                    }
                    else
                    {
                        return(-1);
                    }
                }
                return(-1);
            }
            catch (Exception ex)
            {
                LogFile.EscribirLog(ex);
                throw;
            }
        }
Exemplo n.º 16
0
        private void TraerDatosOperadorLogistico()
        {
            try
            {
                CarritoBE objCarritoBE = (CarritoBE)Session["CARRITO"];

                if (objCarritoBE.Id_Operador != null)
                {
                    hdIdOperador.Value = objCarritoBE.Id_Operador.ToString();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (!Page.IsPostBack)
                {
                    Llenar_Categorias();

                    if (Session["USUARIO"] != null)
                    {
                        UsuarioBE objUsuarioBE = (UsuarioBE)Session["USUARIO"];

                        lblUsuario.Text = objUsuarioBE.Usuario;
                        MostrarUsuarioLogueado(true);

                        if (objUsuarioBE.Activo_Correo)
                        {
                            hdVerifico.Value = "1";
                        }
                        else
                        {
                            hdVerifico.Value = "0";
                        }
                    }
                    else
                    {
                        MostrarUsuarioLogueado(false);

                        if (Session["CARRITO"] == null)
                        {
                            Session["CARRITO"] = new CarritoBE();
                        }

                        hdVerifico.Value = "1";
                    }
                }

                CargarItemsCarrito();
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
Exemplo n.º 18
0
        private void GenerarCip()
        {
            try
            {
                BEWSGenCIPRequestMod1 request = new BEWSGenCIPRequestMod1();
                //string pathPublicKeyContraparte = ConfigurationManager.AppSettings["pathPublicKeyContraparte"];
                //string pathPrivateKey = ConfigurationManager.AppSettings["pathPrivateKey"];
                string CodServicio = ConfigurationManager.AppSettings["cCodServicio"];

                string path = MapPath("/claves/");
                string pathPublicKeyContraparte = path + ConfigurationManager.AppSettings["pathPublicKeyContraparte"];
                string pathPrivateKey           = path + ConfigurationManager.AppSettings["pathPrivateKey"];

                request.CodServ = CodServicio;
                request.Xml     = GenerarXML();

                SPE.Api.PagoEfectivo.PrivatePath           = pathPrivateKey;
                SPE.Api.PagoEfectivo.PublicPathContraparte = pathPublicKeyContraparte;

                BEWSGenCIPResponseMod1 response = SPE.Api.PagoEfectivo.GenerarCIPMod1(request);

                if (response != null)
                {
                    XmlDocument xml = new XmlDocument();
                    xml.InnerXml = response.Xml;
                    XmlNode element           = xml.SelectSingleNode("ConfirSolPago");
                    XmlNode elementchild      = element.SelectSingleNode("CIP");
                    XmlNode elementchildCIP   = elementchild.SelectSingleNode("NumeroOrdenPago");
                    string  strCIP            = elementchildCIP.InnerText;
                    XmlNode elementchildtoken = element.SelectSingleNode("Token");
                    string  UrlRedirect       = ConfigurationManager.AppSettings["UrlSPE"] + "/GenPagoIF.aspx?Token=" + elementchildtoken.InnerText;
                    ltlUrl.Text = ltlUrl.Text + "<iframe style='width:100%;height:1285px;' src=" + UrlRedirect + "></iframe>";

                    CarritoBE objCarritoBE = (CarritoBE)Session["CARRITO"];
                    objCarritoBE.Cip   = elementchildCIP.InnerText;
                    Session["CARRITO"] = objCarritoBE;
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 19
0
        public int Insert_Carrito(CarritoBE objCarritoBE)
        {
            String cadena;
            String sql = "Carrito_Insert";

            SqlParameter[] arrParameters = new SqlParameter[4];
            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("@id_direccion_envio", objCarritoBE.Id_Direccion_Envio);
                        arrParameters[1] = new SqlParameter("@id_direccion_facturacion", objCarritoBE.Id_Direccion_Facturacion);
                        arrParameters[2] = new SqlParameter("@id_usuario", objCarritoBE.Id_Usuario);
                        arrParameters[3] = new SqlParameter("@total", objCarritoBE.Total);

                        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;
            }
        }
Exemplo n.º 20
0
        protected void lnkContinuar_Click(object sender, EventArgs e)
        {
            Operador_LogisticoBC objOperador_LogisticoBC = new Operador_LogisticoBC();
            Operador_LogisticoBE objOperador_LogisticoBE = new Operador_LogisticoBE();

            try
            {
                if (Tools.EstaLogueado())
                {
                    CarritoBE objCarritoBE = (CarritoBE)Session["CARRITO"];

                    objCarritoBE.Id_Direccion_Envio       = Convert.ToInt32(ddlDireccionEnvio.SelectedValue);
                    objCarritoBE.Id_Direccion_Facturacion = Convert.ToInt32(ddlDireccionFacturacion.SelectedValue);

                    objCarritoBE.Id_Operador = Convert.ToInt32(hdIdOperador.Value);

                    objOperador_LogisticoBE = objOperador_LogisticoBC.Get_Operador_Logistico((int)objCarritoBE.Id_Operador);

                    objCarritoBE.Tiempo_Entrega            = objOperador_LogisticoBE.Tiempo_Entrega;
                    objCarritoBE.Nombre_Operador_Logistico = objOperador_LogisticoBE.Nombre;
                    if (objCarritoBE.Direccion_Envio.Id_Departamento == "15")
                    {
                        objCarritoBE.Precio_Envio = objOperador_LogisticoBE.Costo_Lima;
                    }
                    else
                    {
                        objCarritoBE.Precio_Envio = objOperador_LogisticoBE.Costo_Provincia;
                    }

                    objCarritoBE.PasosCarrito = EtapaCompra.Compra2;

                    Session["CARRITO"] = objCarritoBE;

                    Response.Redirect("/Comprar3");
                }
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
Exemplo n.º 21
0
        private void TraerDatosDirecciones()
        {
            try
            {
                CarritoBE objCarritoBE = (CarritoBE)Session["CARRITO"];

                if (objCarritoBE.Id_Direccion_Envio != null)
                {
                    ddlDireccionEnvio.SelectedValue = objCarritoBE.Id_Direccion_Envio.ToString();
                }
                ;
                if (objCarritoBE.Id_Direccion_Facturacion != null)
                {
                    ddlDireccionFacturacion.SelectedValue = objCarritoBE.Id_Direccion_Facturacion.ToString();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 22
0
        public void Insert_Update_Carrito(CarritoBE objCarritoBE)
        {
            String cadena;
            String sql = "Carrito_Insert_Update";

            SqlParameter[] arrParameters = new SqlParameter[5];

            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", objCarritoBE.Id_Carrito);
                        arrParameters[1] = new SqlParameter("@id_direccion_envio", objCarritoBE.Id_Direccion_Envio);
                        arrParameters[2] = new SqlParameter("@id_direccion_facturacion", objCarritoBE.Id_Direccion_Facturacion);
                        arrParameters[3] = new SqlParameter("@id_usuario", objCarritoBE.Id_Usuario);
                        arrParameters[4] = new SqlParameter("@total", objCarritoBE.Total);

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

                        cmd.Connection.Open();
                        cmd.ExecuteNonQuery();
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 23
0
        public void CargarItemsCarrito()
        {
            ucCarrito carrito;
            CarritoBE objCarritoBE = null;

            //decimal total = 0;

            try
            {
                objCarritoBE = Session["CARRITO"] != null ? (CarritoBE)Session["CARRITO"] : new CarritoBE();
                pnlItemsCarrito.Controls.Clear();

                foreach (Carrito_ProductoBE p in objCarritoBE.lstCarrito_ProductoBE)
                {
                    carrito = (ucCarrito)Page.LoadControl("~/usercontrol/ucCarrito.ascx");
                    carrito.SetParametros(p);

                    pnlItemsCarrito.Controls.Add(carrito);

                    //total += p.Precio * p.Cantidad;
                }

                lblSubTotalCarrito.Text = objCarritoBE.Total.ToString();
                lblCantidadCarrito.Text = objCarritoBE.lstCarrito_ProductoBE.Count.ToString();
                //lblCostoCarrito.Text = objCarritoBE.Total.ToString();

                //if (objCarritoBE.Total != 0)
                //    pnlCarrito.Style.Add("display", "");
                //else
                //    pnlCarrito.Style.Add("display", "none");
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 24
0
        protected void lnkContinuar_Click(object sender, EventArgs e)
        {
            PedidoBC objPedidoBC = new PedidoBC();
            //PedidoBE objPedidoBE = new PedidoBE();
            //Pedido_DireccionBC objPedidoDireccionBC = new Pedido_DireccionBC();
            //Pedido_ProductoBC objPedidoProductoBC = new Pedido_ProductoBC();
            //Pedido_ProductoBE objPedidoProductoBE = new Pedido_ProductoBE();
            CarritoBC objCarritoBC = new CarritoBC();

            try
            {
                if (Tools.EstaLogueado())
                {
                    CarritoBE objCarritoBE = (CarritoBE)Session["CARRITO"];

                    //objPedidoBE.Id_Pedido = objPedidoBC.Insert_Pedido_Completo(objPedidoBE);
                    //objCarritoBC.Delete_Carrito_Total(((UsuarioBE)Session["USUARIO"]).Id_Usuario);

                    //Enviar_Confirmacion();

                    if (objCarritoBE.Id_Forma_Pago == (int)FormaPago.PagoEfectivo)
                    {
                        Response.Redirect("/PagoEfectivo");
                    }
                    else
                    {
                        Response.Redirect("/Inicio");
                        Session["CARRITO"] = new CarritoBE();
                    }
                }
            }
            catch (Exception ex)
            {
                Tools.Error(GetType(), this, ex);
            }
        }
Exemplo n.º 25
0
        public void Confirmar_Compra(UsuarioBE objUsuarioBE, CarritoBE objCarritoBE)
        {
            MailMessage mensaje  = new MailMessage();
            String      dominio  = "";
            String      empresa  = "";
            string      contacto = "";
            decimal     subtotal = 0;

            try
            {
                dominio  = ConfigurationManager.AppSettings["Dominio"];
                empresa  = ConfigurationManager.AppSettings["Empresa"];
                contacto = ConfigurationManager.AppSettings["Contacto"];

                mensaje.Body = "<span style='font-size:20pt'>Muchas Gracias</span><br/><br/>Su compra ha sido realizada satisfactoriamente.<br/><br/><span style='font-weight:bold;'>Facturado a:</span><br/>";

                if (objCarritoBE.Id_Tipo_Recibo == (int)Tipo_Recibo.Boleta)
                {
                    mensaje.Body += objUsuarioBE.Nombre_Completo.ToUpper() + "<br/>";
                }
                else if (objCarritoBE.Id_Tipo_Recibo == (int)Tipo_Recibo.Factura)
                {
                    mensaje.Body += objCarritoBE.Ruc + "<br/>";
                    mensaje.Body += objCarritoBE.Razon_Social.ToUpper() + "<br/>";
                }

                mensaje.Body += objCarritoBE.Direccion_Envio.Direccion.ToUpper() + " " + objCarritoBE.Direccion_Envio.Nombre_Distrito.ToUpper() + "<br/>";
                mensaje.Body += objCarritoBE.Direccion_Envio.Nombre_Provincia.ToUpper() + ", PERÚ<br/><br/>";

                mensaje.Body += "<table style='width:100%'>";
                mensaje.Body += "<tr style='font-weight:bold;text-align:center;'><td>ÍTEM</td><td>CANTIDAD</td><td>PRECIO</td><td>IMPORTE</td></tr>";
                foreach (Carrito_ProductoBE cp in objCarritoBE.lstCarrito_ProductoBE)
                {
                    mensaje.Body += "<tr style=\"vertical-align:top;\"><td>";
                    mensaje.Body += cp.Nombre.ToUpper();

                    foreach (Carrito_Producto_Elemento_AtributoBE cpe in cp.lstCarrito_Producto_Elemento_AtributoBE)
                    {
                        mensaje.Body += "<br/><span style=\"font-size:8pt;\">&nbsp;&nbsp;" + cpe.Atributo + ": " + cpe.Elemento + "</span>";
                    }

                    mensaje.Body += "</td><td style='text-align:center;'>" + cp.Cantidad + "</td><td style='text-align:center;'>S/. " + cp.Precio + "</td><td style='text-align:center;'>S/. " + (cp.Precio * cp.Cantidad) + "</td></tr>";
                    subtotal     += cp.Precio * cp.Cantidad;
                }
                mensaje.Body += "<tr><td colspan='2'></td><td style='text-align:right;'>SubTotal:</td><td style='font-weight:bold;text-align:center;'>S/. " + subtotal + "</td></tr>";
                mensaje.Body += "<tr><td colspan='2'></td><td style='text-align:right;'>Envío:</td><td style='font-weight:bold;text-align:center;'>S/. " + objCarritoBE.Precio_Envio + "</td></tr>";
                mensaje.Body += "<tr><td colspan='2'></td><td style='text-align:right;'>Total:</td><td style='font-weight:bold;text-align:center;'>S/. " + (subtotal + objCarritoBE.Precio_Envio) + "</td></tr>";
                mensaje.Body += "</table>";

                mensaje.To.Clear();
                mensaje.To.Add(objUsuarioBE.Email);
                mensaje.Bcc.Add(contacto);
                MailAddress from = new MailAddress("noreply@" + dominio, empresa);
                mensaje.From = from;

                AlternateView  av_Html = AlternateView.CreateAlternateViewFromString(Get_Plantilla_Mail(mensaje.Body), null, "text/html");
                LinkedResource logo    = new LinkedResource(Get_Logo_Path(), "image/png");
                logo.ContentId = "logo";
                av_Html.LinkedResources.Add(logo);

                mensaje.Subject = "Su compra ha sido realizada";
                mensaje.Body    = "";
                mensaje.AlternateViews.Clear();
                mensaje.AlternateViews.Add(av_Html);

                Set_Servidor().Send(mensaje);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 26
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;
            }
        }
Exemplo n.º 27
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;
            }
        }
Exemplo n.º 28
0
        public void Loguear(UsuarioBE objUsuarioBE)
        {
            try
            {
                Session["USUARIO"] = objUsuarioBE;
                lblUsuario.Text    = objUsuarioBE.Usuario;
                MostrarUsuarioLogueado(true);
                //FormsAuthentication.Initialize();

                CarritoBC objCarritoBC = new CarritoBC();
                CarritoBE objCarritoBE = objCarritoBC.Get_Carrito_Usuario(objUsuarioBE.Id_Usuario);

                if (Session["CARRITO"] == null || ((CarritoBE)Session["CARRITO"]).lstCarrito_ProductoBE.Count == 0)
                {
                    Session["CARRITO"] = objCarritoBE != null ? objCarritoBE : new CarritoBE();
                }
                else //Hace un merge
                {
                    CarritoBE          objCarritoSessionBE   = (CarritoBE)Session["CARRITO"];
                    Carrito_ProductoBC objCarrito_ProductoBC = new Carrito_ProductoBC();

                    if (objCarritoBE == null) //Si el usuario no tiene productos en el carrito
                    {
                        objCarritoBE            = new CarritoBE();
                        objCarritoBE.Id_Usuario = objUsuarioBE.Id_Usuario;
                        objCarritoBE.Id_Carrito = objCarritoBC.Insert_Carrito(objCarritoBE);
                    }

                    //Se obtiene una lista de los productos en sesion que no han sido agregados a BD
                    foreach (Carrito_ProductoBE cp in objCarritoBE.lstCarrito_ProductoBE)
                    {
                        if (cp.lstCarrito_Producto_Elemento_AtributoBE.Count == 0) //Si no tiene atributos
                        {
                            objCarritoSessionBE.lstCarrito_ProductoBE = (from c in objCarritoSessionBE.lstCarrito_ProductoBE
                                                                         where c.Id_Producto != cp.Id_Producto
                                                                         select c).ToList();
                        }
                        else
                        {
                            foreach (Carrito_ProductoBE cps in objCarritoSessionBE.lstCarrito_ProductoBE)
                            {
                                if (cps.Id_Producto == cp.Id_Producto)
                                {
                                    int cantidadAtributo = 0;

                                    foreach (Carrito_Producto_Elemento_AtributoBE cpeas in cps.lstCarrito_Producto_Elemento_AtributoBE)
                                    {
                                        foreach (Carrito_Producto_Elemento_AtributoBE cpea in cp.lstCarrito_Producto_Elemento_AtributoBE)
                                        {
                                            if (cpeas.Id_Elemento_Atributo == cpea.Id_Elemento_Atributo)
                                            {
                                                cantidadAtributo++;
                                                break;
                                            }
                                        }
                                    }

                                    if (cantidadAtributo == cps.lstCarrito_Producto_Elemento_AtributoBE.Count)
                                    {
                                        objCarritoSessionBE.lstCarrito_ProductoBE.Remove(cps);
                                        break;
                                    }
                                }
                            }
                        }
                    }

                    foreach (Carrito_ProductoBE cp in objCarritoSessionBE.lstCarrito_ProductoBE)
                    {
                        cp.Id_Carrito          = objCarritoBE.Id_Carrito;
                        cp.Id_Carrito_Producto = objCarrito_ProductoBC.Insert_Carrito_Producto_Completo(cp);
                        objCarritoBE.lstCarrito_ProductoBE.Add(cp);
                    }

                    objCarritoBE.Total = (from c in objCarritoBE.lstCarrito_ProductoBE select c.Precio).Sum();

                    Session["CARRITO"] = objCarritoBE;
                }

                CargarItemsCarrito();

                if (objUsuarioBE.Activo_Correo)
                {
                    hdVerifico.Value = "1";
                }
                else
                {
                    hdVerifico.Value = "0";
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 29
0
        public static PedidoBE LlenarPedido()
        {
            PedidoBE          objPedidoBE         = new PedidoBE();
            Pedido_ProductoBE objPedidoProductoBE = new Pedido_ProductoBE();
            Pedido_Producto_Elemento_AtributoBE objPedido_Producto_Elemento_AtributoBE = new Pedido_Producto_Elemento_AtributoBE();

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

                objPedidoBE.Id_Forma_Pago      = objCarritoBE.Id_Forma_Pago;
                objPedidoBE.Id_Tipo_Recibo     = objCarritoBE.Id_Tipo_Recibo;
                objPedidoBE.Id_Usuario         = ((UsuarioBE)HttpContext.Current.Session["USUARIO"]).Id_Usuario;
                objPedidoBE.Precio_Envio       = objCarritoBE.Precio_Envio;
                objPedidoBE.Razon_Social       = objCarritoBE.Razon_Social;
                objPedidoBE.Ruc                = objCarritoBE.Ruc;
                objPedidoBE.Subtotal           = objCarritoBE.Subtotal;
                objPedidoBE.Total              = objCarritoBE.Total;
                objPedidoBE.Operador_Logistico = objCarritoBE.Nombre_Operador_Logistico;
                objPedidoBE.Tiempo_Entrega     = objCarritoBE.Tiempo_Entrega;
                objPedidoBE.Cip                = objCarritoBE.Cip;

                //objPedidoBE.objDireccionEnvioBE.Id_Pedido = objPedidoBE.Id_Pedido;
                objPedidoBE.objDireccionEnvioBE.Departamento = objCarritoBE.Direccion_Envio.Nombre_Departamento;
                objPedidoBE.objDireccionEnvioBE.Direccion    = objCarritoBE.Direccion_Envio.Direccion;
                objPedidoBE.objDireccionEnvioBE.Distrito     = objCarritoBE.Direccion_Envio.Nombre_Distrito;
                objPedidoBE.objDireccionEnvioBE.Provincia    = objCarritoBE.Direccion_Envio.Nombre_Departamento;
                objPedidoBE.objDireccionEnvioBE.Referencia   = objCarritoBE.Direccion_Envio.Referencia;

                //objPedidoBE.objDireccionFacturacionBE.Id_Pedido = objPedidoBE.Id_Pedido;
                objPedidoBE.objDireccionFacturacionBE.Departamento = objCarritoBE.Direccion_Facturacion.Nombre_Departamento;
                objPedidoBE.objDireccionFacturacionBE.Direccion    = objCarritoBE.Direccion_Facturacion.Direccion;
                objPedidoBE.objDireccionFacturacionBE.Distrito     = objCarritoBE.Direccion_Facturacion.Nombre_Distrito;
                objPedidoBE.objDireccionFacturacionBE.Provincia    = objCarritoBE.Direccion_Facturacion.Nombre_Departamento;
                objPedidoBE.objDireccionFacturacionBE.Referencia   = objCarritoBE.Direccion_Facturacion.Referencia;

                foreach (Carrito_ProductoBE cp in objCarritoBE.lstCarrito_ProductoBE)
                {
                    objPedidoProductoBE          = new Pedido_ProductoBE();
                    objPedidoProductoBE.Cantidad = cp.Cantidad;
                    objPedidoProductoBE.Color    = cp.Color;
                    //objPedidoProductoBE.Id_Pedido = objPedidoBE.Id_Pedido;
                    objPedidoProductoBE.Id_Producto = cp.Id_Producto;
                    objPedidoProductoBE.Precio      = cp.Precio;

                    foreach (Carrito_Producto_Elemento_AtributoBE cpe in cp.lstCarrito_Producto_Elemento_AtributoBE)
                    {
                        objPedido_Producto_Elemento_AtributoBE          = new Pedido_Producto_Elemento_AtributoBE();
                        objPedido_Producto_Elemento_AtributoBE.Atributo = cpe.Atributo;
                        objPedido_Producto_Elemento_AtributoBE.Element  = cpe.Elemento;

                        objPedidoProductoBE.lstPedido_Producto_Elemento_AtributoBE.Add(objPedido_Producto_Elemento_AtributoBE);
                    }

                    objPedidoBE.lstPedido_ProductoBE.Add(objPedidoProductoBE);
                }

                return(objPedidoBE);
            }
            catch (Exception)
            {
                throw;
            }
        }