示例#1
0
        public ActionResult ObtenerDetalleProducto(long numeroProducto)
        {
            try
            {
                if (Session["Cliente"] != null)
                {
                    Cliente  cliente  = (Cliente)Session["Cliente"];
                    Producto producto = cliente.Productos.FirstOrDefault(p => p.Numero == numeroProducto);

                    if (producto == null)
                    {
                        throw new Exception("No se encontró un producto con este número.");
                    }

                    producto.Movimientos = ProductoBussiness.ObtenerMovimientosProducto(numeroProducto, Singleton.Instance.ConfiguracionEntorno.CantidadDiasMovimientos);

                    Session["Cliente"] = cliente;

                    InfoProducto infoProducto = new InfoProducto()
                    {
                        Producto = producto
                    };

                    if (Singleton.Instance.ConfiguracionEntorno.ConsultaCupoCompra)
                    {
                        infoProducto.CupoCompra = ProductoBussiness.ObtenerCupoCompraProducto(numeroProducto);
                    }

                    if (Singleton.Instance.ConfiguracionEntorno.ConsultaCupoAvance)
                    {
                        infoProducto.CupoAvance = ProductoBussiness.ObtenerCupoAvanceProducto(numeroProducto);
                    }

                    if (Singleton.Instance.ConfiguracionEntorno.ConsultaValorPagoMinimo)
                    {
                        infoProducto.ValorPagoMinimo = ProductoBussiness.ObtenerValorPagoMinimoProducto(numeroProducto);
                    }

                    if (Singleton.Instance.ConfiguracionEntorno.ConsultaValorPagoTotal)
                    {
                        infoProducto.ValorPagoTotal = ProductoBussiness.ObtenerValorPagoTotalProducto(numeroProducto);
                    }
                    return(PartialView("~/Views/Producto/InfoProducto.cshtml", infoProducto));
                }
                else
                {
                    return(Json(new Respuesta()
                    {
                        Resultado = "SessionError", Mensaje = "La sesión ha finalizado."
                    }, JsonRequestBehavior.AllowGet));
                }
            }
            catch
            {
                return(Json(new Respuesta()
                {
                    Resultado = "Error", Mensaje = "Ha ocurrido un error consultando los datos del producto."
                }, JsonRequestBehavior.AllowGet));
            }
        }