Beispiel #1
0
        public ActionResult AsignarCliente(string correo)
        {
            var     db   = new ecoMonedaModel();
            Usuario user = db.Usuario.Find(correo);

            if (user.idRol == 3)
            {
                Session["cliente"] = user.email;
            }
            else
            {
                Session["cliente"] = null;
            }

            return(PartialView("_Cliente"));
        }
Beispiel #2
0
        public ActionResult ProcesarOrden()
        {
            var     db   = new ecoMonedaModel();
            Usuario user = ((Usuario)Session["session"]);
            int     i    = 0;

            if (Session["cliente"] == null)
            {
                TempData["mensaje"] = "Digite el correo del cliente";
                return(RedirectToAction("Index"));
            }

            foreach (var item in Carrito.Instancia.Items)
            {
                i++;
            }
            if (i > 0)
            {
                EncCambio encabezado = new EncCambio();
                var       lista      = db.Centro;

                foreach (var item in lista)
                {
                    if (item.Usuario.email == user.email)
                    {
                        encabezado.idCentro = item.id;
                    }
                }

                encabezado.idUsuario = Session["cliente"].ToString();
                encabezado.fecha     = DateTime.Now;
                encabezado.total     = Convert.ToDouble(Carrito.Instancia.GetTotal());
                db.EncCambio.Add(encabezado);
                db.SaveChanges();

                foreach (var item in Carrito.Instancia.Items)
                {
                    DetalleCambio detalle = new DetalleCambio();
                    detalle.idEncCambio = encabezado.id;
                    detalle.cantidad    = item.Cantidad;
                    detalle.idMaterial  = item.Material.id;
                    detalle.subtotal    = (item.Material.precio * item.Cantidad);
                    db.DetalleCambio.Add(detalle);
                    db.SaveChanges();
                }

                Usuario          usuario = db.Usuario.Find(Session["cliente"].ToString());
                BilleteraVirtual v       = db.BilleteraVirtual.Where(x => x.idUsuario.Equals(usuario.email)).First();
                v.total += encabezado.total;

                db.Entry(v).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                Carrito.Instancia.limpiarCarrito();
                TempData["mensaje"] = "Orden procesada correctamente";
                return(RedirectToAction("Index", "Orden"));
            }
            else
            {
                TempData["mensaje"] = "Agrega Materiales a la orden para continuar";
                return(RedirectToAction("Index"));
            }
        }