|
|
|
|
@ -1851,28 +1851,19 @@ public class DsTaskingServiceImpl extends BaseServiceImpl<DsTaskingMapper, DsTas |
|
|
|
|
log.info("开始处理子件:{}", subCode); |
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
// 1. 查询子件老MES数据(null仅代表无该子件的详细数据,不代表跳过)
|
|
|
|
|
DsPartEntity oldMesSubPart = getOldMesPart(subCode); |
|
|
|
|
|
|
|
|
|
if (oldMesSubPart == null) { |
|
|
|
|
// 子件无老MES详细数据,创建空的基础对象(保证核心逻辑能执行)
|
|
|
|
|
log.warn("子件 {} 无老MES详细数据,创建基础空对象处理", subCode); |
|
|
|
|
oldMesSubPart = new DsPartEntity(); |
|
|
|
|
if(!StringUtils.isEmpty(subPartInfo.getSubName())){ |
|
|
|
|
oldMesSubPart.setPartName(subPartInfo.getSubName()); |
|
|
|
|
} |
|
|
|
|
oldMesSubPart.setPartCode(subPartInfo.getSubCode()); |
|
|
|
|
oldMesSubPart.setQuota(subPartInfo.getQuota()); |
|
|
|
|
oldMesSubPart.setSubType(subPartInfo.getSubType()); |
|
|
|
|
oldMesSubPart.setProductType(subPartInfo.getProductType()); |
|
|
|
|
oldMesSubPart.setArea(subPartInfo.getArea()); |
|
|
|
|
oldMesSubPart.setConfigCode(subPartInfo.getConfigNo()); |
|
|
|
|
oldMesSubPart.setPlate(subPartInfo.getPlate()); |
|
|
|
|
oldMesSubPart.setMaterial(subPartInfo.getMaterial()); |
|
|
|
|
oldMesSubPart.setPlateCode(subPartInfo.getPlateCode()); |
|
|
|
|
oldMesSubPart.setSinTerType(subPartInfo.getSinTerType()); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
// 1. 处理子件数据进行赋值
|
|
|
|
|
DsPartEntity oldMesSubPart = new DsPartEntity(); |
|
|
|
|
oldMesSubPart.setPartName(subPartInfo.getSubName()); |
|
|
|
|
oldMesSubPart.setPartCode(subPartInfo.getSubCode()); |
|
|
|
|
oldMesSubPart.setQuota(subPartInfo.getQuota()); |
|
|
|
|
oldMesSubPart.setSubType(subPartInfo.getSubType()); |
|
|
|
|
oldMesSubPart.setProductType(subPartInfo.getProductType()); |
|
|
|
|
oldMesSubPart.setArea(subPartInfo.getArea()); |
|
|
|
|
oldMesSubPart.setConfigCode(subPartInfo.getConfigNo()); |
|
|
|
|
oldMesSubPart.setPlate(subPartInfo.getPlate()); |
|
|
|
|
oldMesSubPart.setMaterial(subPartInfo.getMaterial()); |
|
|
|
|
oldMesSubPart.setPlateCode(subPartInfo.getPlateCode()); |
|
|
|
|
oldMesSubPart.setSinTerType(subPartInfo.getSinTerType()); |
|
|
|
|
|
|
|
|
|
// 2. 递归处理当前子件自身(生成版本号、创建零件、同步工艺等核心逻辑)
|
|
|
|
|
DsPartEntity newSubPart = processPartRecursively(oldMesSubPart); |
|
|
|
|
|