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

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

上级 8a12de3b
......@@ -134,7 +134,7 @@ public class DeviceCheckController {
@ApiOperation(value = "更新自动核查周期", notes = "更新自动核查周期")
@PutMapping("/task/{periodId}")
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) {
return ResponseEntity.status(400).body(new ResultObj<>("提供了错误的周期参数!应该是 1/2/3 , 您提供的是" + periodId));
}
......@@ -188,11 +188,14 @@ public class DeviceCheckController {
// 2-1 构建发起单位的 统计账单
DeviceCheckStat provinceCheckStat = initStatData(billVo.getCheckTitle(), billVo.getRemark(), billVo.getUserAId(), billVo.getUserBId(), startUnit.getName(), checkedUnits);
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 构建发起单位的 统计任务
TaskBto provStatTask = new Task(CHECK_STAT_0.id, CONFIRM_CHECK_STAT.name, 0, ".0.", CONFIRM_CHECK_STAT.id, statId, startUnitId)
.parse2Bto();
provStatTask.setCustomInfo("manual");
provStatTask.getInvolveUserIdList().add(authenticationUtils.getAuthentication().getCurrentUserInfo().getUserId());
provStatTask.getInvolveUserIdList().add(-1);
provStatTask.setCurrentPoint(1);
......@@ -228,6 +231,7 @@ public class DeviceCheckController {
// 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);
checkedTask.setCustomInfo("manual");
taskService.start(checkedTask);
}
// 4. 重新设置并保存统计账单
......@@ -553,6 +557,10 @@ public class DeviceCheckController {
.map(Units::getName)
.collect(toList());
List<AreaUnit> auList = unitsList.stream()
.map(units -> auService.findOne(AuExample.UnitId, units.getUnitId()))
.collect(toList());
Collection<CheckDeviceStatVo> statVos = deviceRepo.findAll()
.stream()
.filter(dev -> unitNameList.contains(dev.getOwnUnit()))
......@@ -560,6 +568,20 @@ public class DeviceCheckController {
.collect(toMap(CheckDeviceStatVo::getDeviceModel, Function.identity(), CheckDeviceStatVo::reduce))
.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(
CheckType.MANUAL_CHECK,
title,
......
......@@ -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())
.parse2Bto();
provStatTask.setInvolveUserIdList(Lists.newArrayList(-1));
provStatTask.setCustomInfo("auto");
provStatTask = taskService.start(provStatTask);
resultIds.get("taskId").add(provStatTask.getId());
......@@ -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())
.parse2Bto();
cityStatTask.setInvolveUserIdList(Lists.newArrayList(-1));
cityStatTask.setCustomInfo("auto");
cityStatTask = taskService.start(cityStatTask);
resultIds.get("taskId").add(cityStatTask.getId());
......@@ -193,6 +195,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
statVoList.addAll(cityStatVoList);
// 构建市自查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);
cityDetailTask.setCustomInfo("auto");
cityDetailTask = taskService.start(cityDetailTask);
resultIds.get("taskId").add(cityDetailTask.getId());
......@@ -218,6 +221,7 @@ public class ConfirmCheckServiceImpl implements ConfirmCheckService, CommandLine
//构建县自查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);
countyDetailTask.setCustomInfo("auto");
countyDetailTask = taskService.start(countyDetailTask);
resultIds.get("taskId").add(countyDetailTask.getId());
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论