ソースを参照

fix: 报告获取任务超限额 1

shc 7 ヶ月 前
コミット
37d9ca8381

+ 5 - 2
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmReportServiceImpl.java

@@ -1080,13 +1080,16 @@ public class WmReportServiceImpl extends ServiceImpl<WmReportMapper, WmReport> i
         }
 
         // 获取当前积分包的所有任务数
-        List<Integer> tids = wmTaskService.list(Wrappers.<WmTask>lambdaQuery().eq(WmTask::getScorePackageId, scorePackage.getId())).stream().mapToInt(t -> Integer.parseInt(t.getId())).boxed().distinct().sorted().collect(Collectors.toList());
+        List<Integer> tids = wmTaskService.list(Wrappers.<WmTask>lambdaQuery()
+                        .eq(WmTask::getTaskStatus, "3")
+                        .eq(WmTask::getScorePackageId, scorePackage.getId())).stream()
+                .mapToInt(t -> Integer.parseInt(t.getId())).boxed().distinct().sorted().collect(Collectors.toList());
 
         List<SysCheckChainNodeCheckHistory> his = checkChainNodeCheckHistoryService.list(
                 Wrappers.<SysCheckChainNodeCheckHistory>lambdaQuery()
                         .in(CollUtil.isNotEmpty(tids), SysCheckChainNodeCheckHistory::getTargetId, tids)
                         .eq(SysCheckChainNodeCheckHistory::getNodeId, nodeId));
-        Set<Integer> collect = his.stream().mapToInt(SysCheckChainNodeCheckHistory::getTargetId).boxed().collect(Collectors.toSet());
+        List<Integer> collect = his.stream().mapToInt(SysCheckChainNodeCheckHistory::getTargetId).boxed().distinct().sorted().collect(Collectors.toList());
         if (CollUtil.isNotEmpty(collect)) {
             lambdaQueryWrapper.notIn(WmTask::getId, collect);
         }