Пример #1
0
        /// <summary>
        /// 获取角色分配页面数据
        /// </summary>
        /// <param name="UserID"></param>
        /// <param name="RoleName"></param>
        /// <returns></returns>
        public List <Role_S> GetAllRoleWithUser(string UserID, string RoleName)
        {
            using (RoleAccess access = new RoleAccess())
            {
                var UserRoleIDs = access.GetUserRoles(UserID).Select(s => s.ID);
                var spec        = Specification <RoleEntity> .Create(c => c.RecordStatus != (int)RecordStatus.UnEnable);

                if (!string.IsNullOrWhiteSpace(RoleName))
                {
                    spec &= Specification <RoleEntity> .Create(c => c.RoleName.Contains(RoleName));
                }
                var AllRoles = access.GetAll <RoleEntity>(spec);
                var list     = AllRoles.Adapter <RoleEntity, Role_S>(new List <Role_S>());
                list.ForEach(f => f.IsHas = UserRoleIDs.Contains(f.ID));
                list = list.OrderBy(o => !o.IsHas).ThenBy(t => t.RoleName).ToList();
                return(list);
            }
        }
Пример #2
0
 public Task <List <Role> > GetAllRoles()
 {
     return(_roleAccess.GetAll());
 }