Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <SystemUserGetRoleUsersOutput> GetChosenPrivilegeMasterUser(SystemUserGetChosenPrivilegeMasterUser input)
        {
            SystemUserGetRoleUsersOutput output = new SystemUserGetRoleUsersOutput();
            var chosenUserDtos = await _userInfoRepository.GetChosenUser(new FreezeInput { IsFreeze = false });

            var allOrgs = (await _organizationLogic.GetAllEnumerableAsync()).ToList();
            //获取所有的用户
            var permissions =
                (await
                 _permissionUserLogic.GetPermissionUsersByPrivilegeMasterAdnPrivilegeMasterValue(input.PrivilegeMaster,
                                                                                                 input.PrivilegeMasterValue)).ToList();
            IList <string>      haveUser = new List <string>();
            IList <TransferDto> allUser  = new List <TransferDto>();

            foreach (var user in chosenUserDtos)
            {
                var permission = permissions.Where(w => w.PrivilegeMasterUserId == user.UserId).FirstOrDefault();
                if (permission != null)
                {
                    haveUser.Add(user.UserId.ToString());
                }

                TransferDto dto = new TransferDto
                {
                    key   = user.UserId.ToString(),
                    label = user.Name
                };
                string description  = string.Empty;
                var    organization = allOrgs.FirstOrDefault(w => w.OrganizationId == user.OrganizationId);
                if (organization != null && !organization.ParentIds.IsNullOrEmpty())
                {
                    foreach (var parent in organization.ParentIds.Split(','))
                    {
                        //查找上级
                        var dicinfo = allOrgs.FirstOrDefault(w => w.OrganizationId.ToString() == parent);
                        if (dicinfo != null)
                        {
                            description += dicinfo.Name + ">";
                        }
                    }
                    if (!description.IsNullOrEmpty())
                    {
                        description = description.TrimEnd('>');
                    }
                }
                dto.description = description;
                allUser.Add(dto);
            }
            output.AllUser  = allUser;
            output.HaveUser = haveUser;
            return(output);
        }
Пример #2
0
 public async Task <JsonResult> GetChosenPrivilegeMasterUser(SystemUserGetChosenPrivilegeMasterUser input)
 {
     return(Json(await _userInfoLogic.GetChosenPrivilegeMasterUser(input)));
 }