コード例 #1
0
        public List <OrdenEnvio> listarOrdenesEnvioPendiente()
        {
            OrdenEnvio        ot   = null;
            List <OrdenEnvio> list = new List <OrdenEnvio>();

            using (ProyectoEntities db = new ProyectoEntities())
            {
                var query = (from p in db.OrdenEnvio
                             where p.EstadoOE.Equals("Pendiente")
                             select new
                {
                    IdOE = p.IdOE,
                    VentaOE = p.VentaOE,
                    ClienteOE = p.ClienteOE,
                    CadeteOE = p.CadeteOE,
                    DepartamentoOE = p.LocalidadOE,
                    UbicacionOE = p.UbicacionOE,
                    FechaOE = p.FechaOE,
                    EstadoOE = p.EstadoOE,
                }).ToList();


                if (query != null)
                {
                    foreach (var r in query)
                    {
                        ot = new OrdenEnvio(r.IdOE, r.VentaOE, r.ClienteOE, r.CadeteOE, r.UbicacionOE, r.FechaOE, r.EstadoOE, listarProductosOE(r.IdOE), r.DepartamentoOE);

                        list.Add(ot);
                    }
                }
            }

            return(list);
        }
コード例 #2
0
        public OrdenEnvio buscarOrdenesEnvio(int id)
        {
            OrdenEnvio ot = null;

            using (ProyectoEntities db = new ProyectoEntities())
            {
                var r = (from p in db.OrdenEnvio
                         where p.IdOE.Equals(id)
                         select new
                {
                    IdOE = p.IdOE,
                    VentaOE = p.VentaOE,
                    ClienteOE = p.ClienteOE,
                    CadeteOE = p.CadeteOE,
                    DepartamentoOE = p.LocalidadOE,
                    UbicacionOE = p.UbicacionOE,
                    FechaOE = p.FechaOE,
                    EstadoOE = p.EstadoOE,
                }).FirstOrDefault();


                if (r != null)
                {
                    ot = new OrdenEnvio(r.IdOE, r.VentaOE, r.ClienteOE, r.CadeteOE, r.UbicacionOE, r.FechaOE, r.EstadoOE, listarProductosOE(r.IdOE), r.DepartamentoOE);
                }
            }

            return(ot);
        }
コード例 #3
0
        public VerOrdenEnvio(OrdenEnvio orden)
        {
            InitializeComponent();

            BindingContext       = orden;
            btnDestinoD.Clicked += BtnDestinoM_Clicked;
            btnEnvioD.Clicked   += BtnEnvioD_Clicked;
        }
コード例 #4
0
        public ActionResult ActualizarOrden(OrdenEnvio actualizarOrden, string Id)
        {
            OrdenEnvio orden = SOrden.GetOrden(Id);

            orden.EstadoOrden = actualizarOrden.EstadoOrden;
            SOrden.ActualizarOrden(orden);

            return(RedirectToAction("Index"));
        }
コード例 #5
0
        public ActionResult ActualizarOrden(string Id)
        {
            ViewBag.StatusList = new List <string>()
            {
                "Orden Creada",
                "Pago Procesado",
                "Orden Enviada",
                "Orden Completada"
            };
            OrdenEnvio orden = SOrden.GetOrden(Id);

            return(View(orden));
        }
コード例 #6
0
        public ActionResult Comprar(OrdenEnvio orden)
        {
            var ItemsCesta = SerCesta.GetItemCesta(this.HttpContext);

            orden.EstadoOrden = "Orden Creada";
            orden.Correo      = User.Identity.Name;

            //proceso de pago

            orden.EstadoOrden = "Pago Procesado";
            serEnvio.CrearOrden(orden, ItemsCesta);
            SerCesta.LimpiarCesta(this.HttpContext);

            return(RedirectToAction("Agradecimiento", new { OrderId = orden.Id }));
        }
コード例 #7
0
ファイル: SOrden.cs プロジェクト: jojoji54/TiendaMVC
        public void CrearOrden(OrdenEnvio OrdenBase, List <ItemCestaViewModel> ItemsCesta)
        {
            foreach (var item in ItemsCesta)
            {
                OrdenBase.ItemsOrden.Add(new ItemOrden()
                {
                    IdProducto     = item.Id,
                    Imagen         = item.Imagen,
                    Precio         = item.Precio,
                    NombreProducto = item.NombreProducto,
                    Cantidad       = item.Cantidad
                });
            }

            ordenContext.Insertar(OrdenBase);
            ordenContext.Commit();
        }
コード例 #8
0
 public OrdenEnvio getDataType()
 {
     List<ProductosOE> datospoe = new List<ProductosOE>();
     foreach (LProductosOE lv in LProductosOrdenEnvio)
     {
         datospoe.Add(lv.getDataType());
     }
     OrdenEnvio data = new OrdenEnvio();
     data.IdOE = IdOE;
     data.CadeteOE = CadeteOE;
     data.ClienteOE = Clienteoe;
     data.VentaOE = VentaOE;
     data.UbicacionOE = UbicacionOE;
     data.FechaOE = FechaOE;
     data.EstadoOE = EstadoOE;
     data.ProductosOrdenEnvio = datospoe;
     data.LocalidadOE = LocalidadOE;
     return data;
 }
