public static bool AccesoAplicacion(Aplicacion app, int IdUser) { var result = false; ControlUsuario cu = new ControlUsuario(); var user = cu.GetUsuarioById(IdUser); //Si el usuario tiene perfil SU se le concede acceso inmediato if (user.IdPerfil == 1) { return(true); } //obtenemos el valor numerico del enumerado de aplicacion var idAplicacion = (int)app; //pasamos a un array las aplicaciones que tiene configurado el usuario var array = user.Aplicaciones.Split(','); //buscamos si la aplicacion esta dentro de la lista de aplicaciones // del usuario var encontrado = (from elemento in array where elemento == idAplicacion.ToString() select elemento).Count(); //si esta disponible if (encontrado > 0) { result = true; } return(result); }
/// <summary> /// Metodo que obtiene el Usuario con el Id de la session activa /// </summary> /// <returns></returns> public static SYA_Usuarios GetUsuarioEnSession() { ControlUsuario cu = new ControlUsuario(); var usuario = cu.GetUsuarioById(SessionHelpers.GetIdUsuario()); return(usuario); }
/// <summary> /// Metodo para validar si el usuario tiene acceso a la sucursal idSucursal /// </summary> /// <param name="idSucursal"></param> /// <param name="idUser"></param> /// <returns></returns> public static bool AccesoSucursal(int idSucursal) { var user = ControlAcceso.GetUsuarioEnSession(); if (user == null) { return(false); } if (user.IdPerfil == 1) { return(true); } var cu = new ControlUsuario(); var result = false; var usuario = cu.GetUsuarioById(user.IdUsuario); if (usuario == null) { return(false); } if (usuario.Sucursales.Trim() == "*") { return(true); } var arraySucursales = usuario.Sucursales.Split(','); var encontrado = (from elemento in arraySucursales where elemento == idSucursal.ToString() select elemento).Count(); if (encontrado > 0) { result = true; } return(result); }