public ActionResult DetalleCompra(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Home", "Index"));
            }

            DetalleCompraModel model = new DetalleCompraModel();

            model.venta = _unitToWork.GetRepositoryInstance <Ventas>().GetFirstOrDefaultByParameter(i => i.id == id);
            List <Detalle_Ventas> lista = _unitToWork.GetRepositoryInstance <Detalle_Ventas>().GetListParameter(i => i.id_venta == id).ToList();
            List <CarritoModel>   pro   = new List <CarritoModel>();

            foreach (Detalle_Ventas item in lista)
            {
                CarritoModel c = new CarritoModel();
                c.Cantidad     = item.cantidad;
                c.Precio_venta = item.precio_venta;
                Productos p = _unitToWork.GetRepositoryInstance <Productos>().GetFirstOrDefaultByParameter(i => i.id == item.id_producto);
                c.Nombre      = p.nombre;
                c.Img         = p.img;
                c.Id_producto = p.id;

                pro.Add(c);
            }

            model.products = pro;

            return(View(model));
        }
示例#2
0
    protected void Page_Load(object sender, EventArgs e)
    {
        var user = Context.User.Identity;

        if (user.IsAuthenticated)
        {
            lnkLogin.Visible    = false;
            lnkRegistro.Visible = false;

            lnkLogout.Visible = true;
            litStatus.Visible = true;

            CarritoModel model  = new CarritoModel();
            string       userId = HttpContext.Current.User.Identity.GetUserId();
            litStatus.Text = string.Format("{0} ({1})", Context.User.Identity.Name,
                                           model.GetTotalPedidos(userId));
        }
        else
        {
            lnkLogin.Visible    = true;
            lnkRegistro.Visible = true;

            lnkLogout.Visible = false;
            litStatus.Visible = false;
        }
    }
示例#3
0
    protected void btnEnviar_Click(object sender, EventArgs e)
    {
        if (!string.IsNullOrWhiteSpace(Request.QueryString["id"]))
        {
            string clienteId = Context.User.Identity.GetUserId();

            if (clienteId != null)
            {
                int id       = Convert.ToInt32(Request.QueryString["id"]);
                int cantidad = Convert.ToInt32(ddlCantidad.SelectedValue);

                Carrito carrito = new Carrito
                {
                    Cantidad    = cantidad,
                    ClienteId   = clienteId,
                    FechaCompra = DateTime.Now,
                    IsInCart    = true,
                    ProductoId  = id
                };

                CarritoModel model = new CarritoModel();
                lblResultado.Text = model.InsertarCarrito(carrito);
            }
            else
            {
                lblResultado.Text = "por favor inicie sesión para ordenar los artículos";
            }
        }
    }
        public ActionResult Pagar()
        {
            CustomerModel usuarioLogueado = (CustomerModel)System.Web.HttpContext.Current.Session["Usuario"];

            ViewBag.Carrito = CarritoModel.CargarCarrito(usuarioLogueado.CustomerID);
            return(View());
        }
