ADD: 合并子计划检测结果数据到主计划对应表中
This commit is contained in:
@@ -1720,6 +1720,8 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
}
|
||||
|
||||
// 批量更新被检设备信息
|
||||
// 设置导入标志为 1
|
||||
devList.forEach(dev -> dev.setImportFlag(1));
|
||||
pqDevService.saveOrUpdateBatch(devList);
|
||||
devList.forEach(dev -> {
|
||||
pqMonitorService.saveOrUpdateBatch(dev.getMonitorList());
|
||||
@@ -1968,6 +1970,8 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
|
||||
|
||||
// 批量更新被检设备信息
|
||||
// 不更新导入标志
|
||||
devList.forEach(dev -> dev.setImportFlag(null));
|
||||
pqDevService.updateBatchById(devList);
|
||||
|
||||
List<PqDevSub> devSubList = planCheckDataVO.getDevSubList();
|
||||
@@ -2036,6 +2040,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional
|
||||
@Override
|
||||
public boolean mergePlanCheckData(String planId) {
|
||||
|
||||
@@ -2049,14 +2054,54 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
if (CollUtil.isEmpty(subPlanList)) {
|
||||
throw new BusinessException(CommonResponseEnum.FAIL, "该计划未找到子计划");
|
||||
}
|
||||
// 合并前清除相关表数据
|
||||
String mainHarmonicTableName = "ad_harmonic_" + planCode;
|
||||
String mainNonHarmonicTableName = "ad_non_harmonic_" + planCode;
|
||||
String mainHarmonicResultTableName = "ad_harmonic_result_" + planCode;
|
||||
String mainNonHarmonicResultTableName = "ad_non_harmonic_result_" + planCode;
|
||||
jdbcTemplate.update("DELETE FROM " + mainHarmonicTableName);
|
||||
jdbcTemplate.update("DELETE FROM " + mainNonHarmonicTableName);
|
||||
jdbcTemplate.update("DELETE FROM " + mainHarmonicResultTableName);
|
||||
jdbcTemplate.update("DELETE FROM " + mainNonHarmonicResultTableName);
|
||||
|
||||
// 获取所有子计划检测数据
|
||||
List<Integer> subPlanCodeList = subPlanList.stream().map(AdPlan::getCode).collect(Collectors.toList());
|
||||
List<String> harmonicTableNames = new ArrayList<>();
|
||||
List<String> nonHarmonicTableNames = new ArrayList<>();
|
||||
List<String> harmonicResultTableNames = new ArrayList<>();
|
||||
List<String> nonHarmonicResultTableNames = new ArrayList<>();
|
||||
for (Integer code : subPlanCodeList) {
|
||||
List<String> dataTableNames = CollUtil.newArrayList("ad_harmonic_" + code, "ad_non_harmonic_" + code, "ad_harmonic_result_" + code, "ad_non_harmonic_result_" + code);
|
||||
|
||||
harmonicTableNames.add("ad_harmonic_" + code);
|
||||
nonHarmonicTableNames.add("ad_non_harmonic_" + code);
|
||||
harmonicResultTableNames.add("ad_harmonic_result_" + code);
|
||||
nonHarmonicResultTableNames.add("ad_non_harmonic_result_" + code);
|
||||
}
|
||||
|
||||
return false;
|
||||
// 将子计划的谐波数据插入到主计划的谐波表中
|
||||
for (String harmonicTableName : harmonicTableNames) {
|
||||
String sql = "INSERT INTO " + mainHarmonicTableName + " SELECT * FROM " + harmonicTableName;
|
||||
jdbcTemplate.update(sql);
|
||||
}
|
||||
|
||||
// 将子计划的非谐波数据插入到主计划的非谐波表中
|
||||
for (String nonHarmonicTableName : nonHarmonicTableNames) {
|
||||
String sql = "INSERT INTO " + mainNonHarmonicTableName + " SELECT * FROM " + nonHarmonicTableName;
|
||||
jdbcTemplate.update(sql);
|
||||
}
|
||||
|
||||
// 将子计划的谐波结果数据插入到主计划的谐波结果表中
|
||||
for (String harmonicResultTableName : harmonicResultTableNames) {
|
||||
String sql = "INSERT INTO " + mainHarmonicResultTableName + " SELECT * FROM " + harmonicResultTableName;
|
||||
jdbcTemplate.update(sql);
|
||||
}
|
||||
|
||||
// 将子计划的非谐波结果数据插入到主计划的非谐波结果表中
|
||||
for (String nonHarmonicResultTableName : nonHarmonicResultTableNames) {
|
||||
String sql = "INSERT INTO " + mainNonHarmonicResultTableName + " SELECT * FROM " + nonHarmonicResultTableName;
|
||||
jdbcTemplate.update(sql);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user