Exemplo n.º 1
0
        public ActionResult Index(int id = 0)
        {
            //obtiene los datos principales de la sucursal y los asigna a una variable de sesión


            if (id > 0)
            {
                var suc = new SucursalDatos();

                if (!ControlAcceso.AccesoSucursal(id))
                {
                    return(RedirectToAction("AccesoDenegadoSuc", "Home"));
                }

                //Si ya existe datos guardado en sesion
                //validamos si el idSucursal es distinto al de la session actual.
                if (Session["Sucursal"] != null)
                {
                    suc = Session["Sucursal"] as SucursalDatos;

                    //Si la variable idSucursal es distinto al IdSucursal de la session
                    //entonces se selecciono una nueva sucursal
                    if (suc != null && suc.IdSucursal != id)
                    {
                        suc = ctx.ObtenerSucursalDatosPorId(id);
                    }
                }
                //Si la session actual es null
                else if (Session["Sucursal"] == null)
                {
                    suc = ctx.ObtenerSucursalDatosPorId(id);
                }


                //Si no se encontró la sucursal
                if (suc == null)
                {
                    return(RedirectToAction("Index", "Home"));
                }

                //Agregamos los nuevos datos a la session
                //y guardamos en la lista de mas recientes.
                if (suc.GuardadoEnReciente == false)
                {
                    suc.GuardadoEnReciente = ctx.InsertarSucursalReciente(id);
                    Session["Sucursal"]    = suc;
                }

                return(View(suc));
            }

            return(RedirectToAction("Index", "Home"));
        }
Exemplo n.º 2
0
        public bool IsValid()
        {
            var user = ControlAcceso.GetUsuarioEnSession();

            //Si el perfil del usuario es SU se le concede acceso inmediato
            if (user.IdPerfil == 0)
            {
                return(true);
            }

            var reg = HttpContext.Current.Session["Sucursal"] as Sucursal;

            if (reg == null)
            {
                return(false);
            }

            return(ControlAcceso.AccesoSucursal(reg.IdSucursal));
        }