feat(用户身份状态管理): 成员移出组织/项目,原指派给这个成员的工作项/其他该怎么显示
1. 项目管理中获取用户信息时判断用户是否已离职,若已离职进行标记 2. 项目可选成员列表中需排除已离职用户
This commit is contained in:
parent
e173dbbd8c
commit
f3a28c8aae
|
|
@ -3,6 +3,7 @@ package com.microservices.pms.common.service.impl;
|
|||
import com.alibaba.fastjson2.JSONArray;
|
||||
import com.microservices.common.core.constant.SecurityConstants;
|
||||
import com.microservices.common.core.constant.UserConstants;
|
||||
import com.microservices.common.core.enums.UserIdentityStatus;
|
||||
import com.microservices.common.core.exception.ServiceException;
|
||||
import com.microservices.common.core.utils.StringUtils;
|
||||
import com.microservices.common.httpClient.util.GitLinkRequestHelper;
|
||||
|
|
@ -146,6 +147,12 @@ public class PmsCommonServiceImpl implements IPmsCommonService
|
|||
if(sysUser==null){
|
||||
return null;
|
||||
}
|
||||
SysUserDeptRole userIdentity = FeignUtils.getReturnData(
|
||||
remoteUserService.getAllStatusUserIdentityByDeptIdAndUserId(SecurityUtils.getDeptId(), sysUser.getUserId(), SecurityConstants.INNER)
|
||||
);
|
||||
if (userIdentity != null && UserIdentityStatus.QUIT.getState().equals(userIdentity.getState())) {
|
||||
sysUser.setNickName(sysUser.getNickName() + "(已离职)");
|
||||
}
|
||||
return sysUser.toSimpleSysUser(gitLinkRequestHelper.gitLinkUrl);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
package com.microservices.pms.project.service.impl;
|
||||
|
||||
import com.microservices.common.core.constant.SecurityConstants;
|
||||
import com.microservices.common.core.enums.UserIdentityStatus;
|
||||
import com.microservices.common.core.exception.ServiceException;
|
||||
import com.microservices.common.core.utils.PageUtils;
|
||||
import com.microservices.common.core.web.page.GenericsTableDataInfo;
|
||||
|
|
@ -12,7 +14,10 @@ import com.microservices.pms.project.domain.vo.PmsProjectMembersSearchVo;
|
|||
import com.microservices.pms.project.mapper.PmsProjectMembersMapper;
|
||||
import com.microservices.pms.project.service.IPmsProjectMembersService;
|
||||
import com.microservices.pms.project.service.IPmsProjectService;
|
||||
import com.microservices.system.api.RemoteUserService;
|
||||
import com.microservices.system.api.domain.SimpleSysUser;
|
||||
import com.microservices.system.api.domain.SysUserDeptRole;
|
||||
import com.microservices.system.api.utils.FeignUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
|
|
@ -21,6 +26,7 @@ import org.springframework.stereotype.Service;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 项目-成员Service业务层处理
|
||||
|
|
@ -40,6 +46,8 @@ public class PmsProjectMembersServiceImpl implements IPmsProjectMembersService
|
|||
@Autowired
|
||||
@Lazy
|
||||
private IPmsProjectService pmsProjectService;
|
||||
@Autowired
|
||||
private RemoteUserService remoteUserService;
|
||||
|
||||
/**
|
||||
* 查询项目-成员
|
||||
|
|
@ -67,8 +75,14 @@ public class PmsProjectMembersServiceImpl implements IPmsProjectMembersService
|
|||
@Override
|
||||
public GenericsTableDataInfo<PmsProjectMembersDetailVo> selectPmsProjectMembersList(PmsProjectMembers pmsProjectMembers)
|
||||
{
|
||||
pmsProjectService.selectAndCheckPmsProjectById(pmsProjectMembers.getPmsProjectId());
|
||||
PmsProject pmsProject = pmsProjectService.selectAndCheckPmsProjectById(pmsProjectMembers.getPmsProjectId());
|
||||
List<PmsProjectMembers> list = pmsProjectMembersMapper.selectPmsProjectMembersList(pmsProjectMembers);
|
||||
list = list.stream().filter(x -> {
|
||||
SysUserDeptRole userIdentity = FeignUtils.getReturnData(
|
||||
remoteUserService.getAllStatusUserIdentityByDeptIdAndUserId(pmsProject.getDeptId(), x.getUserId(), SecurityConstants.INNER)
|
||||
);
|
||||
return userIdentity != null && !UserIdentityStatus.QUIT.getState().equals(userIdentity.getState());
|
||||
}).collect(Collectors.toList());
|
||||
return PageUtils.toPage(list, x -> {
|
||||
PmsProjectMembersDetailVo pmsProjectMembersDetailVo = new PmsProjectMembersDetailVo();
|
||||
BeanUtils.copyProperties(x, pmsProjectMembersDetailVo);
|
||||
|
|
|
|||
Loading…
Reference in New Issue