コード例 #1
0
ファイル: PedidoController.cs プロジェクト: juancastingo/TFI
        public ActionResult CargarPedidoViejo(string PrePed)
        {
            try
            {
                int IDPrePedido = int.Parse(PrePed);
                //aca cargo los datos del Prepedido en la sesion
                var PrePedido = DocWorker.ObtenerDocXID(IDPrePedido);
                ListCarrito carrito = new ListCarrito();
                carrito.IDDocumento = PrePedido.IDDocumento;
                modelCarrito item;
                foreach (var p in PrePedido.DocumentoDetalle)
                {
                    item = new modelCarrito();
                    item.id = p.PrecioDetalle.Producto.IDProducto;
                    item.Nombre = p.PrecioDetalle.Producto.Nombre;
                    item.IDPrecioDetalle = p.IDPrecioDetalle;
                    item.Cant = p.Cantidad;
                    item.Precio = (double)p.PrecioDetalle.Precio;
                    carrito.Productos.Add(item);
                }
                //ya tengo el carrito. Acá tengo q verificar los precios y actualizarlo.
                //agarro los productos con precios.
                var ListaP = ProdWorker.traerProductosConPrecio();
                Boolean PrePedidoActualizado = false;
                foreach (var prodCarr in carrito.Productos)
                {
                    prodCarr.conPrecio = false;
                    foreach (var prodBase in ListaP)
                    {
                        if (prodCarr.id == prodBase.IDProducto)
                        {
                            prodCarr.conPrecio = true;
                            if (prodCarr.IDPrecioDetalle != prodBase.IDPrecioDetalle)
                            {
                                prodCarr.IDPrecioDetalle = prodBase.IDPrecioDetalle;
                                prodCarr.Precio = prodBase.PrecioActual;
                                PrePedidoActualizado = true;
                            }
                            break;
                        }
                    }
                }
                string msgReturn = "";
                if (PrePedidoActualizado)
                {
                    msgReturn = Language.PrePedidoActualizado;
                }

                Session["ListCarrito"] = carrito;
                ViewBag.NrPedido = carrito.IDDocumento;
                return Json(new { Result = msgReturn }, JsonRequestBehavior.AllowGet);
            }
            catch (Exception ex2)
            {
                Nullable<int> idUser = null;
                string ip = "Unknown";
                try
                {
                    idUser = (int)Session["userID"];
                }
                catch (Exception ex) { }
                try
                {
                    ip = Session["_ip"].ToString();
                }
                catch (Exception ex) { }
                try
                {
                    Bita.guardarBitacora(new BIZBitacora("Error", "Error al intentar cargar un prepedido", idUser, ip));
                }
                catch (Exception ex) { }
                TempData["ErrorNormal"] = Language.ErrorLogInAgain;
                return RedirectToAction("CerrarSesion", "Login");
            }
        }
コード例 #2
0
ファイル: PedidoController.cs プロジェクト: juancastingo/TFI
        public ActionResult VerPedido(string Pedido)
        {
            try
            {

                int IDPedido = int.Parse(Pedido);
                //aca cargo los datos del Prepedido en la sesion
                var RPedido = DocWorker.ObtenerDocXID(IDPedido);
                ListCarrito carritoPedido = new ListCarrito();
                carritoPedido.IDDocumento = RPedido.IDDocumento;
                modelCarrito item;
                foreach (var p in RPedido.DocumentoDetalle)
                {
                    item = new modelCarrito();
                    item.id = p.PrecioDetalle.Producto.IDProducto;
                    item.Nombre = p.PrecioDetalle.Producto.Nombre;
                    item.IDPrecioDetalle = p.IDPrecioDetalle;
                    item.Cant = p.Cantidad;
                    item.Precio = (double)p.PrecioDetalle.Precio;
                    carritoPedido.Productos.Add(item);
                }
                carritoPedido.estado = RPedido.EstadoMisc.Detalle;
                carritoPedido.comentario = RPedido.Detalle;

                //Session["CarritoPedido"] = carritoPedido;
                ViewBag.NrPedido = carritoPedido.IDDocumento;
                return Json(new { Result = "", Pedido = carritoPedido }, JsonRequestBehavior.AllowGet);
            }
            catch (Exception ex2)
            {
                Nullable<int> idUser = null;
                string ip = "Unknown";
                try
                {
                    idUser = (int)Session["userID"];
                }
                catch (Exception ex) { }
                try
                {
                    ip = Session["_ip"].ToString();
                }
                catch (Exception ex) { }
                try
                {
                    Bita.guardarBitacora(new BIZBitacora("Error", "Error al intentar visualizar pedido en modal", idUser, ip));
                }
                catch (Exception ex) { }
                TempData["ErrorNormal"] = Language.ErrorLogInAgain;
                return RedirectToAction("CerrarSesion", "Login");
            }
        }