|
@@ -168,7 +168,7 @@ public class WmSupervisionManager {
|
|
|
Map<String, String> stat = new HashMap<>(2);
|
|
|
|
|
|
List<WmTaskSupervision> wmTaskSupervisions = pkgIdToTaskSupMap.get(pid);
|
|
|
- stat.put("supTotal", CollUtil.isNotEmpty(wmTaskSupervisions) ? String.valueOf(wmTaskSupervisions.size()) : "0");
|
|
|
+ stat.put("supTotal", CollUtil.isNotEmpty(wmTaskSupervisions) ? String.valueOf(wmTaskSupervisions.stream().map(WmTaskSupervision::getTaskId).collect(Collectors.toSet()).size()) : "0");
|
|
|
|
|
|
List<WmTask> total = pkgIdToTaskMap.get(pid.toString());
|
|
|
stat.put("total", CollUtil.isNotEmpty(total) ? String.valueOf(total.size()) : "0");
|
|
@@ -344,6 +344,21 @@ public class WmSupervisionManager {
|
|
|
return taskSupervisionService.createTaskSupervision(resource, user);
|
|
|
}
|
|
|
|
|
|
+ // /**
|
|
|
+ // * 获取可以监察的任务
|
|
|
+ // *
|
|
|
+ // * @param pkgId 执行包ID
|
|
|
+ // * @return 任务列表
|
|
|
+ // */
|
|
|
+ // public List<Map<String, Object>> listAvailableTask(Integer pkgId) {
|
|
|
+ //
|
|
|
+ // // 获取当前积分包已经监察过的任务ID
|
|
|
+ // Set<Integer> supTaskIds = taskSupervisionService.list(Wrappers.<WmTaskSupervision>lambdaQuery().eq(WmTaskSupervision::getPackageId, pkgId)).stream().mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
|
|
|
+ // List<WmTask> wmTasks = taskService.listAvailableTaskForSupervision(pkgId, supTaskIds);
|
|
|
+ // List<Map<String, Object>> maps = taskService.listTaskInfo(wmTasks, pkgId.toString());
|
|
|
+ // return maps;
|
|
|
+ // }
|
|
|
+
|
|
|
/**
|
|
|
* 获取可以监察的任务
|
|
|
*
|
|
@@ -352,14 +367,71 @@ public class WmSupervisionManager {
|
|
|
*/
|
|
|
public List<Map<String, Object>> listAvailableTask(Integer pkgId) {
|
|
|
|
|
|
- // 获取当前积分包已经监察过的任务ID
|
|
|
- Set<Integer> supTaskIds = taskSupervisionService.list(Wrappers.<WmTaskSupervision>lambdaQuery().eq(WmTaskSupervision::getPackageId, pkgId)).stream().mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
|
|
|
|
|
|
- List<WmTask> wmTasks = taskService.listAvailableTaskForSupervision(pkgId, supTaskIds);
|
|
|
+ List<Integer> roles = SecurityUtils.getRoles();
|
|
|
+
|
|
|
+
|
|
|
+ // 监察员
|
|
|
+ if (CollUtil.containsAny(roles, List.of(49, 52, 53, 56))) {
|
|
|
+
|
|
|
+ // 获取当前积分包已经监察过的任务ID
|
|
|
+ Set<Integer> supTaskIds = taskSupervisionService.list(Wrappers.<WmTaskSupervision>lambdaQuery().eq(WmTaskSupervision::getPackageId, pkgId)).stream().mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
|
|
|
+
|
|
|
+ List<WmTask> wmTasks = taskService.listAvailableTaskForSupervision(pkgId, supTaskIds);
|
|
|
+
|
|
|
+ List<Map<String, Object>> maps = taskService.listTaskInfo(wmTasks, pkgId.toString());
|
|
|
+
|
|
|
+ return maps;
|
|
|
+ } else if (CollUtil.containsAny(roles, List.of(37))) {
|
|
|
+ // 获取当前积分包已经监察过的任务ID
|
|
|
+ List<WmTaskSupervision> list = taskSupervisionService.list(Wrappers.<WmTaskSupervision>lambdaQuery()
|
|
|
+ .eq(WmTaskSupervision::getSupervisionState, UpmsState.TaskSupervisionState.PASSED)
|
|
|
+ .eq(WmTaskSupervision::getPackageId, pkgId).orderByDesc(WmTaskSupervision::getCreateTime));
|
|
|
|
|
|
- List<Map<String, Object>> maps = taskService.listTaskInfo(wmTasks, pkgId.toString());
|
|
|
+ if (CollUtil.isEmpty(list)) {
|
|
|
+ return Collections.emptyList();
|
|
|
+ }
|
|
|
+
|
|
|
+ Set<Integer> supTaskIds = list.stream().mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
|
|
|
+ List<WmTask> tasks = taskService.list(Wrappers.<WmTask>lambdaQuery().in(WmTask::getId, supTaskIds));
|
|
|
+ List<Map<String, Object>> maps = taskService.listTaskInfo(tasks, pkgId.toString());
|
|
|
+
|
|
|
+ Map<Integer, List<WmTaskSupervision>> collect = list.stream().collect(Collectors.groupingBy(WmTaskSupervision::getTaskId));
|
|
|
+
|
|
|
+ maps.forEach(m -> {
|
|
|
+ Integer id = Integer.valueOf(m.get("id").toString());
|
|
|
+ WmTaskSupervision wmTaskSupervision = collect.get(id).get(0);
|
|
|
+
|
|
|
+ m.put("supervision", wmTaskSupervision);
|
|
|
+
|
|
|
+ });
|
|
|
|
|
|
- return maps;
|
|
|
+ return maps;
|
|
|
+ } else {
|
|
|
+
|
|
|
+ // 获取当前积分包已经监察过的任务ID
|
|
|
+ List<WmTaskSupervision> list = taskSupervisionService.list(Wrappers.<WmTaskSupervision>lambdaQuery().eq(WmTaskSupervision::getPackageId, pkgId).orderByDesc(WmTaskSupervision::getCreateTime));
|
|
|
+
|
|
|
+ if (CollUtil.isEmpty(list)) {
|
|
|
+ return Collections.emptyList();
|
|
|
+ }
|
|
|
+
|
|
|
+ Set<Integer> supTaskIds = list.stream().mapToInt(WmTaskSupervision::getTaskId).boxed().collect(Collectors.toSet());
|
|
|
+ List<WmTask> tasks = taskService.list(Wrappers.<WmTask>lambdaQuery().in(WmTask::getId, supTaskIds));
|
|
|
+ List<Map<String, Object>> maps = taskService.listTaskInfo(tasks, pkgId.toString());
|
|
|
+
|
|
|
+ Map<Integer, List<WmTaskSupervision>> collect = list.stream().collect(Collectors.groupingBy(WmTaskSupervision::getTaskId));
|
|
|
+
|
|
|
+ maps.forEach(m -> {
|
|
|
+ Integer id = Integer.valueOf(m.get("id").toString());
|
|
|
+ WmTaskSupervision wmTaskSupervision = collect.get(id).get(0);
|
|
|
+
|
|
|
+ m.put("supervision", wmTaskSupervision);
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ return maps;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -560,4 +632,51 @@ public class WmSupervisionManager {
|
|
|
|
|
|
return true;
|
|
|
}
|
|
|
+
|
|
|
+// @Transactional(rollbackFor = Exception.class)
|
|
|
+// public Boolean checkTaskSupervision(WmSupervisionDto.OnTaskSupervisionCheck resource, HnqzUser user) {
|
|
|
+// Integer supervisionId = resource.getSupervisionId();
|
|
|
+//
|
|
|
+// WmTaskSupervision supervision = taskSupervisionService.getById(supervisionId);
|
|
|
+//
|
|
|
+// if (resource.getSupervision()) {
|
|
|
+//
|
|
|
+// UpmsState.TaskSupervisionState state;
|
|
|
+// switch (supervision.getState()) {
|
|
|
+// case INIT:
|
|
|
+// state = UpmsState.TaskSupervisionState.CKT1;
|
|
|
+// break;
|
|
|
+// case CKT1:
|
|
|
+// state = UpmsState.TaskSupervisionState.CKT2;
|
|
|
+// break;
|
|
|
+// case CKT2:
|
|
|
+// state = UpmsState.TaskSupervisionState.PASSED;
|
|
|
+// break;
|
|
|
+// default:
|
|
|
+// throw new BizException("监察状态不正确,不能操作");
|
|
|
+//
|
|
|
+// }
|
|
|
+//
|
|
|
+// String remarks = resource.getRemarks();
|
|
|
+// if (StrUtil.isNotBlank(remarks)) {
|
|
|
+// supervision.setRemarks(resource.getRemarks() + ";" + supervision.getRemarks());
|
|
|
+// }
|
|
|
+// supervision.setUpdateBy(user.getUsername());
|
|
|
+// supervision.setUpdateTime(LocalDateTime.now());
|
|
|
+// supervision.setState(state);
|
|
|
+// taskSupervisionService.updateById(supervision);
|
|
|
+//
|
|
|
+// } else {
|
|
|
+// supervision.setSupervisionResult(false);
|
|
|
+// supervision.setRemarks(supervision.getRemarks() + ";" + resource.getRemarks());
|
|
|
+// supervision.setUpdateBy(user.getUsername());
|
|
|
+// supervision.setUpdateTime(LocalDateTime.now());
|
|
|
+// supervision.setState(UpmsState.TaskSupervisionState.REJECTED);
|
|
|
+// taskSupervisionService.updateById(supervision);
|
|
|
+//
|
|
|
+// }
|
|
|
+//
|
|
|
+//
|
|
|
+// return true;
|
|
|
+// }
|
|
|
}
|