|
|
|
@ -379,6 +379,7 @@ public class MesPackageRoundnessService implements IRoundnessStrategy {
|
|
|
|
|
* 总成拆bom,变成子零件
|
|
|
|
|
* 替换子零件,通过替换后的零件,去找排序工艺
|
|
|
|
|
*/
|
|
|
|
|
Map<String,String> ptrRuleListMap = new HashMap<>();
|
|
|
|
|
//是否修改为P单
|
|
|
|
|
boolean isModifyPOrder = false;
|
|
|
|
|
//查询mes_part_ptr表,根据物料清单查找ptr替换信息
|
|
|
|
@ -409,6 +410,7 @@ public class MesPackageRoundnessService implements IRoundnessStrategy {
|
|
|
|
|
}
|
|
|
|
|
List<String> partNoList = workOrderPartList.stream().map(MesWorkOrderPart::getPartNo).collect(Collectors.toList());
|
|
|
|
|
List<MesPartPtr> partPtrList = getPartPtrList(organizeCode, mesWorkOrder.getWorkCenterCode(), partNoList);
|
|
|
|
|
//装配件规则如果进行了零件替换 则使用ptr的规则 key 零件号,value 是规则
|
|
|
|
|
|
|
|
|
|
for (MesPartPtr mesPartPtr : partPtrList) {
|
|
|
|
|
//根据mesPartPtr的目标零件号,找到零件信息
|
|
|
|
@ -421,11 +423,12 @@ public class MesPackageRoundnessService implements IRoundnessStrategy {
|
|
|
|
|
orderPart.setPartNo(mesPartSap.getPartNo());
|
|
|
|
|
orderPart.setPartName(mesPartSap.getPartName());
|
|
|
|
|
orderPart.setShippingPartNo(mesPartSap.getPartNo());
|
|
|
|
|
ptrRuleListMap.put(mesPartSap.getPartNo(), mesPartPtr.getReplacePartSnRule());
|
|
|
|
|
if (!isModifyPOrder){
|
|
|
|
|
isModifyPOrder = true;
|
|
|
|
|
}
|
|
|
|
|
//更新mes_part_ptr的实际数量 + 1
|
|
|
|
|
mesPartPtr.setPrtVehicleActualCount(mesPartPtr.getPrtVehicleActualCount() + 1);
|
|
|
|
|
mesPartPtr.setPrtVehicleActualCount(mesPartPtr.getPrtVehicleActualCount() + 1);
|
|
|
|
|
ConvertBean.saveOrUpdate(mesPartPtr,"JOB");
|
|
|
|
|
partPtrRao.update(mesPartPtr);
|
|
|
|
|
DdlPackBean partPtrDetailPackBean = DdlPackBean.getDdlPackBean(organizeCode);
|
|
|
|
@ -490,6 +493,9 @@ public class MesPackageRoundnessService implements IRoundnessStrategy {
|
|
|
|
|
mesWorkOrderService.doSaveWorkOrderPrintQueue(mesWorkOrder);
|
|
|
|
|
if (!assemblyList.isEmpty()) {
|
|
|
|
|
for (MesWorkOrderAssembly orderAssembly : assemblyList) {
|
|
|
|
|
if (ptrRuleListMap.get(orderAssembly.getPartNo()) != null){
|
|
|
|
|
orderAssembly.setMatchRule(ptrRuleListMap.get(orderAssembly.getPartNo()));
|
|
|
|
|
}
|
|
|
|
|
orderAssembly.setPartNo(mesWorkOrder.getPartNo());
|
|
|
|
|
orderAssembly.setPartName(mesWorkOrder.getPartName());
|
|
|
|
|
orderAssembly.setWorkOrderNo(mesWorkOrder.getWorkOrderNo());
|
|
|
|
|