添加接口=将上报库数据同步至收集清单(仅限变更状态)
This commit is contained in:
+16
@@ -382,4 +382,20 @@ public class ParamsManifestEOController extends JeroController<ParamsManifestEO,
|
|||||||
return super.importExcel(request, response, ParamsManifestEO.class);
|
return super.importExcel(request, response, ParamsManifestEO.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将上报库数据同步至收集清单(仅限变更状态)
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@ApiOperation(value="参数清单-将上报库数据同步至收集清单(仅限变更状态)", notes="参数清单-将上报库数据同步至收集清单(仅限变更状态)")
|
||||||
|
@GetMapping(value = "/syncChangeDataFromReport")
|
||||||
|
public Result<?> syncChangeDataFromReport(@RequestParam(name="paramsManifestId",required=true) String paramsManifestId,
|
||||||
|
@RequestParam(name="reportManifestId",required=true) String reportManifestId) {
|
||||||
|
paramsManifestEOService.syncChangeDataFromReport(paramsManifestId, reportManifestId);
|
||||||
|
return Result.OK("操作成功!");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+3
@@ -119,4 +119,7 @@ public interface IParamsManifestEOService extends IService<ParamsManifestEO> {
|
|||||||
* @param json
|
* @param json
|
||||||
*/
|
*/
|
||||||
void replacementUser(JSONObject json);
|
void replacementUser(JSONObject json);
|
||||||
|
|
||||||
|
|
||||||
|
void syncChangeDataFromReport(String paramsManifestId, String reportManifestId);
|
||||||
}
|
}
|
||||||
|
|||||||
+58
@@ -733,6 +733,63 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
return updateById(updateManifestEO);
|
return updateById(updateManifestEO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 将上报库数据同步至收集清单(仅限变更状态)
|
||||||
|
*/
|
||||||
|
public void syncChangeDataFromReport(String paramsManifestId, String reportManifestId) {
|
||||||
|
ParamsManifestEO paramsManifestEO = getById(paramsManifestId);
|
||||||
|
|
||||||
|
List<ParamsCollectManifestEO> paramsCollectManifestEOList = paramsCollectManifestEOMapper.queryByParamManifestId(paramsManifestId);
|
||||||
|
|
||||||
|
// 查询配置信息
|
||||||
|
List<ParamsConfigEO> pcList = paramsConfigEOService.queryList(paramsManifestId);
|
||||||
|
List<String> configIdList = pcList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList());
|
||||||
|
Map<String, String> ocNameMap = pcList.stream().collect(Collectors.toMap(ParamsConfigEO::getId, ParamsConfigEO::getConfigName));
|
||||||
|
List<ParamsConfigDataEO> paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(configIdList);
|
||||||
|
List<ParamsConfigDataEO> updateList = new ArrayList<>();
|
||||||
|
|
||||||
|
// 查询上报库的项目所有参数项的配置数据
|
||||||
|
ParamsReportEO paramsReportEO = paramsReportEOService.getById(reportManifestId);
|
||||||
|
List<Map<String, Object>> paramsReportConfigDataList = paramsReportDetailEOService.listInfoForChange(paramsReportEO.getId());
|
||||||
|
|
||||||
|
for (ParamsCollectManifestEO pcm : paramsCollectManifestEOList) {
|
||||||
|
if (CollectManifestStateEnum.CHANGE.getValue().equals(pcm.getState()) && !"11".equals(pcm.getControlType())) {
|
||||||
|
List<ParamsConfigDataEO> pcdList = paramsConfigDataEOList.stream().filter(e -> e.getParamsCollectManifestId().equals(pcm.getId())).collect(Collectors.toList());
|
||||||
|
if (CollectionUtils.isNotEmpty(pcdList)) {
|
||||||
|
for (ParamsConfigDataEO pcd : pcdList) {
|
||||||
|
boolean flag = false;
|
||||||
|
List<Map<String, Object>> prcdList = paramsReportConfigDataList.stream().filter(o ->
|
||||||
|
o.get("nio_number").equals(pcm.getNioNumber())
|
||||||
|
&& o.get("config_name").equals(ocNameMap.get(pcd.getParamsConfigId()))
|
||||||
|
).collect(Collectors.toList());
|
||||||
|
if (CollectionUtils.isNotEmpty(prcdList) && prcdList.size() == 1) {//多值情况忽略
|
||||||
|
Map<String, Object> prcdMap = prcdList.get(0);
|
||||||
|
if (ObjectUtil.isNotEmpty(prcdMap.get("text_data")) && !StringUtils.equals(pcd.getTextData(), String.valueOf(prcdMap.get("text_data")))) {
|
||||||
|
flag = true;
|
||||||
|
pcd.setTextData(String.valueOf(prcdMap.get("text_data")));
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotEmpty(prcdMap.get("pull_data")) && !StringUtils.equals(pcd.getPullData(), String.valueOf(prcdMap.get("pull_data")))) {
|
||||||
|
flag = true;
|
||||||
|
pcd.setPullData(String.valueOf(prcdMap.get("pull_data")));
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotEmpty(prcdMap.get("file_connect_id")) && !StringUtils.equals(pcd.getFileConnectId(), String.valueOf(prcdMap.get("file_connect_id")))) {
|
||||||
|
flag = true;
|
||||||
|
pcd.setFileConnectId(String.valueOf(prcdMap.get("file_connect_id")));
|
||||||
|
}
|
||||||
|
if(flag){
|
||||||
|
updateList.add(pcd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(CollectionUtils.isNotEmpty(updateList)){
|
||||||
|
paramsConfigDataEOService.updateBatchById(updateList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 从历史版本进行扩展变更
|
* 从历史版本进行扩展变更
|
||||||
*/
|
*/
|
||||||
@@ -1465,4 +1522,5 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
@@ -187,6 +187,7 @@
|
|||||||
select
|
select
|
||||||
prcd.*,
|
prcd.*,
|
||||||
prc.old_params_config_id,
|
prc.old_params_config_id,
|
||||||
|
prc.config_name,
|
||||||
prd.nio_number
|
prd.nio_number
|
||||||
from params_report_config_data prcd
|
from params_report_config_data prcd
|
||||||
inner join params_report_detail prd on prd.id = prcd.params_collect_manifest_id
|
inner join params_report_detail prd on prd.id = prcd.params_collect_manifest_id
|
||||||
|
|||||||
Reference in New Issue
Block a user