Exemplo n.º 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));
            }
        }
        public ActionResult Autenticar(FormCollection collection)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new Respuesta()
                    {
                        Resultado = "Error", Mensaje = "Validación de Captcha fallida."
                    }, JsonRequestBehavior.AllowGet));
                }

                bool autenticarConClave = Singleton.Instance.ConfiguracionEntorno.MetodoAutenticacion == TipoAutenticacion.Clave;

                long   identificacion = Convert.ToInt64(collection["Identificacion"]);
                string clave          = autenticarConClave ? collection["Clave"] : collection["Ult4DigProd"];

                Cliente cliente = ClienteBussiness.AutenticarCliente(identificacion, clave, autenticarConClave);
                cliente.Productos = ProductoBussiness.ObtenerProductosActivosCliente(cliente.Identificacion);

                Session["Cliente"] = cliente;

                //return PartialView("~/Views/Cliente/InfoCliente.cshtml", cliente);
                return(View("~/Views/Cliente/InfoCliente.cshtml", cliente));
            }
            catch
            {
                return(Json(new Respuesta()
                {
                    Resultado = "Error", Mensaje = "Error de autenticación, por favor verifique los datos."
                }, JsonRequestBehavior.AllowGet));
            }
        }
Exemplo n.º 3
0
        public ActionResult ActualizarEstadoProducto(long numeroProducto, string estado)
        {
            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.");
                    }

                    bool actualizo = ProductoBussiness.ActualizarEstadoProducto(numeroProducto, estado);

                    if (actualizo)
                    {
                        try
                        {
                            cliente.Productos = ProductoBussiness.ObtenerProductosActivosCliente(cliente.Identificacion);
                        }
                        catch
                        {
                            cliente.Productos = new List <Producto>();
                        }
                    }

                    Session["Cliente"] = cliente;

                    return(Json(new Respuesta()
                    {
                        Resultado = "Exito", Mensaje = "Se ha actualizado el estado del producto a " + estado + "."
                    }, JsonRequestBehavior.AllowGet));
                }
                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 actualizando el estado del producto."
                }, JsonRequestBehavior.AllowGet));
            }
        }