Exemplo n.º 1
0
    {    /// <summary>
        /// 判断用户访问某个页面的权限
        /// </summary>
        /// <param name="memberID">会员ID</param>
        /// <returns></returns>
        public static bool ValidateMemberPagePermission(tb_Mem_Member member, tb_Pages page)
        {
            if (member == null || page == null)
            {
                return(false);
            }
            //先判断用户是否有权访问该页面
            tb_Permissions permission = DataContext.tb_Permissions.Where(t => t.MemberID == member.MemberID && t.PageID == page.PageID).SingleOrDefault();

            if (permission != null)
            {
                return(true);
            }
            //若用户没有权限,判断他所属的角色是否有权访问该页面
            else
            {
                foreach (tb_MemberInRoles role in member.tb_MemberInRoles)
                {
                    permission = DataContext.tb_Permissions.Where(t => t.RoleID == role.RoleID && t.PageID == page.PageID).SingleOrDefault();
                    if (permission != null)
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
Exemplo n.º 2
0
 /// <summary>
 /// 授予一个或多个用户访问该页面的权限
 /// </summary>
 /// <param name="pageID"></param>
 /// <returns></returns>
 public static void AddMemberPages(long pageID, List <long> memberIDList)
 {
     try
     {
         tb_Pages page = GetPageByID(pageID);
         foreach (long id in memberIDList)
         {
             tb_Permissions p = new tb_Permissions();
             p.MemberID = id;
             page.tb_Permissions.Add(p);
         }
         DataContext.SaveChanges();
     }
     catch (Exception ex)
     {
         LogHelper.g_Logger.ErrorFormat("授予用户权限失败!错误信息:{0}", ex.Message);
         throw ex;
     }
 }
Exemplo n.º 3
0
 /// <summary>
 /// 删除一个或多个用户访问该页面的权限
 /// </summary>
 /// <param name="pageID"></param>
 /// <param name="roleIDList"></param>
 public static void RemovePageMembers(long pageID, List <long> memberIDList)
 {
     try
     {
         tb_Pages page = GetPageByID(pageID);
         foreach (long id in memberIDList)
         {
             tb_Permissions p = page.tb_Permissions.Where(t => t.MemberID == id).First();
             page.tb_Permissions.Remove(p);
             DataContext.tb_Permissions.DeleteObject(p);
         }
         DataContext.SaveChanges();
     }
     catch (Exception ex)
     {
         LogHelper.g_Logger.ErrorFormat("删除用户权限失败!错误信息:{0}", ex.Message);
         throw ex;
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// 授予某个角色访问一个或多个页面的权限
 /// </summary>
 /// <param name="roleID"></param>
 /// <param name="pageIDList"></param>
 public static void AddRolePages(long roleID, List <long> pageIDList)
 {
     try
     {
         tb_Roles role = BizRole.GetRoleByID(roleID);
         foreach (long id in pageIDList)
         {
             tb_Permissions p = new tb_Permissions();
             p.PageID = id;
             role.tb_Permissions.Add(p);
         }
         DataContext.SaveChanges();
     }
     catch (Exception ex)
     {
         LogHelper.g_Logger.ErrorFormat("授予角色权限失败!错误信息:{0}", ex.Message);
         throw ex;
     }
 }
Exemplo n.º 5
0
 /// <summary>
 /// 解除某个角色访问一个或多个页面的权限
 /// </summary>
 /// <param name="roleID"></param>
 /// <param name="pageIDList"></param>
 public static void RemoveRolePages(long roleID, List <long> pageIDList)
 {
     try
     {
         tb_Roles role = BizRole.GetRoleByID(roleID);
         foreach (long id in pageIDList)
         {
             tb_Permissions p = role.tb_Permissions.Where(t => t.PageID == id).First();
             role.tb_Permissions.Remove(p);
             DataContext.tb_Permissions.DeleteObject(p);
         }
         DataContext.SaveChanges();
     }
     catch (Exception ex)
     {
         LogHelper.g_Logger.ErrorFormat("删除角色权限失败!错误信息:{0}", ex.Message);
         throw ex;
     }
 }
Exemplo n.º 6
0
 /// <summary>
 /// 授予会员访问一个或多个页面的权限
 /// </summary>
 /// <param name="memberID"></param>
 /// <param name="pageIDList"></param>
 public static void AddMemberPages(long memberID, List <long> pageIDList)
 {
     try
     {
         tb_Mem_Member member = BizMember.GetMemberByID(memberID);
         foreach (long id in pageIDList)
         {
             tb_Permissions p = new tb_Permissions();
             p.PageID = id;
             member.tb_Permissions.Add(p);
         }
         DataContext.SaveChanges();
     }
     catch (Exception ex)
     {
         LogHelper.g_Logger.ErrorFormat("授予会员权限失败!错误信息:{0}", ex.Message);
         throw ex;
     }
 }
Exemplo n.º 7
0
 /// <summary>
 /// 解除会员访问某些页面的权限
 /// </summary>
 /// <param name="memberID"></param>
 /// <param name="pageIDList"></param>
 public static void RemoveMemberPages(long memberID, List <long> pageIDList)
 {
     try
     {
         tb_Mem_Member member = BizMember.GetMemberByID(memberID);
         foreach (long id in pageIDList)
         {
             tb_Permissions p = member.tb_Permissions.Where(t => t.PageID == id).First();
             member.tb_Permissions.Remove(p);
             DataContext.tb_Permissions.DeleteObject(p);
         }
         DataContext.SaveChanges();
     }
     catch (Exception ex)
     {
         LogHelper.g_Logger.ErrorFormat("解除会员权限失败!错误信息:{0}", ex.Message);
         throw ex;
     }
 }