上线版本-3.13
This commit is contained in:
parent
ffb85b85d6
commit
1dc576d435
@ -140,28 +140,49 @@ public class EngineModelListener implements ReadListener<DataEntryEngineModelExc
|
||||
private void saveDataParamDetail(ArrayList<DataEntryEngineModelPojo> modelPojos, List<ParameterPojo> parameters) {
|
||||
List<EngineParamDetailPojo> engineParamDetailPojos = new ArrayList<>();
|
||||
for (DataEntryEngineModelPojo modelPojo : modelPojos) {
|
||||
for (ParameterPojo parameter : parameters) {
|
||||
|
||||
EngineParamDetailPojo engineParamDetailPojo = new EngineParamDetailPojo();
|
||||
engineParamDetailPojo.setEngineModelId(modelPojo.getId());
|
||||
engineParamDetailPojo.setParameterId(parameter.getId());
|
||||
engineParamDetailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
engineParamDetailPojo.setParameterType(parameter.getParameterType());
|
||||
engineParamDetailPojo.setPartsName(parameter.getPartsName());
|
||||
engineParamDetailPojo.setParameterName(parameter.getParameterName());
|
||||
engineParamDetailPojo.setParameterSource(parameter.getParameterSource());
|
||||
engineParamDetailPojo.setDepartment(parameter.getDepartment());
|
||||
engineParamDetailPojo.setMajorVersion(VERSION_NUMBER);
|
||||
engineParamDetailPojo.setVersionStatus(ParamValueVersionEnum.DRAFT.getCode());
|
||||
engineParamDetailPojo.setCreatedBy(usersPojo.getId());
|
||||
engineParamDetailPojo.setLastUpdatedBy("");
|
||||
engineParamDetailPojo.setLastUpdateDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setIsDistributedRes(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojo.setIsDistributedFilled(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojos.add(engineParamDetailPojo);
|
||||
if (Objects.equals(modelPojo.getYcOrOth(), "玉柴")) {
|
||||
for (ParameterPojo parameter : parameters) {
|
||||
EngineParamDetailPojo engineParamDetailPojo = new EngineParamDetailPojo();
|
||||
engineParamDetailPojo.setEngineModelId(modelPojo.getId());
|
||||
engineParamDetailPojo.setParameterId(parameter.getId());
|
||||
engineParamDetailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
engineParamDetailPojo.setParameterType(parameter.getParameterType());
|
||||
engineParamDetailPojo.setPartsName(parameter.getPartsName());
|
||||
engineParamDetailPojo.setParameterName(parameter.getParameterName());
|
||||
engineParamDetailPojo.setParameterSource(parameter.getParameterSource());
|
||||
engineParamDetailPojo.setDepartment(parameter.getDepartment());
|
||||
engineParamDetailPojo.setMajorVersion(VERSION_NUMBER);
|
||||
engineParamDetailPojo.setVersionStatus(ParamValueVersionEnum.DRAFT.getCode());
|
||||
engineParamDetailPojo.setCreatedBy(usersPojo.getId());
|
||||
engineParamDetailPojo.setLastUpdatedBy("");
|
||||
engineParamDetailPojo.setLastUpdateDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setIsDistributedRes(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojo.setIsDistributedFilled(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojos.add(engineParamDetailPojo);
|
||||
}
|
||||
} else {
|
||||
for (ParameterPojo parameter : parameters) {
|
||||
EngineParamDetailPojo engineParamDetailPojo = new EngineParamDetailPojo();
|
||||
engineParamDetailPojo.setEngineModelId(modelPojo.getId());
|
||||
engineParamDetailPojo.setParameterId(parameter.getId());
|
||||
engineParamDetailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
engineParamDetailPojo.setParameterType(parameter.getParameterType());
|
||||
engineParamDetailPojo.setPartsName(parameter.getPartsName());
|
||||
engineParamDetailPojo.setParameterName(parameter.getParameterName());
|
||||
engineParamDetailPojo.setParameterSource("数据平台手工录入");
|
||||
engineParamDetailPojo.setDepartment(parameter.getDepartment());
|
||||
engineParamDetailPojo.setMajorVersion(VERSION_NUMBER);
|
||||
engineParamDetailPojo.setVersionStatus(ParamValueVersionEnum.DRAFT.getCode());
|
||||
engineParamDetailPojo.setCreatedBy(usersPojo.getId());
|
||||
engineParamDetailPojo.setLastUpdatedBy("");
|
||||
engineParamDetailPojo.setLastUpdateDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setIsDistributedRes(0);
|
||||
engineParamDetailPojo.setIsDistributedFilled(0);
|
||||
engineParamDetailPojos.add(engineParamDetailPojo);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
businessDatabase.getBusinessDatabase().doBatchInsert(engineParamDetailPojos);
|
||||
}
|
||||
|
||||
@ -284,27 +284,49 @@ public class DataEntryEngineModelServiceImpl implements DataEntryEngineModelServ
|
||||
参数值暂时放空
|
||||
*/
|
||||
List<EngineParamDetailPojo> engineParamDetailPojos = new ArrayList<>();
|
||||
if (Objects.equals(modelPojo.getYcOrOth(), "玉柴")) {
|
||||
for (ParameterPojo parameter : parameters) {
|
||||
EngineParamDetailPojo engineParamDetailPojo = new EngineParamDetailPojo();
|
||||
engineParamDetailPojo.setEngineModelId(modelPojo.getId());
|
||||
engineParamDetailPojo.setParameterId(parameter.getId());
|
||||
engineParamDetailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
engineParamDetailPojo.setParameterType(parameter.getParameterType());
|
||||
engineParamDetailPojo.setPartsName(parameter.getPartsName());
|
||||
engineParamDetailPojo.setParameterName(parameter.getParameterName());
|
||||
engineParamDetailPojo.setDepartment(parameter.getDepartment());
|
||||
engineParamDetailPojo.setParameterSource(parameter.getParameterSource());
|
||||
engineParamDetailPojo.setMajorVersion(newVersionNum);
|
||||
engineParamDetailPojo.setVersionStatus(ParamValueVersionEnum.DRAFT.getCode());
|
||||
engineParamDetailPojo.setCreatedBy(ObjectUtils.isNotEmpty(xdapUsersPojo) ? xdapUsersPojo.getId() : null);
|
||||
engineParamDetailPojo.setLastUpdatedBy("");
|
||||
engineParamDetailPojo.setLastUpdateDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setIsDistributedRes(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojo.setIsDistributedFilled(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojos.add(engineParamDetailPojo);
|
||||
}
|
||||
} else {
|
||||
for (ParameterPojo parameter : parameters) {
|
||||
EngineParamDetailPojo engineParamDetailPojo = new EngineParamDetailPojo();
|
||||
engineParamDetailPojo.setEngineModelId(modelPojo.getId());
|
||||
engineParamDetailPojo.setParameterId(parameter.getId());
|
||||
engineParamDetailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
engineParamDetailPojo.setParameterType(parameter.getParameterType());
|
||||
engineParamDetailPojo.setPartsName(parameter.getPartsName());
|
||||
engineParamDetailPojo.setParameterName(parameter.getParameterName());
|
||||
engineParamDetailPojo.setDepartment(parameter.getDepartment());
|
||||
engineParamDetailPojo.setParameterSource("数据平台手工录入");
|
||||
engineParamDetailPojo.setMajorVersion(newVersionNum);
|
||||
engineParamDetailPojo.setVersionStatus(ParamValueVersionEnum.DRAFT.getCode());
|
||||
engineParamDetailPojo.setCreatedBy(ObjectUtils.isNotEmpty(xdapUsersPojo) ? xdapUsersPojo.getId() : null);
|
||||
engineParamDetailPojo.setLastUpdatedBy("");
|
||||
engineParamDetailPojo.setLastUpdateDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setIsDistributedRes(0);
|
||||
engineParamDetailPojo.setIsDistributedFilled(0);
|
||||
engineParamDetailPojos.add(engineParamDetailPojo);
|
||||
|
||||
for (ParameterPojo parameter : parameters) {
|
||||
EngineParamDetailPojo engineParamDetailPojo = new EngineParamDetailPojo();
|
||||
engineParamDetailPojo.setEngineModelId(modelPojo.getId());
|
||||
engineParamDetailPojo.setParameterId(parameter.getId());
|
||||
engineParamDetailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
engineParamDetailPojo.setParameterType(parameter.getParameterType());
|
||||
engineParamDetailPojo.setPartsName(parameter.getPartsName());
|
||||
engineParamDetailPojo.setParameterName(parameter.getParameterName());
|
||||
engineParamDetailPojo.setDepartment(parameter.getDepartment());
|
||||
engineParamDetailPojo.setParameterSource(parameter.getParameterSource());
|
||||
engineParamDetailPojo.setMajorVersion(newVersionNum);
|
||||
engineParamDetailPojo.setVersionStatus(ParamValueVersionEnum.DRAFT.getCode());
|
||||
engineParamDetailPojo.setCreatedBy(ObjectUtils.isNotEmpty(xdapUsersPojo) ? xdapUsersPojo.getId() : null);
|
||||
engineParamDetailPojo.setLastUpdatedBy("");
|
||||
engineParamDetailPojo.setLastUpdateDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setCreationDate(Timestamp.valueOf(LocalDateTime.now()));
|
||||
engineParamDetailPojo.setIsDistributedRes(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojo.setIsDistributedFilled(Objects.equals(parameter.getParameterSource(), "数据平台手工录入") ? 0 : 2);
|
||||
engineParamDetailPojos.add(engineParamDetailPojo);
|
||||
|
||||
}
|
||||
}
|
||||
bd.getBusinessDatabase().doBatchInsert(engineParamDetailPojos);
|
||||
}
|
||||
@ -525,7 +547,7 @@ public class DataEntryEngineModelServiceImpl implements DataEntryEngineModelServ
|
||||
);
|
||||
|
||||
// 验证是否需要更新
|
||||
if (modelParams.size() == parameters.size() && isSameParams(modelParams, parameters)) {
|
||||
if (modelParams.size() == parameters.size() && isSameParams(modelParams, parameters, model)) {
|
||||
throw new CommonException("当前版本机型参数已同步最新模板参数");
|
||||
}
|
||||
|
||||
@ -534,31 +556,59 @@ public class DataEntryEngineModelServiceImpl implements DataEntryEngineModelServ
|
||||
List<EngineParamDetailPojo> toInsertParams = new ArrayList<>();
|
||||
// 更新机型版本
|
||||
model.setVersionNumber(model.getVersionNumber() + 1);
|
||||
parameters.forEach(parameter -> {
|
||||
// 检查老机型参数中是否存在新版本参数
|
||||
// 存在则更新
|
||||
if (modelParamIds.contains(parameter.getId())) {
|
||||
// 拿到老参数
|
||||
EngineParamDetailPojo detailPojo = modelParamMap.get(parameter.getId());
|
||||
detailPojo.setId(null);
|
||||
detailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
detailPojo.setDepartment(parameter.getDepartment());
|
||||
detailPojo.setPartsName(parameter.getPartsName());
|
||||
detailPojo.setParameterName(parameter.getParameterName());
|
||||
detailPojo.setParameterSource(parameter.getParameterSource());
|
||||
detailPojo.setParameterType(parameter.getParameterType());
|
||||
detailPojo.setIsDistributedFilled("数据平台手工录入".equals(parameter.getParameterSource()) ? 0 : 2);
|
||||
detailPojo.setIsDistributedRes("数据平台手工录入".equals(parameter.getParameterSource()) ? 0 : 2);
|
||||
detailPojo.setResponsiblePersonId(null);
|
||||
detailPojo.setFilledBy(null);
|
||||
detailPojo.setMajorVersion(model.getVersionNumber());
|
||||
toInsertParams.add(detailPojo);
|
||||
}
|
||||
// 不存在则新增
|
||||
else {
|
||||
toInsertParams.add(getEngineParamDetailPojo(parameter, model));
|
||||
}
|
||||
});
|
||||
if (Objects.equals(model.getYcOrOth(), "玉柴")) {
|
||||
parameters.forEach(parameter -> {
|
||||
// 检查老机型参数中是否存在新版本参数
|
||||
// 存在则更新
|
||||
if (modelParamIds.contains(parameter.getId())) {
|
||||
// 拿到老参数
|
||||
EngineParamDetailPojo detailPojo = modelParamMap.get(parameter.getId());
|
||||
detailPojo.setId(null);
|
||||
detailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
detailPojo.setDepartment(parameter.getDepartment());
|
||||
detailPojo.setPartsName(parameter.getPartsName());
|
||||
detailPojo.setParameterName(parameter.getParameterName());
|
||||
detailPojo.setParameterSource(parameter.getParameterSource());
|
||||
detailPojo.setParameterType(parameter.getParameterType());
|
||||
detailPojo.setIsDistributedFilled("数据平台手工录入".equals(parameter.getParameterSource()) ? 0 : 2);
|
||||
detailPojo.setIsDistributedRes("数据平台手工录入".equals(parameter.getParameterSource()) ? 0 : 2);
|
||||
detailPojo.setResponsiblePersonId(null);
|
||||
detailPojo.setFilledBy(null);
|
||||
detailPojo.setMajorVersion(model.getVersionNumber());
|
||||
toInsertParams.add(detailPojo);
|
||||
}
|
||||
// 不存在则新增
|
||||
else {
|
||||
toInsertParams.add(getEngineParamDetailPojo(parameter, model));
|
||||
}
|
||||
});
|
||||
} else {
|
||||
parameters.forEach(parameter -> {
|
||||
// 检查老机型参数中是否存在新版本参数
|
||||
// 存在则更新
|
||||
if (modelParamIds.contains(parameter.getId())) {
|
||||
// 拿到老参数
|
||||
EngineParamDetailPojo detailPojo = modelParamMap.get(parameter.getId());
|
||||
detailPojo.setId(null);
|
||||
detailPojo.setSubsystemName(parameter.getSubsystemName());
|
||||
detailPojo.setDepartment(parameter.getDepartment());
|
||||
detailPojo.setPartsName(parameter.getPartsName());
|
||||
detailPojo.setParameterName(parameter.getParameterName());
|
||||
detailPojo.setParameterSource("数据平台手工录入");
|
||||
detailPojo.setParameterType(parameter.getParameterType());
|
||||
detailPojo.setIsDistributedFilled(0);
|
||||
detailPojo.setIsDistributedRes(0);
|
||||
detailPojo.setResponsiblePersonId(null);
|
||||
detailPojo.setFilledBy(null);
|
||||
detailPojo.setMajorVersion(model.getVersionNumber());
|
||||
toInsertParams.add(detailPojo);
|
||||
}
|
||||
// 不存在则新增
|
||||
else {
|
||||
toInsertParams.add(getEngineParamDetailPojo(parameter, model));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// 更新机型
|
||||
bd.getBusinessDatabase()
|
||||
@ -587,7 +637,11 @@ public class DataEntryEngineModelServiceImpl implements DataEntryEngineModelServ
|
||||
return model.getVersionNumber();
|
||||
}
|
||||
|
||||
private boolean isSameParams(List<EngineParamDetailPojo> modelParams, List<ParameterPojo> parameters) {
|
||||
private boolean isSameParams(
|
||||
List<EngineParamDetailPojo> modelParams,
|
||||
List<ParameterPojo> parameters,
|
||||
DataEntryEngineModelPojo model
|
||||
) {
|
||||
Map<String, EngineParamDetailPojo> modelParamMap = modelParams.stream()
|
||||
.collect(Collectors.
|
||||
toMap(
|
||||
@ -598,13 +652,22 @@ public class DataEntryEngineModelServiceImpl implements DataEntryEngineModelServ
|
||||
);
|
||||
return parameters.stream().allMatch(parameter -> {
|
||||
EngineParamDetailPojo detailPojo = modelParamMap.get(parameter.getId());
|
||||
return detailPojo != null &&
|
||||
Objects.equals(detailPojo.getParameterName(), parameter.getParameterName()) &&
|
||||
Objects.equals(detailPojo.getParameterSource(), parameter.getParameterSource()) &&
|
||||
Objects.equals(detailPojo.getParameterType(), parameter.getParameterType()) &&
|
||||
Objects.equals(detailPojo.getSubsystemName(), parameter.getSubsystemName()) &&
|
||||
Objects.equals(detailPojo.getDepartment(), parameter.getDepartment()) &&
|
||||
Objects.equals(detailPojo.getPartsName(), parameter.getPartsName());
|
||||
if (Objects.equals(model.getYcOrOth(), "玉柴")) {
|
||||
return detailPojo != null &&
|
||||
Objects.equals(detailPojo.getParameterName(), parameter.getParameterName()) &&
|
||||
Objects.equals(detailPojo.getParameterSource(), parameter.getParameterSource()) &&
|
||||
Objects.equals(detailPojo.getParameterType(), parameter.getParameterType()) &&
|
||||
Objects.equals(detailPojo.getSubsystemName(), parameter.getSubsystemName()) &&
|
||||
Objects.equals(detailPojo.getDepartment(), parameter.getDepartment()) &&
|
||||
Objects.equals(detailPojo.getPartsName(), parameter.getPartsName());
|
||||
} else {
|
||||
return detailPojo != null &&
|
||||
Objects.equals(detailPojo.getParameterName(), parameter.getParameterName()) &&
|
||||
Objects.equals(detailPojo.getParameterType(), parameter.getParameterType()) &&
|
||||
Objects.equals(detailPojo.getSubsystemName(), parameter.getSubsystemName()) &&
|
||||
Objects.equals(detailPojo.getDepartment(), parameter.getDepartment()) &&
|
||||
Objects.equals(detailPojo.getPartsName(), parameter.getPartsName());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -192,7 +192,7 @@ public class ParameterServiceImpl implements ParameterService {
|
||||
baseTemplate.getOrderNum(),
|
||||
0
|
||||
);
|
||||
bd.getBusinessDatabase().doInsert(newTemplate);
|
||||
newTemplate.setId(UUID.randomUUID().toString());
|
||||
return newTemplate;
|
||||
}
|
||||
}
|
||||
@ -591,6 +591,7 @@ public class ParameterServiceImpl implements ParameterService {
|
||||
}
|
||||
// 如果不是原模板
|
||||
else {
|
||||
bd.getBusinessDatabase().doInsert(newTemplate);
|
||||
List<TemplateAndParameterPojo> templateAndParameters =
|
||||
result.getNewParameters().stream()
|
||||
.filter(parameter -> !parameterIds.contains(parameter.getId()))
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user