|
@@ -14,11 +14,14 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.qunzhixinxi.hnqz.admin.api.constant.CacheConstants;
|
|
import com.qunzhixinxi.hnqz.admin.api.constant.CacheConstants;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.constant.UpmsState;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.constant.UpmsType;
|
|
import com.qunzhixinxi.hnqz.admin.api.dto.SysCheckChainNodeCheckHistoryDTO;
|
|
import com.qunzhixinxi.hnqz.admin.api.dto.SysCheckChainNodeCheckHistoryDTO;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysCheckChainNodeCheckHistory;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysCheckChainNodeCheckHistory;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDept;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDept;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDeptRelation;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDeptRelation;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDictItem;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysDictItem;
|
|
|
|
+import com.qunzhixinxi.hnqz.admin.api.entity.SysImplementPlan;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.SysUser;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmReportOpt;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmReportOpt;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmDeptTaskTypeConfig;
|
|
import com.qunzhixinxi.hnqz.admin.api.entity.WmDeptTaskTypeConfig;
|
|
@@ -66,6 +69,7 @@ import com.qunzhixinxi.hnqz.admin.service.WmScorePackageService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageStatusService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmScorePackageStatusService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskTypeService;
|
|
import com.qunzhixinxi.hnqz.admin.service.WmTaskTypeService;
|
|
|
|
+import com.qunzhixinxi.hnqz.common.core.exception.BizException;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.core.util.R;
|
|
import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
|
|
import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
|
|
import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
|
|
import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
|
|
@@ -83,6 +87,7 @@ import java.util.Collections;
|
|
import java.util.Comparator;
|
|
import java.util.Comparator;
|
|
import java.util.HashMap;
|
|
import java.util.HashMap;
|
|
import java.util.HashSet;
|
|
import java.util.HashSet;
|
|
|
|
+import java.util.LinkedList;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
import java.util.Objects;
|
|
import java.util.Objects;
|
|
@@ -1080,7 +1085,51 @@ public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> i
|
|
}
|
|
}
|
|
|
|
|
|
// 获取当前积分包的所有任务数
|
|
// 获取当前积分包的所有任务数
|
|
- List<String> pIds = wmScorePackageService.list(Wrappers.<WmScorePackage>lambdaQuery().eq(WmScorePackage::getRelationScoreId, scorePackage.getId())).stream().map(WmScorePackage::getId).distinct().sorted().collect(Collectors.toList());
|
|
|
|
|
|
+ List<String> pIds = new LinkedList<>();
|
|
|
|
+ String typeid = scorePackage.getTypeid();
|
|
|
|
+
|
|
|
|
+ if (UpmsType.PackageType.TYPE_3.getType().equals(typeid)) {
|
|
|
|
+ pIds.add(scorePackage.getId());
|
|
|
|
+ } else {
|
|
|
|
+
|
|
|
|
+ List<WmScorePackage> packages = wmScorePackageService.list(Wrappers.<WmScorePackage>lambdaQuery().eq(WmScorePackage::getRelationScoreId, scorePackage.getId()));
|
|
|
|
+
|
|
|
|
+ if (CollUtil.isNotEmpty(packages)) {
|
|
|
|
+
|
|
|
|
+ while (true) {
|
|
|
|
+ // 获取子集
|
|
|
|
+ List<String> ppIds = packages.stream().map(WmScorePackage::getId).distinct().sorted().collect(Collectors.toList());
|
|
|
|
+ Map<Boolean, List<WmScorePackage>> coll = wmScorePackageService.list(Wrappers.<WmScorePackage>lambdaQuery().in(WmScorePackage::getId, ppIds))
|
|
|
|
+ .stream().collect(Collectors.partitioningBy(p -> UpmsType.PackageType.TYPE_3.getType().equals(p.getTypeid())));
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ List<WmScorePackage> type3Pkg = coll.get(Boolean.TRUE);
|
|
|
|
+
|
|
|
|
+ if (CollUtil.isNotEmpty(type3Pkg)) {
|
|
|
|
+ List<String> collect1 = type3Pkg.stream().map(WmScorePackage::getId).collect(Collectors.toList());
|
|
|
|
+ pIds.addAll(collect1);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 还存在下级的可能行
|
|
|
|
+ List<WmScorePackage> neType3Pkg = coll.get(Boolean.FALSE);
|
|
|
|
+ if (CollUtil.isNotEmpty(neType3Pkg)) {
|
|
|
|
+ List<String> coll2 = neType3Pkg.stream().map(WmScorePackage::getId).distinct().sorted().collect(Collectors.toList());
|
|
|
|
+ packages = wmScorePackageService.list(Wrappers.<WmScorePackage>lambdaQuery().in(WmScorePackage::getRelationScoreId, coll2));
|
|
|
|
+ } else {
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (CollUtil.isEmpty(pIds)){
|
|
|
|
+ throw new BizException("不存在C端包,无法获取实际服务详情");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ // List<String> pIds = wmScorePackageService.list(Wrappers.<WmScorePackage>lambdaQuery().eq(WmScorePackage::getRelationScoreId, scorePackage.getId())).stream().map(WmScorePackage::getId).distinct().sorted().collect(Collectors.toList());
|
|
|
|
|
|
List<Integer> tids = wmTaskService.list(Wrappers.<WmTask>lambdaQuery()
|
|
List<Integer> tids = wmTaskService.list(Wrappers.<WmTask>lambdaQuery()
|
|
// .eq(WmTask::getTaskStatus, "3")
|
|
// .eq(WmTask::getTaskStatus, "3")
|