质量 缺陷类型 NC处理

tags/yfai-pcn-ext-v1.0
LML丶 1 year ago
parent 403b1a8aa1
commit 2f35f544d0

@ -17,7 +17,7 @@ public interface IMesNcProcessingService {
public MesNcProcessingModel queryProduceSn(String serialNumber, String org);
@ApiOperation(value = "NC处理")
public void saveNc(String serialNumber,String person, Integer type, String org);
public void saveNc(String serialNumber,Integer person, Integer type, String org);
}

@ -44,7 +44,7 @@ public class MesNcProcessingController {
@PostMapping("/save-nc")
@ApiOperation(value = "NC处理")
public ResultBean saveNc(@RequestBody String serialNumber, String person, Integer type) {
public ResultBean saveNc(@RequestBody String serialNumber, Integer person, Integer type) {
try {
// 数据校验

@ -163,9 +163,13 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
@Override
public void saveDefectRecord(List<MesDefectRecord> defectRecordList, String org) {
//检查条码
MesProduceSn produceSn = checkProduceSn(defectRecordList.get(0).getSerialNumber(), org);
produceSn.setQcStatus(MesPcnExtEnumUtil.PRODUCE_QC_STATUS.SUSPICIOUS.getValue());
DdlPackBean packBean = DdlPackBean.getDdlPackBean(org);
DdlPreparedPack.getStringEqualPack(defectRecordList.get(0).getPartNo(), "partNo", packBean);
DdlPreparedPack.getStringEqualPack(produceSn.getPartNo(), "partNo", packBean);
MesPart part = partRepository.getByProperty(packBean);
//保存数据
@ -179,7 +183,11 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
zrsum = (rb.getResultList().get(0)).toString();
}
ConvertBean.serviceModelUpdate(produceSn, AuthUtil.getSessionUser().getUserName());
produceSnRepository.save(produceSn);
MesMove move = new MesMove();
move.setMatnr(part.getPartNo());
move.setOrganizeCode(org);
move.setFactoryCode(org);
move.setLgort(configService.getCfgValue(org, "LGORT"));
@ -187,6 +195,8 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
move.setMenge(defectRecordList.size());
move.setMeins(part.getUnit());
move.setZrsum(zrsum);
move.setPostDate(TimeTool.getToday());
move.setPostTime(TimeTool.getTimeShortWithColon());
ConvertBean.serviceModelInitialize(move, AuthUtil.getSessionUser().getUserName());
moveRepository.save(move);
}
@ -194,7 +204,8 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
private MesProduceSn checkProduceSn(String serialNumber, String org) {
//根据扫描的条码查询条码是否存在
DdlPackBean packBean = DdlPackBean.getDdlPackBean(org);
DdlPreparedPack.getStringEqualPack(serialNumber, "serialNumber", packBean);
DdlPreparedPack.getStringEqualPack(serialNumber, "productSn", packBean);
DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.DESC.getValue()}, new String[]{"createDatetime"}, packBean);
MesProduceSn produceSn = produceSnRepository.getByProperty(packBean);
//若不存在则提示条码不存在
@ -210,7 +221,9 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService
//todo
//是否需要判断条码质量状态
// if()
if (produceSn.getQcStatus() != MesPcnExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()) {
throw new ImppBusiException(String.format("【%s】此条码状态为【%s】,请选择【%s】状态的条码", serialNumber, produceSn.getSnStatus(), MesPcnExtEnumUtil.PRODUCE_SN_STATUS.OFFLINE.getValue()));
}
return produceSn;
}

@ -7,6 +7,7 @@ import cn.estsh.i3plus.ext.mes.pcn.pojo.model.MesNcProcessingModel;
import cn.estsh.i3plus.ext.mes.pcn.pojo.util.MesPcnExtEnumUtil;
import cn.estsh.i3plus.mes.pcn.api.iservice.busi.ISyncFuncService;
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
@ -108,7 +109,7 @@ public class MesNcProcessingService implements IMesNcProcessingService {
}
@Override
public void saveNc(String serialNumber, String person, Integer type, String org) {
public void saveNc(String serialNumber, Integer person, Integer type, String org) {
//检查不良条码
List<MesDefectRecord> defectRecordList = queryDefectRecord(serialNumber, org);
@ -128,6 +129,7 @@ public class MesNcProcessingService implements IMesNcProcessingService {
if (type == MesPcnExtEnumUtil.NC_TYPE.REWORK.getValue()) {
MesMove move = new MesMove();
move.setMatnr(part.getPartNo());
move.setOrganizeCode(org);
move.setFactoryCode(org);
move.setLgort(configService.getCfgValue(org, "UMLGO"));
@ -135,6 +137,8 @@ public class MesNcProcessingService implements IMesNcProcessingService {
move.setMenge(defectRecordList.size());
move.setMeins(part.getUnit());
move.setZrsum(zrsum);
move.setPostDate(TimeTool.getToday());
move.setPostTime(TimeTool.getTimeShortWithColon());
ConvertBean.serviceModelInitialize(move, AuthUtil.getSessionUser().getUserName());
moveRepository.save(move);
}
@ -180,6 +184,12 @@ public class MesNcProcessingService implements IMesNcProcessingService {
throw new ImppBusiException(String.format("【%s】此条码不存在可疑品记录请检查数据", serialNumber));
}
defectRecordList.forEach(k -> {
if (k.getNcType() != 0) {
throw new ImppBusiException(String.format("【%s】此条码已经过NC处理请检查数据", serialNumber));
}
});
return defectRecordList;
}

Loading…
Cancel
Save