ソースを参照

fix: check by son pkg

shc 4 ヶ月 前
コミット
a87f59b5a3

+ 8 - 3
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/manager/WmPackageManager.java

@@ -352,8 +352,13 @@ public class WmPackageManager {
     }
 
     // 获取积分包中的任务
-    List<WmTask> tasks =
-        taskService.list(Wrappers.<WmTask>lambdaQuery().eq(WmTask::getScorePackageId, packageId));
+    List<String> pkgIds = scorePackageService.list(
+            Wrappers.<WmScorePackage>lambdaQuery().eq(WmScorePackage::getRelationScoreId, packageId))
+        .stream().map(WmScorePackage::getId).distinct().sorted().collect(
+            Collectors.toList());
+
+    List<WmTask> tasks = CollUtil.isEmpty(pkgIds) ? Collections.emptyList() :
+        taskService.list(Wrappers.<WmTask>lambdaQuery().in(WmTask::getScorePackageId, pkgIds));
     Map<String, WmTask> taskId2EntityMap =
         tasks.stream().collect(Collectors.toMap(WmTask::getId, Function.identity()));
 
@@ -385,7 +390,7 @@ public class WmPackageManager {
             .collect(Collectors.toList());
 
     double passedByNode6ScoreSum =
-        CollUtil.isNotEmpty(passedByNode6)
+        CollUtil.isEmpty(passedByNode6)
             ? 0
             : taskId2EntityMap.entrySet().stream()
                 .filter(entry -> passedByNode6.contains(entry.getKey()))