|
@@ -578,6 +578,7 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
mesNotices.add(mesNotice);
|
|
|
baseService.addNoticeMore(mesNotices, false);
|
|
|
}catch (Exception ex){
|
|
|
+ ex.printStackTrace();
|
|
|
throw new BizException("处理失败:"+ex.getMessage());
|
|
|
}
|
|
|
} else {
|
|
@@ -1024,6 +1025,7 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
String workOrderNo = null;
|
|
|
String version = null;
|
|
|
String partsNo = null;
|
|
|
+ String drawingNo = null;
|
|
|
String batchNo = null;
|
|
|
String partName = null; // 零件名称
|
|
|
String processName = null;
|
|
@@ -1043,7 +1045,7 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
partName = (qualityInfo != null) ? dataInfo.getString("teilebez") : dataInfo.getString("teilebez");
|
|
|
externalTaskCode = (qualityInfo != null) ? dataInfo.getString("TaskCode") : dataInfo.getString("auidnr");
|
|
|
String serialNo = (qualityInfo != null) ? dataInfo.getString("PartOrder") : dataInfo.getString("sno");
|
|
|
- String drawingNo = (qualityInfo != null) ? dataInfo.getString("DrawNumber") : dataInfo.getString("graphno");
|
|
|
+ drawingNo = (qualityInfo != null) ? dataInfo.getString("DrawNumber") : dataInfo.getString("graphno");
|
|
|
String idnr = (qualityInfo != null) ? null : dataInfo.getString("idnr");
|
|
|
|
|
|
// 图号通过物料号与对照表进行更换
|
|
@@ -1076,13 +1078,29 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
mMeterial = materialService.getById(1L);
|
|
|
//MMeterialReceiveLog mMeterialReceiveLog = meterialReceiveLogService.getById(1L);
|
|
|
materialCode = StringUtil.isNotEmpty(idnr) ? idnr : mMeterial.getMeterialCode();
|
|
|
- BBom bom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getPartsNo, drawingNo + "_V" + processNo).eq(BBom::getDrawingNo, drawingNo).eq(BBom::getSynFlag, "1"));
|
|
|
+
|
|
|
+ BBom checkBom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getDrawingNo, drawingNo).eq(BBom::getNo, processNo).eq(BBom::getSynFlag, "1").last("limit 1"));
|
|
|
+
|
|
|
+ partsNo = (qualityInfo != null) ? (drawingNo + "_V" + processNo+"_SQ") : drawingNo + "_V" + processNo;
|
|
|
+ BBom bom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getPartsNo, partsNo).eq(BBom::getDrawingNo, drawingNo).eq(BBom::getNo, processNo).eq(BBom::getSynFlag, "1").last("limit 1"));
|
|
|
if (bom == null) {
|
|
|
- materialName = partName==null ? (processName==null ? mMeterial.getTradeMark() :processName) : partName;
|
|
|
- partsNo = drawingNo + "_V" + processNo;
|
|
|
- bom = BBom.builder().synFlag("1").name(materialName + "V" + processNo).batchNo(batchNo).partsNo(partsNo).partsAlias(materialCode).no(processNo).brand(workOrderNo).status("1").importantFlag("0").keyFlag("0").zoneId(zone.getId()).drawingNo(drawingNo).build();
|
|
|
- bom.setMeterialId(1L);
|
|
|
- bom.setBomAlias(partsNo);
|
|
|
+ if(checkBom!=null){
|
|
|
+ bom = new BBom();
|
|
|
+ BeanUtil.copyProperties(checkBom,bom);
|
|
|
+ bom.setId(null).setName(checkBom.getName()+"_质检");
|
|
|
+ bom.setPartsNo(checkBom.getPartsNo()+"_SQ");
|
|
|
+ bom.setAuditStatus("0");
|
|
|
+ bom.setTrayId(null);
|
|
|
+ bom.setTrayName(null);
|
|
|
+ materialName = bom.getName();
|
|
|
+ partsNo = bom.getPartsNo();
|
|
|
+ }else {
|
|
|
+ materialName = partName==null ? (processName==null ? mMeterial.getTradeMark() :processName) : partName;
|
|
|
+ partsNo = drawingNo + "_V" + processNo+"_SQ";
|
|
|
+ bom = BBom.builder().synFlag("1").name(materialName + "V" + processNo).batchNo(batchNo).partsNo(partsNo).partsAlias(materialCode).no(processNo).brand(workOrderNo).status("1").importantFlag("0").keyFlag("0").zoneId(zone.getId()).drawingNo(drawingNo).build();
|
|
|
+ bom.setMeterialId(1L);
|
|
|
+ bom.setBomAlias(partsNo);
|
|
|
+ }
|
|
|
bBomService.save(bom);
|
|
|
} else {
|
|
|
materialName = bom.getName();
|
|
@@ -1230,10 +1248,10 @@ public class MesController extends SuperController<MesNoticeService, Long, MesNo
|
|
|
|
|
|
String bomName = materialName.contains("V") ? materialName : materialName + "V" + processNo;
|
|
|
|
|
|
- BBom bom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getPartsNo, partsNo).eq(BBom::getPartsAlias, materialCode).eq(BBom::getSynFlag, "1"));
|
|
|
+ BBom bom = bBomService.getOne(new LambdaQueryWrapper<BBom>().eq(BBom::getPartsNo, partsNo).eq(BBom::getDrawingNo, drawingNo).eq(BBom::getNo, processNo).eq(BBom::getSynFlag, "1"));
|
|
|
if (bom == null) {
|
|
|
bom = BBom.builder().build();
|
|
|
- bom.setPartsNo(partsNo).setBomAlias(partsNo).setPartsAlias(materialCode).setBatchNo(batchNo).setName(bomName).setStatus("1").setSynFlag("1").setImportantFlag("1").setKeyFlag("1").setNo(processNo);
|
|
|
+ bom.setPartsNo(partsNo).setBomAlias(partsNo).setPartsAlias(materialCode).setBatchNo(batchNo).setName(bomName).setStatus("1").setSynFlag("1").setImportantFlag("1").setKeyFlag("1").setNo(processNo).setDrawingNo(drawingNo);
|
|
|
bom.setMeterialId(mMeterial.getId()).setBrand(workOrderNo);
|
|
|
if (zone != null) {
|
|
|
bom.setZoneId(zone.getId());
|