|
@@ -40,6 +40,8 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
ProjectMapper projectMapper;
|
|
ProjectMapper projectMapper;
|
|
@Resource
|
|
@Resource
|
|
ProjectApproveMapper projectApproveMapper;
|
|
ProjectApproveMapper projectApproveMapper;
|
|
|
|
+ @Resource
|
|
|
|
+ CustomCompanyMapper customCompanyMapper;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public HttpRespMsg login(UserVO userVO, HttpServletRequest request) {
|
|
public HttpRespMsg login(UserVO userVO, HttpServletRequest request) {
|
|
@@ -74,22 +76,34 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
HttpRespMsg msg = new HttpRespMsg();
|
|
PageHelper.startPage(page.getPageNum(), page.getPageSize());
|
|
PageHelper.startPage(page.getPageNum(), page.getPageSize());
|
|
List<UserVO> users = new ArrayList<>();
|
|
List<UserVO> users = new ArrayList<>();
|
|
- List<Integer> uIds = new ArrayList<>();
|
|
|
|
- if(Constant.SYS_PARENT_ID == user.getParentId()){
|
|
|
|
|
|
+ List<Integer> uIds = new ArrayList<>();
|
|
|
|
+ if (Constant.SYS_PARENT_ID == user.getParentId()) {
|
|
users = userMapper.selectListByCondition(roleType, companyId, flag, user, keyName);
|
|
users = userMapper.selectListByCondition(roleType, companyId, flag, user, keyName);
|
|
} else if (Constant.SYS_ID == user.getParentId()) {
|
|
} else if (Constant.SYS_ID == user.getParentId()) {
|
|
- QueryWrapper<Project> qwr = new QueryWrapper<>();
|
|
|
|
- //资产方管理员,看到自己创建的项目下的所有人
|
|
|
|
- qwr.select("id").eq("creator_id", user.getId());
|
|
|
|
- uIds = projectMapper.selectList(qwr).stream().map(Project::getManagerId).collect(Collectors.toList());
|
|
|
|
- List<Integer> projectIds = projectMapper.selectList(qwr).stream().map(Project::getId).collect(Collectors.toList());
|
|
|
|
- projectIds.add(-1);
|
|
|
|
- List<Integer> projectUserIds = projectUserMapper.selectList(new QueryWrapper<ProjectUser>().in("project_id", projectIds)).stream().map(ProjectUser::getUserId).collect(Collectors.toList());
|
|
|
|
- uIds.addAll(projectUserIds);
|
|
|
|
- List<Integer> projectApproveIds = projectApproveMapper.selectList(new QueryWrapper<ProjectApprove>().in("project_id", projectIds)).stream().map(ProjectApprove::getApproverId).collect(Collectors.toList());
|
|
|
|
- uIds.addAll(projectApproveIds);
|
|
|
|
- uIds.add(-1);
|
|
|
|
- users = userMapper.selectUserListByCondition(roleType, companyId, flag,keyName,uIds);
|
|
|
|
|
|
+ if (user.getSubordinateType() == 0) {
|
|
|
|
+ QueryWrapper<Project> qwr = new QueryWrapper<>();
|
|
|
|
+ //资产方管理员,看到自己创建的项目下的所有人
|
|
|
|
+ qwr.select("id").eq("creator_id", user.getId());
|
|
|
|
+ uIds = projectMapper.selectList(qwr).stream().map(Project::getManagerId).collect(Collectors.toList());
|
|
|
|
+ List<Integer> projectIds = projectMapper.selectList(qwr).stream().map(Project::getId).collect(Collectors.toList());
|
|
|
|
+ projectIds.add(-1);
|
|
|
|
+ List<Integer> projectUserIds = projectUserMapper.selectList(new QueryWrapper<ProjectUser>().in("project_id", projectIds)).stream().map(ProjectUser::getUserId).collect(Collectors.toList());
|
|
|
|
+ uIds.addAll(projectUserIds);
|
|
|
|
+ List<Integer> projectApproveIds = projectApproveMapper.selectList(new QueryWrapper<ProjectApprove>().in("project_id", projectIds)).stream().map(ProjectApprove::getApproverId).collect(Collectors.toList());
|
|
|
|
+ uIds.addAll(projectApproveIds);
|
|
|
|
+ uIds.add(-1);
|
|
|
|
+ users = userMapper.selectUserListByCondition(roleType, companyId, flag, keyName, uIds);
|
|
|
|
+ } else if (user.getSubordinateType() == 1) {
|
|
|
|
+ List<Integer> projectIds = customCompanyMapper.selectList(new QueryWrapper<CustomCompany>().eq("company_id", user.getCompanyId())).stream().map(CustomCompany::getProjectId).collect(Collectors.toList());
|
|
|
|
+ projectIds.add(-1);
|
|
|
|
+ uIds = projectMapper.selectList(new QueryWrapper<Project>().in("id", projectIds)).stream().map(Project::getManagerId).collect(Collectors.toList());
|
|
|
|
+ List<Integer> projectUserIds = projectUserMapper.selectList(new QueryWrapper<ProjectUser>().in("project_id", projectIds)).stream().map(ProjectUser::getUserId).collect(Collectors.toList());
|
|
|
|
+ uIds.addAll(projectUserIds);
|
|
|
|
+ List<Integer> projectApproveIds = projectApproveMapper.selectList(new QueryWrapper<ProjectApprove>().in("project_id", projectIds)).stream().map(ProjectApprove::getApproverId).collect(Collectors.toList());
|
|
|
|
+ uIds.addAll(projectApproveIds);
|
|
|
|
+ uIds.add(-1);
|
|
|
|
+ users = userMapper.selectUserListByCondition(roleType, companyId, flag, keyName, uIds);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
List<Integer> pIds = projectMapper.selectList(new QueryWrapper<Project>().eq("manager_id", user.getId())).stream().map(Project::getId).collect(Collectors.toList());
|
|
List<Integer> pIds = projectMapper.selectList(new QueryWrapper<Project>().eq("manager_id", user.getId())).stream().map(Project::getId).collect(Collectors.toList());
|
|
pIds.add(-1);
|
|
pIds.add(-1);
|
|
@@ -98,7 +112,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
List<Integer> projectApproveIds = projectApproveMapper.selectList(new QueryWrapper<ProjectApprove>().in("project_id", pIds)).stream().map(ProjectApprove::getApproverId).collect(Collectors.toList());
|
|
List<Integer> projectApproveIds = projectApproveMapper.selectList(new QueryWrapper<ProjectApprove>().in("project_id", pIds)).stream().map(ProjectApprove::getApproverId).collect(Collectors.toList());
|
|
uIds.addAll(projectApproveIds);
|
|
uIds.addAll(projectApproveIds);
|
|
uIds.add(-1);
|
|
uIds.add(-1);
|
|
- users = userMapper.selectUserListByCondition(roleType, companyId, flag,keyName,uIds);
|
|
|
|
|
|
+ users = userMapper.selectUserListByCondition(roleType, companyId, flag, keyName, uIds);
|
|
}
|
|
}
|
|
List<Project> projects = new ArrayList<>();
|
|
List<Project> projects = new ArrayList<>();
|
|
for (UserVO userVO : users) {
|
|
for (UserVO userVO : users) {
|
|
@@ -109,17 +123,17 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
if (Constant.SYS_PARENT_ID == userVO.getParentId()) {
|
|
if (Constant.SYS_PARENT_ID == userVO.getParentId()) {
|
|
//系统超级管理员,可获得所有项目
|
|
//系统超级管理员,可获得所有项目
|
|
projects = projectMapper.selectList(qw);
|
|
projects = projectMapper.selectList(qw);
|
|
- for (Project project : projects) {
|
|
|
|
- set.add(project.getId());
|
|
|
|
- }
|
|
|
|
|
|
+// for (Project project : projects) {
|
|
|
|
+// set.add(project.getId());
|
|
|
|
+// }
|
|
userVO.setProjects(projects);
|
|
userVO.setProjects(projects);
|
|
} else if (Constant.SYS_ID == userVO.getParentId()) {
|
|
} else if (Constant.SYS_ID == userVO.getParentId()) {
|
|
//资产方管理员,看到自己创建的项目
|
|
//资产方管理员,看到自己创建的项目
|
|
- qw.select("id").eq("creator_id", userVO.getId());
|
|
|
|
|
|
+ qw.eq("creator_id", userVO.getId());
|
|
projects = projectMapper.selectList(qw);
|
|
projects = projectMapper.selectList(qw);
|
|
- for (Project project : projects) {
|
|
|
|
- set.add(project.getId());
|
|
|
|
- }
|
|
|
|
|
|
+// for (Project project : projects) {
|
|
|
|
+// set.add(project.getId());
|
|
|
|
+// }
|
|
userVO.setProjects(projects);
|
|
userVO.setProjects(projects);
|
|
} else {
|
|
} else {
|
|
QueryWrapper<Project> qwPro = new QueryWrapper<>();
|
|
QueryWrapper<Project> qwPro = new QueryWrapper<>();
|
|
@@ -183,7 +197,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
if (null != user.getPassword()) {
|
|
if (null != user.getPassword()) {
|
|
newUser.setPassword(MD5Util.getPassword(user.getPassword()));
|
|
newUser.setPassword(MD5Util.getPassword(user.getPassword()));
|
|
}
|
|
}
|
|
- if(null != user.getUsername()){
|
|
|
|
|
|
+ if (null != user.getUsername()) {
|
|
newUser.setUsername(user.getUsername());
|
|
newUser.setUsername(user.getUsername());
|
|
}
|
|
}
|
|
userMapper.updateById(newUser);
|
|
userMapper.updateById(newUser);
|
|
@@ -274,7 +288,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
//添加项目参与人记录
|
|
//添加项目参与人记录
|
|
if (projectIds != null) {
|
|
if (projectIds != null) {
|
|
List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
- ids.stream().forEach(e ->{
|
|
|
|
|
|
+ ids.stream().forEach(e -> {
|
|
ProjectUser projectUser = new ProjectUser();
|
|
ProjectUser projectUser = new ProjectUser();
|
|
projectUser.setProjectId(e);
|
|
projectUser.setProjectId(e);
|
|
projectUser.setSubordinate(existingUser.getCompanyId());
|
|
projectUser.setSubordinate(existingUser.getCompanyId());
|
|
@@ -310,7 +324,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
//添加项目参与人记录
|
|
//添加项目参与人记录
|
|
if (projectIds != null) {
|
|
if (projectIds != null) {
|
|
List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
- ids.stream().forEach(e ->{
|
|
|
|
|
|
+ ids.stream().forEach(e -> {
|
|
ProjectUser projectUser = new ProjectUser();
|
|
ProjectUser projectUser = new ProjectUser();
|
|
projectUser.setProjectId(e);
|
|
projectUser.setProjectId(e);
|
|
projectUser.setSubordinate(user.getCompanyId());
|
|
projectUser.setSubordinate(user.getCompanyId());
|
|
@@ -375,7 +389,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
//添加项目参与人记录
|
|
//添加项目参与人记录
|
|
if (projectIds != null) {
|
|
if (projectIds != null) {
|
|
ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
- ids.stream().forEach(e ->{
|
|
|
|
|
|
+ ids.stream().forEach(e -> {
|
|
ProjectUser projectUser = new ProjectUser();
|
|
ProjectUser projectUser = new ProjectUser();
|
|
projectUser.setProjectId(e);
|
|
projectUser.setProjectId(e);
|
|
projectUser.setSubordinate(existingUser.getCompanyId());
|
|
projectUser.setSubordinate(existingUser.getCompanyId());
|
|
@@ -410,7 +424,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
|
|
//添加项目参与人记录
|
|
//添加项目参与人记录
|
|
if (projectIds != null) {
|
|
if (projectIds != null) {
|
|
List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
List<Integer> ids = ListUtil.convertIntegerIdsArrayToList(projectIds);
|
|
- ids.stream().forEach(e ->{
|
|
|
|
|
|
+ ids.stream().forEach(e -> {
|
|
ProjectUser projectUser = new ProjectUser();
|
|
ProjectUser projectUser = new ProjectUser();
|
|
projectUser.setProjectId(e);
|
|
projectUser.setProjectId(e);
|
|
projectUser.setSubordinate(user.getCompanyId());
|
|
projectUser.setSubordinate(user.getCompanyId());
|