コード例 #9
0
        public void agregarOE(OrdenEnvio cli)
        {
            using (ProyectoEntities db = new ProyectoEntities())
            {
                using (DbContextTransaction transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        var fc = new OrdenEnvio()
                        {
                            CadeteOE    = cli.CadeteOE,
                            ClienteOE   = cli.ClienteOE,
                            VentaOE     = cli.VentaOE,
                            LocalidadOE = cli.LocalidadOE,
                            UbicacionOE = cli.UbicacionOE,
                            FechaOE     = cli.FechaOE,
                            EstadoOE    = cli.EstadoOE,
                        };
                        db.OrdenEnvio.Add(fc);
                        db.SaveChanges();
                        int id = fc.IdOE;
                        foreach (ProductosOE l in cli.ProductosOrdenEnvio)
                        {
                            db.ProductosOE.Add(new ProductosOE()
                            {
                                IdOrdenE = id,
                                POE      = l.POE,
                            });
                            db.SaveChanges();
                        }

                        transaction.Commit();
                    }

                    catch (Exception exsql)
                    {
                        transaction.Rollback();
                        throw new Exception("Ocurrio un error al agregar la Orden de Envio", exsql);
                    }
                }
            }
        }
コード例 #10
0
        public void cambiarEstado(OrdenEnvio ot)
        {
            using (ProyectoEntities db = new ProyectoEntities())
            {
                try
                {
                    var queryot =
                        from OrdenEnvio in db.OrdenEnvio
                        where
                        OrdenEnvio.IdOE == ot.IdOE
                        select OrdenEnvio;

                    foreach (var p in queryot)
                    {
                        p.EstadoOE = "Aceptada";
                    }
                    db.SaveChanges();
                }
                catch (Exception exsql)
                {
                    throw new Exception("Ocurrio un error al modificar la Orden de Envio", exsql);
                }
            }
        }
コード例 #11
0
        public ActionResult Comprar()
        {
            Cliente cliente = clientes.Collection().FirstOrDefault(c => c.CorreoCliente == User.Identity.Name);

            if (cliente != null)
            {
                OrdenEnvio orden = new OrdenEnvio()
                {
                    Correo       = cliente.CorreoCliente,
                    Ciudad       = cliente.CiudadCliente,
                    Provincia    = cliente.ProvinciaCliente,
                    Calle        = cliente.CalleCliente,
                    Nombre       = cliente.NombreCliente,
                    Apellido     = cliente.ApellidoCliente,
                    CodigoPostal = cliente.CodigoPostalCliente
                };

                return(View(orden));
            }
            else
            {
                return(RedirectToAction("Error"));
            }
        }
コード例 #12
0
ファイル: SOrden.cs プロジェクト: jojoji54/TiendaMVC
 public void ActualizarOrden(OrdenEnvio actualizarOrden)
 {
     ordenContext.Actualizar(actualizarOrden);
     ordenContext.Commit();
 }
コード例 #13
0
 public void cambiarestado(OrdenEnvio addp)
 {
     FabricaDatos.GetOrdenEnvio().cambiarEstado(addp);
 }
コード例 #14
0
 public void agregarOrdenEnvio(OrdenEnvio addp)
 {
     FabricaDatos.GetOrdenEnvio().agregarOE(addp);
 }
コード例 #15
0
        public void CanCheckoutAndCreateOrder()
        {
            IRepositorio <Cliente>  customers = new MockContext <Cliente>();
            IRepositorio <Producto> products  = new MockContext <Producto>();

            products.Insertar(new Producto()
            {
                Id = "1", Precio = 10.00m
            });
            products.Insertar(new Producto()
            {
                Id = "2", Precio = 5.00m
            });

            IRepositorio <Cesta> baskets = new MockContext <Cesta>();
            Cesta basket = new Cesta();

            basket.ItemsCesta.Add(new ItemCesta()
            {
                IdProducto = "1", Cantidad = 2, IdCesta = basket.Id
            });
            basket.ItemsCesta.Add(new ItemCesta()
            {
                IdProducto = "1", Cantidad = 1, IdCesta = basket.Id
            });

            baskets.Insertar(basket);

            ISCesta basketService = new SCesta(products, baskets);

            IRepositorio <OrdenEnvio> orders = new MockContext <OrdenEnvio>();
            ISOrden orderService             = new SOrden(orders);

            customers.Insertar(new Cliente()
            {
                Id = "1", CorreoCliente = "*****@*****.**", CodigoPostalCliente = "90210"
            });

            IPrincipal FakeUser = new GenericPrincipal(new GenericIdentity("*****@*****.**", "Forms"), null);


            var controller  = new CestaController(basketService, orderService, customers);
            var httpContext = new MockHttpContext();

            httpContext.User = FakeUser;
            httpContext.Request.Cookies.Add(new System.Web.HttpCookie("eCommerceBasket")
            {
                Value = basket.Id
            });

            controller.ControllerContext = new ControllerContext(httpContext, new System.Web.Routing.RouteData(), controller);

            //Act
            OrdenEnvio order = new OrdenEnvio();

            controller.Comprar(order);

            //assert
            Assert.AreEqual(2, order.ItemsOrden.Count);
            Assert.AreEqual(0, basket.ItemsCesta.Count);

            OrdenEnvio orderInRep = orders.Buscar(order.Id);

            Assert.AreEqual(2, orderInRep.ItemsOrden.Count);
        }
コード例 #16
0
 public void cambiarEstado([FromBody] OrdenEnvio orden)
 {
     FabricaLogica.GetControladorOE().cambiarEstado(orden);
 }