|
@@ -342,10 +342,22 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
|
int count = userMapper.selectCount(qw);
|
|
|
if (count > 0) {
|
|
|
User existingUser = userMapper.selectOne(qw);
|
|
|
- List<Integer> uids = userMapper.selectList(new QueryWrapper<User>().eq("parent_id", parentUser.getId())).stream().map(User::getId).collect(Collectors.toList());
|
|
|
- uids.add(-1);
|
|
|
- Integer countUser = userMapper.selectCount(new QueryWrapper<User>().in("parent_id", uids));
|
|
|
- if (existingUser.getParentId() == parentUser.getId()||countUser>0) {
|
|
|
+ List<Integer> pIds = projectMapper.selectList(new QueryWrapper<Project>().eq("owner_company", parentUser.getCompanyId())).stream().map(Project::getId).collect(Collectors.toList());
|
|
|
+ pIds.add(-1);
|
|
|
+ List<Integer> managerIds = projectMapper.selectList(new QueryWrapper<Project>().eq("owner_company", parentUser.getCompanyId())).stream().map(Project::getManagerId).collect(Collectors.toList());
|
|
|
+ List<Integer> usersIds = projectUserMapper.selectList(new QueryWrapper<ProjectUser>().in("project_id", pIds)).stream().map(ProjectUser::getUserId).collect(Collectors.toList());
|
|
|
+ List<Integer> projectApproveIds = projectApproveMapper.selectList(new QueryWrapper<ProjectApprove>().in("project_id", pIds)).stream().map(ProjectApprove::getApproverId).collect(Collectors.toList());
|
|
|
+ usersIds.add(-1);
|
|
|
+ usersIds.addAll(managerIds);
|
|
|
+ usersIds.addAll(projectApproveIds);
|
|
|
+// if (usersIds.contains(existingUser.getId())) {
|
|
|
+// msg.setError("该账号已参与本资产方公司下的其他项目,请前往本项目详情添加即可");
|
|
|
+// return msg;
|
|
|
+// }
|
|
|
+// List<Integer> uids = userMapper.selectList(new QueryWrapper<User>().eq("parent_id", parentUser.getId())).stream().map(User::getId).collect(Collectors.toList());
|
|
|
+// uids.add(-1);
|
|
|
+// Integer countUser = userMapper.selectCount(new QueryWrapper<User>().in("parent_id", uids));
|
|
|
+ if (usersIds.contains(existingUser.getId())) {
|
|
|
msg.setError("该账号已存在,请勿重新创建");
|
|
|
return msg;
|
|
|
} else {
|