提交 af421347 authored 作者: Matrix's avatar Matrix

[核查模块] 增加自动任务与手动任务的区分,增加了空地区数据的补充

上级 8a12de3b
...@@ -134,7 +134,7 @@ public class DeviceCheckController { ...@@ -134,7 +134,7 @@ public class DeviceCheckController {
@ApiOperation(value = "更新自动核查周期", notes = "更新自动核查周期") @ApiOperation(value = "更新自动核查周期", notes = "更新自动核查周期")
@PutMapping("/task/{periodId}") @PutMapping("/task/{periodId}")
public ResponseEntity updateTaskPeriod( public ResponseEntity updateTaskPeriod(
@PathVariable @ApiParam(value = "核查周期,1-月度 2-季度 3-年度",example = "1") Integer periodId) { @PathVariable @ApiParam(value = "核查周期,1-月度 2-季度 3-年度", example = "1") Integer periodId) {
if (periodId < 1 || periodId > 3) { if (periodId < 1 || periodId > 3) {
return ResponseEntity.status(400).body(new ResultObj<>("提供了错误的周期参数!应该是 1/2/3 , 您提供的是" + periodId)); return ResponseEntity.status(400).body(new ResultObj<>("提供了错误的周期参数!应该是 1/2/3 , 您提供的是" + periodId));
} }
...@@ -188,11 +188,14 @@ public class DeviceCheckController { ...@@ -188,11 +188,14 @@ public class DeviceCheckController {
// 2-1 构建发起单位的 统计账单 // 2-1 构建发起单位的 统计账单
DeviceCheckStat provinceCheckStat = initStatData(billVo.getCheckTitle(), billVo.getRemark(), billVo.getUserAId(), billVo.getUserBId(), startUnit.getName(), checkedUnits); DeviceCheckStat provinceCheckStat = initStatData(billVo.getCheckTitle(), billVo.getRemark(), billVo.getUserAId(), billVo.getUserBId(), startUnit.getName(), checkedUnits);
Integer statId = statRepo.save(provinceCheckStat).getId(); Integer statId = statRepo.save(provinceCheckStat).getId();
List<CheckDeviceStatVo> deviceStatVos = Arrays.stream(Objects.requireNonNull(JacksonUtil.readValue(provinceCheckStat.getStatInfo(), CheckDeviceStatVo[].class))).collect(toList()); List<CheckDeviceStatVo> deviceStatVos = Arrays.stream(
Objects.requireNonNull(JacksonUtil.readValue(provinceCheckStat.getStatInfo(), CheckDeviceStatVo[].class)))
.collect(toList());
// 2-2 构建发起单位的 统计任务 // 2-2 构建发起单位的 统计任务
TaskBto provStatTask = new Task(CHECK_STAT_0.id, CONFIRM_CHECK_STAT.name, 0, ".0.", CONFIRM_CHECK_STAT.id, statId, startUnitId) TaskBto provStatTask = new Task(CHECK_STAT_0.id, CONFIRM_CHECK_STAT.name, 0, ".0.", CONFIRM_CHECK_STAT.id, statId, startUnitId)
.parse2Bto(); .parse2Bto();
provStatTask.setCustomInfo("manual");
provStatTask.getInvolveUserIdList().add(authenticationUtils.getAuthentication().getCurrentUserInfo().getUserId()); provStatTask.getInvolveUserIdList().add(authenticationUtils.getAuthentication().getCurrentUserInfo().getUserId());
provStatTask.getInvolveUserIdList().add(-1); provStatTask.getInvolveUserIdList().add(-1);
provStatTask.setCurrentPoint(1); provStatTask.setCurrentPoint(1);
...@@ -228,6 +231,7 @@ public class DeviceCheckController { ...@@ -228,6 +231,7 @@ public class DeviceCheckController {
// 3-2 构建被查单位的 自查任务 (根据被查单位的级别来区分是县级状态是市级状态) // 3-2 构建被查单位的 自查任务 (根据被查单位的级别来区分是县级状态是市级状态)
TaskBto checkedTask = new TaskBto(CHECK_DETAIL_0.id, "自核查任务", provStatTask.getId(), addNode(provStatTask.getNodeIdDetail(), provStatTask.getId()), CONFIRM_CHECK_DETAIL.id, detail.getId(), unit.getUnitId(), 0); TaskBto checkedTask = new TaskBto(CHECK_DETAIL_0.id, "自核查任务", provStatTask.getId(), addNode(provStatTask.getNodeIdDetail(), provStatTask.getId()), CONFIRM_CHECK_DETAIL.id, detail.getId(), unit.getUnitId(), 0);
checkedTask.setCustomInfo("manual");
taskService.start(checkedTask); taskService.start(checkedTask);
} }
// 4. 重新设置并保存统计账单 // 4. 重新设置并保存统计账单
...@@ -553,6 +557,10 @@ public class DeviceCheckController { ...@@ -553,6 +557,10 @@ public class DeviceCheckController {
.map(Units::getName) .map(Units::getName)
.collect(toList()); .collect(toList());
List<AreaUnit> auList = unitsList.stream()
.map(units -> auService.findOne(AuExample.UnitId, units.getUnitId()))
.collect(toList());
Collection<CheckDeviceStatVo> statVos = deviceRepo.findAll() Collection<CheckDeviceStatVo> statVos = deviceRepo.findAll()
.stream() .stream()
.filter(dev -> unitNameList.contains(dev.getOwnUnit())) .filter(dev -> unitNameList.contains(dev.getOwnUnit()))
...@@ -560,6 +568,20 @@ public class DeviceCheckController { ...@@ -560,6 +568,20 @@ public class DeviceCheckController {
.collect(toMap(CheckDeviceStatVo::getDeviceModel, Function.identity(), CheckDeviceStatVo::reduce)) .collect(toMap(CheckDeviceStatVo::getDeviceModel, Function.identity(), CheckDeviceStatVo::reduce))
.values(); .values();
//缺省地区数据补充
for (CheckDeviceStatVo statVo : statVos) {
if (statVo.getAreaStatList().size() < unitNameList.size()) {
List<String> existsAreaNames = statVo.getAreaStatList().stream()
.map(CheckAreaStatVo::getAreaName)
.collect(toList());
List<CheckAreaStatVo> supplementVos = auList.stream()
.filter(au -> !existsAreaNames.contains(au.getName()))
.map(au -> new CheckAreaStatVo(au.getName(), 0, 1, 0, 0, 0, 0))
.collect(toList());
statVo.getAreaStatList().addAll(supplementVos);
}
}
return new DeviceCheckStat( return new DeviceCheckStat(
CheckType.MANUAL_CHECK, CheckType.MANUAL_CHECK,
title, title,
......
...@@ -144,6 +144,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine ...@@ -144,6 +144,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
TaskBto provStatTask = new Task(CHECK_STAT_0.id, "省自动核查", 0, ".0.", CONFIRM_CHECK_STAT.id, provStat.getId(), provUnit.getUnitId()) TaskBto provStatTask = new Task(CHECK_STAT_0.id, "省自动核查", 0, ".0.", CONFIRM_CHECK_STAT.id, provStat.getId(), provUnit.getUnitId())
.parse2Bto(); .parse2Bto();
provStatTask.setInvolveUserIdList(Lists.newArrayList(-1)); provStatTask.setInvolveUserIdList(Lists.newArrayList(-1));
provStatTask.setCustomInfo("auto");
provStatTask = taskService.start(provStatTask); provStatTask = taskService.start(provStatTask);
resultIds.get("taskId").add(provStatTask.getId()); resultIds.get("taskId").add(provStatTask.getId());
...@@ -172,6 +173,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine ...@@ -172,6 +173,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
TaskBto cityStatTask = new Task(CHECK_STAT_0.id, cityUnit.getName() + "自动核查统计", provStatTask.getId(), addNode(provStatTask.getNodeIdDetail(), provStatDo.getId()), CONFIRM_CHECK_STAT.id, cityStat.getId(), cityUnit.getUnitId()) TaskBto cityStatTask = new Task(CHECK_STAT_0.id, cityUnit.getName() + "自动核查统计", provStatTask.getId(), addNode(provStatTask.getNodeIdDetail(), provStatDo.getId()), CONFIRM_CHECK_STAT.id, cityStat.getId(), cityUnit.getUnitId())
.parse2Bto(); .parse2Bto();
cityStatTask.setInvolveUserIdList(Lists.newArrayList(-1)); cityStatTask.setInvolveUserIdList(Lists.newArrayList(-1));
cityStatTask.setCustomInfo("auto");
cityStatTask = taskService.start(cityStatTask); cityStatTask = taskService.start(cityStatTask);
resultIds.get("taskId").add(cityStatTask.getId()); resultIds.get("taskId").add(cityStatTask.getId());
...@@ -193,6 +195,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine ...@@ -193,6 +195,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
statVoList.addAll(cityStatVoList); statVoList.addAll(cityStatVoList);
// 构建市自查TASK // 构建市自查TASK
TaskBto cityDetailTask = new TaskBto(CHECK_DETAIL_0.id, cityUnit.getName() + "自动核查自查", cityStatTask.getId(), addNode(cityStatTask.getNodeIdDetail(), cityStatTask.getId()), CONFIRM_CHECK_DETAIL.id, cityDetail.getId(), cityUnit.getUnitId(), 0); TaskBto cityDetailTask = new TaskBto(CHECK_DETAIL_0.id, cityUnit.getName() + "自动核查自查", cityStatTask.getId(), addNode(cityStatTask.getNodeIdDetail(), cityStatTask.getId()), CONFIRM_CHECK_DETAIL.id, cityDetail.getId(), cityUnit.getUnitId(), 0);
cityDetailTask.setCustomInfo("auto");
cityDetailTask = taskService.start(cityDetailTask); cityDetailTask = taskService.start(cityDetailTask);
resultIds.get("taskId").add(cityDetailTask.getId()); resultIds.get("taskId").add(cityDetailTask.getId());
...@@ -218,6 +221,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine ...@@ -218,6 +221,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
//构建县自查TASK //构建县自查TASK
TaskBto countyDetailTask = new TaskBto(CHECK_DETAIL_0.id, countyUnit.getName() + "自动核查自查", cityStatTask.getId(), addNode(cityStatTask.getNodeIdDetail(), cityStatTask.getId()), CONFIRM_CHECK_DETAIL.id, countyDetail.getId(), countyUnit.getUnitId(), 0); TaskBto countyDetailTask = new TaskBto(CHECK_DETAIL_0.id, countyUnit.getName() + "自动核查自查", cityStatTask.getId(), addNode(cityStatTask.getNodeIdDetail(), cityStatTask.getId()), CONFIRM_CHECK_DETAIL.id, countyDetail.getId(), countyUnit.getUnitId(), 0);
countyDetailTask.setCustomInfo("auto");
countyDetailTask = taskService.start(countyDetailTask); countyDetailTask = taskService.start(countyDetailTask);
resultIds.get("taskId").add(countyDetailTask.getId()); resultIds.get("taskId").add(countyDetailTask.getId());
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论