selectValueByMoreParam查询优化完善
This commit is contained in:
parent
cbb7c5476d
commit
783737a2f9
@ -87,4 +87,9 @@ public class EngineParamDetailDTO {
|
|||||||
*/
|
*/
|
||||||
private Integer isDistributedRes;
|
private Integer isDistributedRes;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 参数来源
|
||||||
|
*/
|
||||||
|
private String parameterSource;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -504,7 +504,6 @@ public class EngineParamDetailServiceImpl implements EngineParamDetailService {
|
|||||||
@Override
|
@Override
|
||||||
public Map<String, List<EngineParamDetailDTO>> selectValueByMoreParam(EngineParamDetailRequest request) {
|
public Map<String, List<EngineParamDetailDTO>> selectValueByMoreParam(EngineParamDetailRequest request) {
|
||||||
List<EngineParamDetailDTO> engineParamDetailDTOS = new ArrayList<>();
|
List<EngineParamDetailDTO> engineParamDetailDTOS = new ArrayList<>();
|
||||||
List<EngineParamDetailPojo> paramDetails = new ArrayList<>();
|
|
||||||
|
|
||||||
// 获取当前机型
|
// 获取当前机型
|
||||||
DataEntryEngineModelPojo model = bd.getBusinessDatabase()
|
DataEntryEngineModelPojo model = bd.getBusinessDatabase()
|
||||||
@ -552,16 +551,21 @@ public class EngineParamDetailServiceImpl implements EngineParamDetailService {
|
|||||||
List<EngineParamDetailPojo> pojoList = query.doQuery(EngineParamDetailPojo.class);
|
List<EngineParamDetailPojo> pojoList = query.doQuery(EngineParamDetailPojo.class);
|
||||||
|
|
||||||
if (ObjectUtils.isNotEmpty(request.getFilledById()) && pojoList.isEmpty()) {
|
if (ObjectUtils.isNotEmpty(request.getFilledById()) && pojoList.isEmpty()) {
|
||||||
query.eq("filled_by", request.getFilledById());
|
pojoList.addAll(
|
||||||
query.eq("major_version", model.getVersionNumber());
|
bd.getBusinessDatabase()
|
||||||
paramDetails.addAll(query.doQuery(EngineParamDetailPojo.class));
|
.eq("engine_model_id", model.getId())
|
||||||
} else {
|
.in("subsystem_name", subsystemSet)
|
||||||
paramDetails.addAll(pojoList);
|
.in("parts_name", typeSet)
|
||||||
|
.eq("parameter_source", "数据平台手工录入")
|
||||||
|
.eq("filled_by", request.getFilledById())
|
||||||
|
.eq("major_version", model.getVersionNumber())
|
||||||
|
.doQuery(EngineParamDetailPojo.class)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Set<String> userList = new HashSet<>();
|
Set<String> userList = new HashSet<>();
|
||||||
Set<String> parameterList = new HashSet<>();
|
Set<String> parameterList = new HashSet<>();
|
||||||
paramDetails.forEach(item -> {
|
pojoList.forEach(item -> {
|
||||||
if (ObjectUtils.isNotEmpty(item.getFilledBy())) {
|
if (ObjectUtils.isNotEmpty(item.getFilledBy())) {
|
||||||
userList.add(item.getFilledBy());
|
userList.add(item.getFilledBy());
|
||||||
}
|
}
|
||||||
@ -581,7 +585,7 @@ public class EngineParamDetailServiceImpl implements EngineParamDetailService {
|
|||||||
.collect(Collectors.toMap(ParameterPojo::getId, parameterPojo -> parameterPojo));
|
.collect(Collectors.toMap(ParameterPojo::getId, parameterPojo -> parameterPojo));
|
||||||
|
|
||||||
// 构建返回
|
// 构建返回
|
||||||
for (EngineParamDetailPojo detail : paramDetails) {
|
for (EngineParamDetailPojo detail : pojoList) {
|
||||||
EngineParamDetailDTO engineParamDetailDTO = new EngineParamDetailDTO();
|
EngineParamDetailDTO engineParamDetailDTO = new EngineParamDetailDTO();
|
||||||
BeanUtils.copyProperties(detail, engineParamDetailDTO);
|
BeanUtils.copyProperties(detail, engineParamDetailDTO);
|
||||||
|
|
||||||
|
|||||||
@ -425,41 +425,37 @@ public class TcDataQueryServiceImpl implements TcDataQueryService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//解析所有子系统-零部件对
|
//解析所有子系统-零部件对
|
||||||
List<Map.Entry<String, String>> subsystemPartsPairs = analysisRequest.getSubsystemParts().stream()
|
Set<String> subsystemSet = new HashSet<>();
|
||||||
.map(subsystemType -> {
|
Set<String> partsNameSet = new HashSet<>();
|
||||||
|
analysisRequest.getSubsystemParts().forEach(subsystemType -> {
|
||||||
if (subsystemType.split("-").length != 2) {
|
if (subsystemType.split("-").length != 2) {
|
||||||
throw new CommonException("查询条件异常,需子系统-零部件名称,若零部件为空则传入“/ ”");
|
throw new CommonException("查询条件异常,需子系统-零部件名称,若零部件为空则传入“/”");
|
||||||
}
|
}
|
||||||
String subsystem = subsystemType.split("-")[0];
|
String subsystem = subsystemType.split("-")[0];
|
||||||
String partsName = subsystemType.split("-")[1];
|
String partsName = subsystemType.split("-")[1];
|
||||||
return new AbstractMap.SimpleEntry<>(subsystem, partsName);
|
subsystemSet.add(subsystem);
|
||||||
})
|
partsNameSet.add(partsName);
|
||||||
.collect(Collectors.toList());
|
});
|
||||||
|
|
||||||
//批量查询所有系统数据
|
//批量查询所有系统数据
|
||||||
List<EngineParamDetailPojo> tcPojos = new ArrayList<>();
|
List<EngineParamDetailPojo> systemDataList = new ArrayList<>(
|
||||||
List<EngineParamDetailPojo> systemDataList = new ArrayList<>();
|
|
||||||
for (Map.Entry<String, String> subsystemPartsPair : subsystemPartsPairs) {
|
|
||||||
List<EngineParamDetailPojo> pojoList = bd.getBusinessDatabase()
|
|
||||||
.eq("engine_model_id", analysisRequest.getEngineModelID())
|
|
||||||
.eq("major_version", analysisRequest.getParameterVersion())
|
|
||||||
.eq("subsystem_name", subsystemPartsPair.getKey())
|
|
||||||
.eq("parts_name", subsystemPartsPair.getValue())
|
|
||||||
.ne("parameter_source", "TC分类表")
|
|
||||||
.doQuery(EngineParamDetailPojo.class);
|
|
||||||
tcPojos.addAll(
|
|
||||||
bd.getBusinessDatabase()
|
bd.getBusinessDatabase()
|
||||||
.eq("engine_model_id", analysisRequest.getEngineModelID())
|
.eq("engine_model_id", analysisRequest.getEngineModelID())
|
||||||
.eq("major_version", analysisRequest.getParameterVersion())
|
.eq("major_version", analysisRequest.getParameterVersion())
|
||||||
.eq("subsystem_name", subsystemPartsPair.getKey())
|
.in("subsystem_name", subsystemSet)
|
||||||
.eq("parts_name", subsystemPartsPair.getValue())
|
.in("parts_name", partsNameSet)
|
||||||
|
.ne("parameter_source", "TC分类表")
|
||||||
|
.doQuery(EngineParamDetailPojo.class)
|
||||||
|
);
|
||||||
|
List<EngineParamDetailPojo> tcPojos = new ArrayList<>(
|
||||||
|
bd.getBusinessDatabase()
|
||||||
|
.eq("engine_model_id", analysisRequest.getEngineModelID())
|
||||||
|
.eq("major_version", analysisRequest.getParameterVersion())
|
||||||
|
.in("subsystem_name", subsystemSet)
|
||||||
|
.in("parts_name", partsNameSet)
|
||||||
.eq("parameter_source", "TC分类表")
|
.eq("parameter_source", "TC分类表")
|
||||||
.doQuery(EngineParamDetailPojo.class)
|
.doQuery(EngineParamDetailPojo.class)
|
||||||
);
|
);
|
||||||
if (ObjectUtils.isNotEmpty(pojoList)) {
|
|
||||||
systemDataList.addAll(pojoList);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//批量查询所有TC数据
|
//批量查询所有TC数据
|
||||||
Map<String, List<EngineParamDetailPojo>> parameterMapTc = tcPojos.stream()
|
Map<String, List<EngineParamDetailPojo>> parameterMapTc = tcPojos.stream()
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user