参数项收集清单-认证工程师导出数据问题处理。
This commit is contained in:
+56
-4
@@ -4462,6 +4462,52 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
List<String> paramsConfigIdList = paramsConfigEOList.stream().map(ParamsConfigEO::getId).collect(Collectors.toList());
|
||||
List<ParamsConfigDataEO> paramsConfigDataEOList = paramsConfigDataEOService.queryListByConfigIdList(paramsConfigIdList); // 查询所有配置数据
|
||||
|
||||
List<Map<String,Object>> exportDataList = new ArrayList<>();
|
||||
// 配置列多行数据处理
|
||||
for (Map<String, Object> data : dataList) {
|
||||
String id = (String) data.get("id");
|
||||
|
||||
Map<String, List<ParamsConfigDataEO>> paramsConfigDataMap = paramsConfigDataEOList.stream().filter(configDataEO -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(configDataEO.getParamsCollectManifestId(), id)) {
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).collect(Collectors.groupingBy(configDataEO -> configDataEO.getParamsConfigId()));
|
||||
|
||||
List<Map<String, Object>> paramsConfigDataCountList = new ArrayList<>();
|
||||
|
||||
for (Map.Entry<String, List<ParamsConfigDataEO>> map : paramsConfigDataMap.entrySet()) {
|
||||
Map<String, Object> paramsConfigDataCountMap = new HashMap<>();
|
||||
paramsConfigDataCountMap.put("key", map.getKey());
|
||||
paramsConfigDataCountMap.put("paramsConfigDataCount", map.getValue().size());
|
||||
paramsConfigDataCountMap.put("value", map.getValue());
|
||||
paramsConfigDataCountList.add(paramsConfigDataCountMap);
|
||||
}
|
||||
|
||||
// 排序 配置数据总数倒序排序
|
||||
Collections.sort(paramsConfigDataCountList, new Comparator<Map<String, Object>>() {
|
||||
@Override
|
||||
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
|
||||
return o2.get("paramsConfigDataCount").toString().compareTo(o1.get("paramsConfigDataCount").toString());
|
||||
}
|
||||
});
|
||||
|
||||
// 获取出最多行的配置列。
|
||||
if (!paramsConfigDataCountList.isEmpty()) {
|
||||
Map<String, Object> paramsConfigDataMaxCountMap = paramsConfigDataCountList.get(0);
|
||||
String key = (String) paramsConfigDataMaxCountMap.get("key");
|
||||
List<ParamsConfigDataEO> paramsConfigDataEOs = paramsConfigDataMap.get(key);
|
||||
for (ParamsConfigDataEO paramsConfigDataEO : paramsConfigDataEOs) {
|
||||
Map<String, Object> dataTemp = new HashMap<>();
|
||||
data.entrySet().forEach(o -> dataTemp.put(o.getKey(), o.getValue()));
|
||||
exportDataList.add(dataTemp);
|
||||
}
|
||||
} else {
|
||||
exportDataList.add(data);
|
||||
}
|
||||
}
|
||||
|
||||
List<String> nioNumberList = dataList.stream().map(m -> (String) m.get("nio_number")).collect(Collectors.toList());
|
||||
List<CertCategoryParamsInfoPublishEO> certCategoryParamsInfoPublishEOList = certCategoryParamsInfoPublishEOService.queryListByVersionAndNio(paramsTemplateId, paramsTemplatePublishVersion, nioNumberList); //查询所有认证类别参数项
|
||||
|
||||
@@ -4477,7 +4523,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
Map<String, String> stateMap = CollectManifestStateEnum.toMap(cut);
|
||||
|
||||
// 插入配置列和认证类别列数据
|
||||
for (Map<String, Object> record1 : dataList) {
|
||||
for (Map<String, Object> record1 : exportDataList) {
|
||||
|
||||
String paramsCollectManifestId = (String) record1.get("id");
|
||||
String nioNumber = (String) record1.get("nio_number");
|
||||
@@ -4547,7 +4593,13 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
paramsConfigEOList.forEach(paramsConfigEO -> { // 参数配置
|
||||
|
||||
String paramsConfigId = paramsConfigEO.getId();
|
||||
List<ParamsConfigDataEO> paramsConfigDataEOS = paramsConfigDataEOList.stream().filter(e -> paramsConfigId.equals(e.getParamsConfigId()) && paramsCollectManifestId.equals(e.getParamsCollectManifestId())).collect(Collectors.toList()); // 参数配置数据
|
||||
List<ParamsConfigDataEO> paramsConfigDataEOS = paramsConfigDataEOList.stream().filter(e -> {
|
||||
boolean flag = false;
|
||||
if(StringUtils.equals(paramsConfigId,e.getParamsConfigId()) && StringUtils.equals(paramsCollectManifestId,e.getParamsCollectManifestId())){
|
||||
flag = true;
|
||||
}
|
||||
return flag;
|
||||
}).collect(Collectors.toList()); // 参数配置数据
|
||||
StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据
|
||||
if (CollectionUtil.isNotEmpty(paramsConfigDataEOS)) {
|
||||
ParamsConfigDataEO paramsConfigDataEO = paramsConfigDataEOS.get(0);
|
||||
@@ -4565,7 +4617,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
fileList.addAll(ossFileList);
|
||||
}
|
||||
}
|
||||
|
||||
paramsConfigDataEOList.remove(paramsConfigDataEO);
|
||||
}
|
||||
|
||||
String configData = configDataBuilder.toString();
|
||||
@@ -4579,7 +4631,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
record1.put("fileList", fileList);
|
||||
}
|
||||
}
|
||||
return dataList;
|
||||
return exportDataList;
|
||||
}
|
||||
|
||||
// 导出待填写数据,可以勾选导出
|
||||
|
||||
Reference in New Issue
Block a user