|
@@ -212,6 +212,7 @@ public class PmProjectServiceImpl extends AbstractCrudService<PmProjectMapper, P
|
|
|
String username = SecurityUtils.getUsername();
|
|
|
String nickName = SecurityUtils.getLoginUser().getSysUser().getNickName();
|
|
|
Integer tenantId = SecurityUtils.getTenantId();
|
|
|
+
|
|
|
LambdaQueryWrapper<PmProject> lambdaQuery = Wrappers.lambdaQuery();
|
|
|
lambdaQuery.eq(PmProject::getTenantId, SecurityUtils.getTenantId()).eq(PmProject::getDelFlag, 0)
|
|
|
.eq(visibleRange != null, PmProject::getVisibleRange, visibleRange);
|
|
@@ -225,9 +226,17 @@ public class PmProjectServiceImpl extends AbstractCrudService<PmProjectMapper, P
|
|
|
if (visibleRange != null && visibleRange == 1) {
|
|
|
break;
|
|
|
}
|
|
|
- lambdaQuery.and(q -> q.eq(PmProject::getProjectHead, userId)
|
|
|
- .or().apply("FIND_IN_SET('" + SecurityUtils.getUserId() + "', project_member) > 0")
|
|
|
- .or().eq(PmProject::getCreateBy, username));
|
|
|
+ lambdaQuery.and(wrapper -> wrapper
|
|
|
+ .eq(PmProject::getVisibleRange, 2)
|
|
|
+ .or()
|
|
|
+ .eq(PmProject::getProjectHead, userId)
|
|
|
+ .or()
|
|
|
+ .apply("FIND_IN_SET('" + userId + "', project_member) > 0")
|
|
|
+ .or()
|
|
|
+ .eq(PmProject::getCreateBy, username)
|
|
|
+ )
|
|
|
+ .or()
|
|
|
+ .eq(PmProject::getVisibleRange, 1);
|
|
|
break;
|
|
|
case 1:
|
|
|
lambdaQuery.eq(PmProject::getProjectHead, userId);
|
|
@@ -238,15 +247,9 @@ public class PmProjectServiceImpl extends AbstractCrudService<PmProjectMapper, P
|
|
|
default:
|
|
|
throw new BusinessException("查询项目列表参数错误");
|
|
|
}
|
|
|
- if (StringUtils.isNotBlank(projectName)) {
|
|
|
- lambdaQuery.like(PmProject::getProjectName, projectName);
|
|
|
- }
|
|
|
- if (projectType != 0) {
|
|
|
- lambdaQuery.eq(PmProject::getProjectType, projectType);
|
|
|
- }
|
|
|
- if (projectStatus != 0) {
|
|
|
- lambdaQuery.eq(PmProject::getProjectStatus, projectStatus);
|
|
|
- }
|
|
|
+ lambdaQuery.like(projectName != null, PmProject::getProjectName, projectName);
|
|
|
+ lambdaQuery.eq(projectType != null, PmProject::getProjectType, projectType);
|
|
|
+ lambdaQuery.eq(projectStatus != null, PmProject::getProjectStatus, projectStatus);
|
|
|
lambdaQuery.orderByDesc(PmProject::getCreateTime);
|
|
|
List<PmProject> pmProjects = pmProjectMapper.selectList(lambdaQuery);
|
|
|
if (pmProjects.isEmpty()) {
|
|
@@ -309,25 +312,35 @@ public class PmProjectServiceImpl extends AbstractCrudService<PmProjectMapper, P
|
|
|
*/
|
|
|
@Override
|
|
|
public Map<String, Integer> sum() {
|
|
|
+ Integer tenantId = SecurityUtils.getTenantId();
|
|
|
+ Long userId = SecurityUtils.getUserId();
|
|
|
+
|
|
|
LambdaQueryWrapper<PmProject> lambdaQuery = Wrappers.lambdaQuery();
|
|
|
- lambdaQuery.eq(PmProject::getTenantId, SecurityUtils.getTenantId())
|
|
|
- .and(q -> q.eq(PmProject::getProjectHead, SecurityUtils.getUserId())
|
|
|
- .or().eq(PmProject::getVisibleRange, 1)
|
|
|
- .or().apply("FIND_IN_SET('" + SecurityUtils.getUserId() + "', project_member) > 0")
|
|
|
- .or().eq(PmProject::getCreateBy, SecurityUtils.getUsername()))
|
|
|
+ lambdaQuery.eq(PmProject::getTenantId, tenantId)
|
|
|
+ .eq(PmProject::getDelFlag, 0)
|
|
|
+ .eq(PmProject::getVisibleRange, 2)
|
|
|
+ .and(q -> q.or().eq(PmProject::getProjectHead, userId)
|
|
|
+ .or().apply("FIND_IN_SET('" + userId + "', project_member) > 0")
|
|
|
+ .or().eq(PmProject::getCreateBy, SecurityUtils.getUsername()));
|
|
|
+ Integer allA = this.count(lambdaQuery);
|
|
|
+
|
|
|
+ LambdaQueryWrapper<PmProject> lambdaQuery3 = Wrappers.lambdaQuery();
|
|
|
+ lambdaQuery3.eq(PmProject::getTenantId, tenantId)
|
|
|
+ .eq(PmProject::getVisibleRange, 1)
|
|
|
.eq(PmProject::getDelFlag, 0);
|
|
|
- Integer all = this.count(lambdaQuery);
|
|
|
+ Integer allB = this.count(lambdaQuery3);
|
|
|
+ int all = allA + allB;
|
|
|
|
|
|
LambdaQueryWrapper<PmProject> lambdaQuery1 = Wrappers.lambdaQuery();
|
|
|
- lambdaQuery1.eq(PmProject::getTenantId, SecurityUtils.getTenantId())
|
|
|
+ lambdaQuery1.eq(PmProject::getTenantId, tenantId)
|
|
|
.eq(PmProject::getDelFlag, 0)
|
|
|
- .eq(PmProject::getProjectHead, SecurityUtils.getUserId());
|
|
|
+ .eq(PmProject::getProjectHead, userId);
|
|
|
Integer head = this.count(lambdaQuery1);
|
|
|
|
|
|
LambdaQueryWrapper<PmProject> lambdaQuery2 = Wrappers.lambdaQuery();
|
|
|
- lambdaQuery2.eq(PmProject::getTenantId, SecurityUtils.getTenantId())
|
|
|
+ lambdaQuery2.eq(PmProject::getTenantId, tenantId)
|
|
|
.eq(PmProject::getDelFlag, 0)
|
|
|
- .apply("FIND_IN_SET('" + SecurityUtils.getUserId() + "', project_member) > 0");
|
|
|
+ .apply("FIND_IN_SET('" + userId + "', project_member) > 0");
|
|
|
Integer join = this.count(lambdaQuery2);
|
|
|
|
|
|
Map<String, Integer> sumMap = new HashMap<>();
|