|
@@ -24,10 +24,7 @@ import com.github.zuihou.business.operationManagementCenter.entity.OrderProduct;
|
|
|
import com.github.zuihou.business.operationManagementCenter.service.OrderProductService;
|
|
|
import com.github.zuihou.business.operationManagementCenter.service.OrderService;
|
|
|
import com.github.zuihou.business.operationManagementCenter.service.PlanService;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.entity.BBom;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.entity.BomVersionInfo;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.entity.MMeterial;
|
|
|
-import com.github.zuihou.business.productionReadyCenter.entity.MMeterialReceiveLog;
|
|
|
+import com.github.zuihou.business.productionReadyCenter.entity.*;
|
|
|
import com.github.zuihou.business.productionReadyCenter.service.*;
|
|
|
import com.github.zuihou.business.productionResourceCenter.entity.ZZone;
|
|
|
import com.github.zuihou.business.productionResourceCenter.service.ZZoneService;
|
|
@@ -58,6 +55,9 @@ import java.io.File;
|
|
|
import java.io.IOException;
|
|
|
import java.net.URL;
|
|
|
import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+import java.util.stream.IntStream;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
@Slf4j
|
|
|
@Validated
|
|
@@ -763,11 +763,11 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
String drawingNo = dataInfo.getString("graphno");
|
|
|
String idnr = dataInfo.getString("idnr");
|
|
|
|
|
|
- materialCode = StringUtil.isNotEmpty(idnr)? idnr: mMeterial.getMeterialCode();
|
|
|
+
|
|
|
//获取默认虚拟原材料
|
|
|
mMeterial = materialService.getById(1L);
|
|
|
MMeterialReceiveLog mMeterialReceiveLog = meterialReceiveLogService.getById(1L);
|
|
|
- materialCode = mMeterial.getMeterialCode();
|
|
|
+ materialCode = StringUtil.isNotEmpty(idnr)? idnr: mMeterial.getMeterialCode();
|
|
|
BBom bom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getDrawingNo, drawingNo).eq(BBom::getSynFlag, "1"));
|
|
|
if(bom==null){
|
|
|
materialName = mMeterial.getTradeMark();
|
|
@@ -787,15 +787,32 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
workOrder.put("processRouteVersion", version);
|
|
|
workOrder.put("batchNo", batchNo);
|
|
|
List<Object> orderProductSeqList = Lists.newArrayList();
|
|
|
- JSONObject data = new JSONObject();
|
|
|
- data.put("serialNo", serialNo);
|
|
|
- orderProductSeqList.add(data);
|
|
|
- workOrder.put("orderProductSeqList", orderProductSeqList);
|
|
|
- workPieceList = orderProductSeqList;
|
|
|
-
|
|
|
- if(null!=mesInfo){
|
|
|
+ if(null != qualityInfo) {
|
|
|
+ JSONObject data = new JSONObject();
|
|
|
+ data.put("serialNo", serialNo);
|
|
|
+ orderProductSeqList.add(data);
|
|
|
+ }else{
|
|
|
+ String plmenge = dataInfo.getString("plmenge");
|
|
|
+ if(StringUtil.isEmpty(plmenge)) {
|
|
|
+ msgUtil.createWarnLog("Mes订单加工零件个数不允许为空","MESException");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ List<JSONObject> dataList = IntStream.range(0, (int)Float.parseFloat(plmenge)).mapToObj(i-> {
|
|
|
+ JSONObject obj = new JSONObject();
|
|
|
+ obj.put("serialNo", String.valueOf(i));
|
|
|
+ return obj;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ orderProductSeqList.addAll(dataList);
|
|
|
+ String pstart = dataInfo.getString("pstart");
|
|
|
+ String pend = dataInfo.getString("pend");
|
|
|
+ String bez = dataInfo.getString("bez");
|
|
|
+ workOrder.put("plannedStartTime", pstart);
|
|
|
+ workOrder.put("plannedEndTime", pend);
|
|
|
+ workOrder.put("bez", bez);
|
|
|
|
|
|
}
|
|
|
+ workOrder.put("orderProductSeqList", orderProductSeqList);
|
|
|
+ workPieceList = orderProductSeqList;
|
|
|
}else {
|
|
|
if (null != consumMaterial) {
|
|
|
//处理原材料信息
|
|
@@ -899,7 +916,7 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- String bomName = materialName + "V" + processNo;
|
|
|
+ String bomName = materialName.contains("V")? materialName : materialName + "V" + processNo;
|
|
|
BBom bom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getMeterialId, mMeterial.getId()).eq(BBom::getPartsNo, mMeterial.getMeterialCode()).eq(BBom::getName, bomName).eq(BBom::getSynFlag, "1"));
|
|
|
if (bom == null) {
|
|
|
bom = BBom.builder().build();
|
|
@@ -932,33 +949,26 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
} else {
|
|
|
versionId = mesVersionInfo.getId();
|
|
|
}
|
|
|
- /*
|
|
|
+ List<BomProcedure> bomProcedureList = bomProcedureService.list(new LbqWrapper<BomProcedure>().eq(BomProcedure::getVersionId, versionId).eq(BomProcedure::getBomId, bom.getId()));
|
|
|
+
|
|
|
//节点处理
|
|
|
- if (taskList.size() >= 4) {
|
|
|
- String[] noArr = new String[] {"OP05","OP10", "OP11", "OP15"};
|
|
|
- String[] typeArr = new String[] {"上料","设备序", "设备序","下料"};
|
|
|
+ if (bomProcedureList.size()== 0 && workOrder.containsKey("bez")) {
|
|
|
+ List<String> noArr = Stream.of("OP05","OP10", "OP11", "OP15").collect(Collectors.toList());
|
|
|
+ List<String> nameArr = Stream.of("上料", workOrder.getString("bez"), "清洗","下料").collect(Collectors.toList());
|
|
|
+ List<String> typeArr = Stream.of("上料","设备序", "设备序","下料").collect(Collectors.toList());
|
|
|
|
|
|
List<BomProcedureVersion> bomProcedureVersionsList = Lists.newArrayList();
|
|
|
- List<BomProcedure> bomProcedureList = Lists.newArrayList();
|
|
|
- Long finalVersionId = versionId;
|
|
|
- BBom finalBom = bom;
|
|
|
- taskList.stream().forEach(item -> {
|
|
|
- JSONObject jsonObject = (JSONObject) item;
|
|
|
- BomProcedureVersion bomProcedureVersion = BomProcedureVersion.builder().build();
|
|
|
- int stepNo = Integer.parseInt(jsonObject.getString("stepNo")) - 1;
|
|
|
- bomProcedureVersion.setVersionId(finalVersionId).setBomId(finalBom.getId()).setAuditStatus("0")
|
|
|
- .setName(jsonObject.getString("stepName")).setRemark(jsonObject.getString("stepDesc")!="null"?jsonObject.getString("stepDesc"):"").setSort(99-stepNo).setRatedWorkhours(10f);
|
|
|
- int index = stepNo < 4 ? stepNo : stepNo % 4;
|
|
|
- bomProcedureVersion.setNo(noArr[index]).setType(typeArr[index]);
|
|
|
+ for(int i=0; i<noArr.size();i++){
|
|
|
+ BomProcedureVersion bomProcedureVersion = BomProcedureVersion.builder().versionId(versionId).bomId(bom.getId()).auditStatus("0").name(nameArr.get(i)).type(typeArr.get(i)).content(nameArr.get(i)).sort(100-i).ratedWorkhours(10f).no(noArr.get(i))
|
|
|
+ .build();
|
|
|
bomProcedureVersionsList.add(bomProcedureVersion);
|
|
|
BomProcedure bomProcedure = BeanUtil.toBean(bomProcedureVersion, BomProcedure.class);
|
|
|
bomProcedure.setRatedWorkhours(10f);
|
|
|
bomProcedureList.add(bomProcedure);
|
|
|
- });
|
|
|
+ }
|
|
|
bomProcedureVersionService.saveBatch(bomProcedureVersionsList);
|
|
|
bomProcedureService.saveBatch(bomProcedureList);
|
|
|
}
|
|
|
- */
|
|
|
|
|
|
//处理工单信息
|
|
|
Order order = Order.builder().build();
|