GA 非管理员看到的人员列表
parent
99e5b102b7
commit
6e363601a6
|
|
@ -461,6 +461,8 @@ namespace IRaCIS.Core.Application.Service
|
|||
public async Task<PageOutput<UserListDTO>> GetUserList(UserListQueryDTO inQuery)
|
||||
{
|
||||
|
||||
var isGAGroupAdmin = _userInfo.HospitalGroupAdminIdList.Any();
|
||||
|
||||
var userQueryable = _identityUserRepository.Where(x => x.UserRoleList.Any(x => x.UserTypeEnum != UserTypeEnum.SuperAdmin))
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.UserName), t => t.UserName.Contains(inQuery.UserName))
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.RealName), t => t.FullName.Contains(inQuery.RealName))
|
||||
|
|
@ -482,8 +484,8 @@ namespace IRaCIS.Core.Application.Service
|
|||
.WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.OA, t => !t.UserRoleList.Any(t => t.UserTypeEnum == UserTypeEnum.Admin || t.UserTypeEnum == UserTypeEnum.SuperAdmin))
|
||||
|
||||
//GA 只能看有该课题组的用户,并且不是admin oa
|
||||
.WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.GA && _userInfo.HospitalGroupAdminIdList.Any(), t => !t.UserRoleList.Any(t => t.UserTypeEnum == UserTypeEnum.Admin || t.UserTypeEnum == UserTypeEnum.SuperAdmin || t.UserTypeEnum == UserTypeEnum.OA)
|
||||
&& t.IdentityUserHospitalGroupList.Any(t => _userInfo.HospitalGroupAdminIdList.Contains(t.HospitalGroupId)))
|
||||
.WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.GA, t => !t.UserRoleList.Any(t => t.UserTypeEnum == UserTypeEnum.Admin || t.UserTypeEnum == UserTypeEnum.SuperAdmin || t.UserTypeEnum == UserTypeEnum.OA)
|
||||
&& t.IdentityUserHospitalGroupList.Any(t => isGAGroupAdmin ? _userInfo.HospitalGroupAdminIdList.Contains(t.HospitalGroupId) : false))
|
||||
.ProjectTo<UserListDTO>(_mapper.ConfigurationProvider);
|
||||
|
||||
return await userQueryable.ToPagedListAsync(inQuery);
|
||||
|
|
|
|||
Loading…
Reference in New Issue