fix[project]: 仿真策划时,可以添加3D负责人
This commit is contained in:
@@ -147,6 +147,11 @@ public class TaskNodePo extends NodeAllBase {
|
||||
*/
|
||||
private String attionMembers;
|
||||
|
||||
/**
|
||||
* 3D负责人
|
||||
*/
|
||||
private String tMembers;
|
||||
|
||||
/**
|
||||
* 拓展属性集合
|
||||
*/
|
||||
|
||||
@@ -774,10 +774,26 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
|
||||
}
|
||||
}
|
||||
|
||||
// 3D负责人
|
||||
List<CIDUserResp> tMemberList = taskChildren.stream().filter(node -> CollectionUtils.isNotEmpty(node.getTMemberList())).flatMap(item -> item.getTMemberList().stream().filter(Objects::nonNull)).toList();
|
||||
List<Long> tMemberIdList = new ArrayList<>();
|
||||
List<CIDUserResp> distinctTMemberList = projectNodePo.getPayAttentionMemberList();
|
||||
if (CollectionUtils.isNotEmpty(tMemberIdList)) {
|
||||
for (CIDUserResp cidUserResp : tMemberList) {
|
||||
if (tMemberIdList.contains(cidUserResp.getUserId())) {
|
||||
continue;
|
||||
}
|
||||
distinctTMemberList.add(cidUserResp);
|
||||
tMemberIdList.add(cidUserResp.getUserId());
|
||||
}
|
||||
}
|
||||
|
||||
projectNodePo.setPMemberList(distinctPMemberList);
|
||||
projectNodePo.setEMemberList(distinctEMemberList);
|
||||
// 仿真关注人
|
||||
projectNodePo.setPayAttentionMemberList(distinctAttionMemberList);
|
||||
// 3D负责人
|
||||
projectNodePo.setTMemberList(distinctTMemberList);
|
||||
|
||||
for (NodeAllBase child : children) {
|
||||
List<NodeAllBase> eachChildren = child.getChildren();
|
||||
@@ -1017,6 +1033,8 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
|
||||
List<Long> pUserIdList = memberList.stream().filter(member -> MemberTypeEnum.PRINCIPAL.getCode().equals(member.getType())).map(SimulationTaskMember::getUserId).distinct().toList();
|
||||
// 关注人
|
||||
List<Long> attionUserIdList = memberList.stream().filter(member -> MemberTypeEnum.ATTENTION.getCode().equals(member.getType())).map(SimulationTaskMember::getUserId).distinct().toList();
|
||||
// 3D负责人
|
||||
List<Long> tUserIdList = memberList.stream().filter(member -> MemberTypeEnum.THREED.getCode().equals(member.getType())).map(SimulationTaskMember::getUserId).distinct().toList();
|
||||
|
||||
if (CollectionUtils.isNotEmpty(eUserIdList)) {
|
||||
List<CIDUserResp> eMemberList = new ArrayList<>();
|
||||
@@ -1062,6 +1080,23 @@ public class ProjectServiceImpl extends BaseService implements IProjectService {
|
||||
taskNodePo.setAttionMembers(taskNodePo.getPayAttentionMemberList().stream().map(CIDUserResp::getNickname).collect(Collectors.joining(",")));
|
||||
}
|
||||
}
|
||||
|
||||
// 3D负责人
|
||||
if (CollectionUtils.isNotEmpty(tUserIdList)) {
|
||||
List<CIDUserResp> tMemberList = new ArrayList<>();
|
||||
for (Long tUserId : tUserIdList) {
|
||||
CIDUserResp cidUserResp = cidUserMap.get(tUserId);
|
||||
if (ObjectUtils.isEmpty(cidUserResp)) {
|
||||
continue;
|
||||
}
|
||||
tMemberList.add(cidUserResp);
|
||||
}
|
||||
taskNodePo.setTMemberList(tMemberList);
|
||||
if (CollectionUtils.isNotEmpty(taskNodePo.getTMemberList())) {
|
||||
taskNodePo.setTMembers(taskNodePo.getTMemberList().stream().map(CIDUserResp::getNickname).collect(Collectors.joining(",")));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user