示例#5
0
        public bool existsCarrito(string idUsuario)
        {
            CloudStorageAccount storageAccount = CloudStorageAccount.Parse(this.ConnectionString);
            // Create the table client.
            CloudTableClient tableClient = storageAccount.CreateCloudTableClient();
            // Retrieve a reference to the table.
            CloudTable table = tableClient.GetTableReference("carritos");

            table.CreateIfNotExists();
            TableOperation retrieveOperation = TableOperation.Retrieve <CarritoModelEntity>("Carritos", idUsuario);
            // Execute the retrieve operation.
            TableResult retrievedResult = table.Execute(retrieveOperation);

            // Print the phone number of the result.
            if (retrievedResult.Result != null)
            {
                CarritoModelEntity carritoEntity = ((CarritoModelEntity)retrievedResult.Result);
                CarritoModel       carrito       = new CarritoModel()
                {
                    estado = carritoEntity.estado,
                    fecha  = carritoEntity.fecha,
                    id     = carritoEntity.id
                };
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public ActionResult VerCarritoDelete(ProductoModel model)
        {
            CustomerModel usuarioLogueado = (CustomerModel)System.Web.HttpContext.Current.Session["Usuario"];

            CarritoModel.DeleteProductDB(model, usuarioLogueado.CustomerID);
            ViewBag.Carrito = CarritoModel.CargarCarrito(usuarioLogueado.CustomerID);
            return(View("VerCarrito"));
        }
        public ActionResult CancelarPedido()
        {
            CustomerModel usuarioLogueado = (CustomerModel)System.Web.HttpContext.Current.Session["Usuario"];

            CarritoModel.DeleteAllPedido(usuarioLogueado.CustomerID);
            ViewBag.Carrito = CarritoModel.CargarCarrito(usuarioLogueado.CustomerID);
            return(View("VerCarrito"));
        }
        public ActionResult VerCarritoEdit(ProductoModel model)
        {
            model.cantidad = Math.Abs(model.cantidad);
            CustomerModel usuarioLogueado = (CustomerModel)System.Web.HttpContext.Current.Session["Usuario"];

            CarritoModel.EditProductDB(model, usuarioLogueado.CustomerID);
            ViewBag.Carrito = CarritoModel.CargarCarrito(usuarioLogueado.CustomerID);
            return(View("VerCarrito"));
        }
示例#9
0
        private ActionResult CarritoActualizado()
        {
            var carrito = new CarritoModel
            {
                ListaProductos = SessionHelper.ProductosCarrito,
                Total          = Sumar(SessionHelper.ProductosCarrito)
            };

            return(View("Carrito", carrito));
        }
 public CarritoViewModel()
 {
     model   = new CarritoModel();
     Elegido = new Producto()
     {
         Nombre      = "ljkasjdklajsd",
         Precio      = (decimal)90.11,
         Descripcion = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum rutrum auctor gravida. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Ut ut volutpat enim. Mauris consequat magna ut sapien vulputate, vitae vulputate nunc rhoncus. Morbi fringilla dolor ac purus tincidunt laoreet id vitae quam. Suspendisse vulputate, sem vel fringilla lacinia, est lorem adipiscing quam, et venenatis justo nibh posuere quam. Suspendisse tristique, quam sed accumsan malesuada, urna felis semper neque, eget pretium lacus libero ac lectus."
     };
 }
示例#11
0
    protected void Page_Load(object sender, EventArgs e)
    {
        //solo para verificar la compra
        List <Carrito> carritos = (List <Carrito>)Session[User.Identity.GetUserId()];

        CarritoModel model = new CarritoModel();

        model.MarcarOrdenesComoPagadas(carritos);

        Session[User.Identity.GetUserId()] = null;
    }
示例#12
0
        private CarritoModel GetCart()
        {
            CarritoModel carrito = (CarritoModel)Session["Carrito"];

            if (carrito == null)
            {
                carrito            = new CarritoModel();
                Session["Carrito"] = carrito;
            }
            return(carrito);
        }
示例#13
0
    private void Eliminar_Item(object sender, EventArgs e)
    {
        LinkButton selectedLink = (LinkButton)sender;
        string     link         = selectedLink.ID.Replace("del", "");
        int        carritoId    = Convert.ToInt32(link);

        CarritoModel model = new CarritoModel();

        model.EliminarCarrito(carritoId);

        Response.Redirect("~/Paginas/CarritoCompra.aspx");
    }
示例#14
0
        public ActionResult AgregarProducto(int idProd, string NomProd, int cantidad, double precio)
        {
            List <CarritoModel> listaProductos = new List <CarritoModel>();
            CarritoModel        nuevoArt       = new Models.CarritoModel();
            string idUs = Request.LogonUserIdentity.User.AccountDomainSid.Value;

            if (Session["Carrito"] != null)
            {
                listaProductos = (List <CarritoModel>)Session["Carrito"];

                int mismoProd = (from l in listaProductos
                                 where l.IdProducto == idProd
                                 select l).Count();
                if (mismoProd > 0)
                {
                    for (int i = 0; i < listaProductos.Count; i++)
                    {
                        if (listaProductos[i].IdProducto == idProd)
                        {
                            listaProductos[i].Cantidad        = cantidad;
                            listaProductos[i].PrecioXcantidad = precio * cantidad;
                            break;
                        }
                    }
                }
                else
                {
                    nuevoArt                 = new CarritoModel();
                    nuevoArt.IdUsuario       = idUs;
                    nuevoArt.IdProducto      = idProd;
                    nuevoArt.NombreProducto  = NomProd;
                    nuevoArt.Cantidad        = cantidad;
                    nuevoArt.PrecioXcantidad = cantidad * precio;

                    listaProductos.Add(nuevoArt);
                }
            }
            else
            {
                nuevoArt                 = new CarritoModel();
                nuevoArt.IdUsuario       = idUs;
                nuevoArt.IdProducto      = idProd;
                nuevoArt.NombreProducto  = NomProd;
                nuevoArt.Cantidad        = cantidad;
                nuevoArt.PrecioXcantidad = cantidad * precio;

                listaProductos.Add(nuevoArt);

                Session["Carrito"] = listaProductos;
            }

            return(RedirectToAction("Index"));
        }
示例#15
0
        public ActionResult AgregarProducto(int id)
        {
            CarritoModel item = new CarritoModel();
            Productos    p    = _unitOfWork.GetRepositoryInstance <Productos>().GetFirstOrDefaultByParameter(i => i.id == id);

            if (Session["carrito"] == null)
            {
                List <CarritoModel> carrito = new List <CarritoModel>();
                if (p != null)
                {
                    item.Id_producto  = p.id;
                    item.Img          = p.img;
                    item.Precio_venta = p.precio_venta;
                    item.Cantidad     = 1;
                    item.Nombre       = p.nombre;
                }
                carrito.Add(item);
                Session["carrito"] = carrito;
            }
            else
            {
                List <CarritoModel> carrito = (List <CarritoModel>)Session["carrito"];
                int index = ExisteProducto(id);
                if (index != -1)
                {
                    if (carrito[index].Cantidad + 1 > p.cantidad)
                    {
                        Session["error"] = "No se puede agregar al carrito, la tienda no cuenta con suficiente cantidad de este producto.";
                        return(RedirectToAction("InfoProducto", "Productos", new { id }));
                    }
                    carrito[index].Cantidad++;
                }
                else
                {
                    //Productos p = _unitOfWork.GetRepositoryInstance<Productos>().GetFirstOrDefaultByParameter(i => i.id == id);
                    if (p != null)
                    {
                        item.Id_producto  = p.id;
                        item.Img          = p.img;
                        item.Precio_venta = p.precio_venta;
                        item.Cantidad     = 1;
                        item.Nombre       = p.nombre;
                    }
                    carrito.Add(item);
                }
                Session["carro"] = carrito;
            }
            //int n = p.cantidad - 1;
            //p.cantidad = n;
            //_unitOfWork.GetRepositoryInstance<Productos>().Update(p);
            Session["success"] = "Se ha agregado al carrito exitosamente.";
            return(RedirectToAction("InfoProducto", "Productos", new { id }));
        }
示例#16
0
    private void ddlCantidad_SelectedIndexChanged(object sender, EventArgs e)
    {
        DropDownList selectedList = (DropDownList)sender;
        int          cantidad     = Convert.ToInt32(selectedList.SelectedValue);
        int          carritoId    = Convert.ToInt32(selectedList.ID);

        CarritoModel model = new CarritoModel();

        model.ActualizarCantidad(carritoId, cantidad);

        Response.Redirect("~/Paginas/CarritoCompra.aspx");
    }
        public ActionResult Quitar(int id)
        {
            if (Session["Carrito"] != null)
            {
                List <CarritoModel> listaProductos = new List <CarritoModel>();

                listaProductos = (List <CarritoModel>)Session["Carrito"];

                CarritoModel art = (from l in listaProductos
                                    where l.IdProducto == id
                                    select l).FirstOrDefault();
                listaProductos.Remove(art);
            }

            return(View("Index"));
        }
示例#18
0
        public ActionResult BusquedaProductosAgregarCarrito(ProductoModel model)
        {
            CustomerModel usuarioLogueado = (CustomerModel)System.Web.HttpContext.Current.Session["Usuario"];

            if (CarritoModel.ExisteEnCarrito(model, usuarioLogueado.CustomerID))
            {
                AddAlertMessage("El producto ya existe en el carro");
                ViewBag.lista     = LineaComidaModel.ObtenerLineasComida();
                ViewBag.listaProd = ProductoModel.ObtenerProductos();
                return(View("BusquedaProductos"));
            }

            CarritoModel.AddProductDB(model, usuarioLogueado.CustomerID);
            ViewBag.lista     = LineaComidaModel.ObtenerLineasComida();
            ViewBag.listaProd = ProductoModel.ObtenerProductos();
            AddAlertMessage("El producto se ha agregado correctamente.");
            return(View("BusquedaProductos"));
        }
示例#19
0
    private void GetComprasEnCarrito(string userId)
    {
        CarritoModel model    = new CarritoModel();
        double       subTotal = 0;

        //generar HTML para cada elemento en la lista de compras
        List <Carrito> ListaCompra = model.GetOrdersInCart(userId);

        CreateShopTable(ListaCompra, out subTotal);

        //agregar totales a la página web
        double igv   = subTotal * 0.18;
        double Total = subTotal + igv + 1;

        //mostrar valores en la página
        litSubtotal.Text = "S/. " + subTotal;
        litIGV.Text      = "S/. " + igv;
        litTotal.Text    = "S/. " + Total;
    }
        public static string actualizarMontoPut(PagarModel tarjeta, string mensaje, int Carrito)
        {
            //Se conecta a WS
            HttpClient clienteHttp = new HttpClient();

            clienteHttp.BaseAddress = new Uri("http://localhost:50747/");

            var request   = clienteHttp.PutAsync("api/Tarjetas/5", tarjeta, new JsonMediaTypeFormatter()).Result;
            var resultado = request.Content.ReadAsStringAsync().Result;

            if (request.IsSuccessStatusCode)
            {
                CarritoModel.DeleteAllCarritoDB(Carrito);
                return("OK");
            }
            else
            {
                mensaje = resultado.ToString();
                return(mensaje);
            }
        }
示例#21
0
        public ActionResult DetalleCompra(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            if (Session["usr"] == null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            DetalleCompraModel model = new DetalleCompraModel();

            model.Venta = _uniToWork.GetRepositoryInstance <Ventas>().GetFirstOrDefaultByParameter(i => i.id == id);
            List <Detalle_Ventas> listaProductos = _uniToWork.GetRepositoryInstance <Detalle_Ventas>().GetListParameter(i => i.id_venta == model.Venta.id).ToList();
            List <CarritoModel>   productos      = new List <CarritoModel>();

            foreach (Detalle_Ventas item in listaProductos)
            {
                Productos    p = _uniToWork.GetRepositoryInstance <Productos>().GetFirstOrDefaultByParameter(i => i.id == item.id_producto);
                CarritoModel c = new CarritoModel()
                {
                    Cantidad = item.cantidad,
                    Precio   = item.precio_venta,
                    Id       = item.id_producto,
                    Nombre   = p.nombre,
                    Img      = p.img
                };

                productos.Add(c);
            }

            model.Productos = productos;

            return(View(model));
        }
        public ActionResult Pagar(PagarModel tarjeta, string fecha)
        {
            CustomerModel usuarioLogueado = (CustomerModel)System.Web.HttpContext.Current.Session["Usuario"];

            ViewBag.Carrito = CarritoModel.CargarCarrito(usuarioLogueado.CustomerID);


            if (tarjeta.cvv != null || tarjeta.numeroTarjeta != null)
            {
                //Tomo la fecha y realizo el split
                string[] lines = fecha.Split('/');
                //Convierto el array LINES en date formart
                tarjeta.fechaExpiracion = Convert.ToDateTime("1/" + lines[0] + "/" + lines[1]);
                //Se declara una varible vacia para el mensaje
                string mensaje = string.Empty;
                //Se consulta al WebService
                mensaje = PagarModel.actualizarMontoPut(tarjeta, mensaje, usuarioLogueado.CustomerID);

                if (mensaje.Equals("OK"))
                {
                    //La compra es guardada
                    ViewBag.mensaje = "Transacción ha sido completada";
                }
                else
                {
                    //Se muestra el mensaje de error proveniente del webService
                    ViewBag.mensaje = mensaje;
                }
            }
            else
            {
                ViewBag.mensaje = "Verifica los datos de la tarjeta";
            }


            return(View("Pagar"));
        }