UPDATE: 1、子计划管理,筛选条件改成搜索、设备厂家、是否分配;
2、重复导入子计划时,增量被检设备并删除未检设备。
This commit is contained in:
@@ -250,6 +250,7 @@ public class AdPlanController extends BaseController {
|
||||
List<String> planIdList = planList.stream().map(AdPlan::getId).collect(Collectors.toList());
|
||||
param.getPlanIdList().addAll(planIdList);
|
||||
}
|
||||
param.setPlanId(plan.getId());
|
||||
Page<PqDevVO> pqDevVOPage = pqDevService.listPqDevs(param);
|
||||
|
||||
List<AdPlan> planList = adPlanService.listByIds(param.getPlanIdList());
|
||||
|
||||
@@ -1777,7 +1777,12 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
// 更新检测计划信息
|
||||
plan.setImportFlag(1);
|
||||
plan.setFatherPlanId(CommonEnum.FATHER_ID.getValue());
|
||||
saveOrUpdate(plan);
|
||||
AdPlan oldPlan = this.getById(plan.getId());
|
||||
// 不存在,则入库
|
||||
if (oldPlan == null) {
|
||||
this.save(plan);
|
||||
}
|
||||
|
||||
|
||||
List<PqDev> devList = subPlanMetaDataVO.getDevList();
|
||||
List<PqStandardDev> standardDevList = subPlanMetaDataVO.getStandardDevList();
|
||||
@@ -1789,8 +1794,14 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
// 批量更新被检设备信息
|
||||
// 设置导入标志为 1
|
||||
devList.forEach(dev -> dev.setImportFlag(1));
|
||||
pqDevService.saveOrUpdateBatch(devList);
|
||||
devList.forEach(dev -> {
|
||||
// 排除已存在的,再入库
|
||||
List<String> devIds = devList.stream().map(PqDev::getId).collect(Collectors.toList());
|
||||
List<PqDevSub> pqDevSubs = pqDevSubService.lambdaQuery().in(PqDevSub::getDevId, devIds).list();
|
||||
List<String> hadDevIds = pqDevSubs.stream().map(PqDevSub::getDevId).collect(Collectors.toList());
|
||||
// 新增被检设备
|
||||
List<PqDev> saveDevList = devList.stream().filter(dev -> !hadDevIds.contains(dev.getId())).collect(Collectors.toList());
|
||||
pqDevService.saveBatch(saveDevList);
|
||||
saveDevList.forEach(dev -> {
|
||||
pqMonitorService.saveOrUpdateBatch(dev.getMonitorList());
|
||||
// 新增时默认设置
|
||||
PqDevSub pqDevSub = new PqDevSub();
|
||||
@@ -1800,17 +1811,21 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
pqDevSub.setCheckState(CheckStateEnum.UNCHECKED.getValue());
|
||||
pqDevSub.setReportState(DevReportStateEnum.UNCHECKED.getValue());
|
||||
pqDevSub.setCheckResult(CheckResultEnum.UNCHECKED.getValue());
|
||||
Integer count = pqDevSubService.lambdaQuery().eq(PqDevSub::getDevId, dev.getId()).count();
|
||||
if (count.intValue() == 0) {
|
||||
pqDevSubService.save(pqDevSub);
|
||||
} else {
|
||||
pqDevSubService.update(pqDevSub, new LambdaUpdateWrapper<PqDevSub>().eq(PqDevSub::getDevId, dev.getId()));
|
||||
}
|
||||
pqDevSubService.save(pqDevSub);
|
||||
});
|
||||
List<String> devIds = devList.stream().map(PqDev::getId).collect(Collectors.toList());
|
||||
// 守时检测
|
||||
pqDevService.updatePqDevTimeCheckResult(devIds, TimeCheckResultEnum.UNKNOWN);
|
||||
|
||||
// 移除未检测的被检设备
|
||||
List<String> uncheckedDevIds = pqDevSubs.stream()
|
||||
.filter(pqDevSub -> pqDevSub.getCheckState().equals(CheckStateEnum.UNCHECKED.getValue()))
|
||||
.map(PqDevSub::getDevId)
|
||||
.collect(Collectors.toList());
|
||||
List<String> removeDevIds = uncheckedDevIds.stream()
|
||||
.filter(devId -> !devIds.contains(devId))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
if (CollUtil.isNotEmpty(removeDevIds)) {
|
||||
pqDevService.removeByIds(removeDevIds);
|
||||
pqDevSubService.remove(new LambdaQueryWrapper<PqDevSub>().in(PqDevSub::getDevId, removeDevIds));
|
||||
}
|
||||
// 批量更新标准设备信息
|
||||
pqStandardDevService.saveOrUpdateBatch(standardDevList);
|
||||
List<String> standardDevIds = standardDevList.stream().map(PqStandardDev::getId).collect(Collectors.toList());
|
||||
|
||||
Reference in New Issue
Block a user