|
|
|
@ -12,10 +12,8 @@ import cn.estsh.i3plus.pojo.base.common.Pager;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.common.PagerHelper;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
|
|
|
|
|
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesMaterialSn;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCenter;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesWorkOrderCut;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesWorkOrderCutMaterial;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.*;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesCutModifyRawLengthRecordRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesMaterialSnRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesWorkOrderCutMaterialRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesWorkOrderCutRepository;
|
|
|
|
@ -52,6 +50,9 @@ public class MesCutRawErrorProofingService implements IMesCutRawErrorProofingSer
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesMaterialSnRepository materialSnRepository;
|
|
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
|
private MesCutModifyRawLengthRecordRepository cutModifyRawLengthRecordRepository;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public MesCutRawErrorProofingModel doScanSn(MesCutRawErrorProofingModel model) {
|
|
|
|
|
|
|
|
|
@ -64,7 +65,7 @@ public class MesCutRawErrorProofingService implements IMesCutRawErrorProofingSer
|
|
|
|
|
|
|
|
|
|
if (workOrderCutDb == null) MesPcnException.throwMesBusiException("裁片工单【%s】不存在", model.getSn());
|
|
|
|
|
|
|
|
|
|
if (workOrderCutDb.getWorkOrderStatus() != MesExtEnumUtil.CUT_ORDER_STATUS.RELEASED.getValue()) MesPcnException.throwMesBusiException("裁片工单【%s】状态不为【%s】", model.getSn(), MesExtEnumUtil.CUT_ORDER_STATUS.RELEASED.getValue());
|
|
|
|
|
if (workOrderCutDb.getWorkOrderStatus() != MesExtEnumUtil.CUT_ORDER_STATUS.RELEASED.getValue()) MesPcnException.throwMesBusiException("裁片工单【%s】状态不为【%s】", model.getSn(), MesExtEnumUtil.CUT_ORDER_STATUS.RELEASED.getDescription());
|
|
|
|
|
|
|
|
|
|
result.setCurScanType(CUR_SCAN_TYPE_BY_RAW_SN);
|
|
|
|
|
result.setCutWorkOrderNo(workOrderCutDb.getCutWorkOrderNo());
|
|
|
|
@ -118,14 +119,14 @@ public class MesCutRawErrorProofingService implements IMesCutRawErrorProofingSer
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 已扫描长度
|
|
|
|
|
Double useLength = workOrderCutMaterial.getScanLength();
|
|
|
|
|
if (useLength.compareTo(length) > 0) {
|
|
|
|
|
Double surplusLength = workOrderCutMaterial.getMaterialDosage() - workOrderCutMaterial.getScanLength();
|
|
|
|
|
if (surplusLength.compareTo(length) > 0) {
|
|
|
|
|
materialSnDb.setSurplusLength(0.0);
|
|
|
|
|
workOrderCutMaterial.setScanLength(workOrderCutMaterial.getScanLength() + length);
|
|
|
|
|
result.setIsRedirect(CommonEnumUtil.FALSE);
|
|
|
|
|
result.setShowInfo("长度不足,请继续扫描条码");
|
|
|
|
|
} else {
|
|
|
|
|
materialSnDb.setSurplusLength(length - useLength);
|
|
|
|
|
materialSnDb.setSurplusLength(length - surplusLength);
|
|
|
|
|
// 已满足扫描总长度 修改工单状态为已校验原材料
|
|
|
|
|
DdlPackBean packBean1 = DdlPackBean.getDdlPackBean(model.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(model.getCutWorkOrderNo(), MesPcnExtConstWords.CUT_WORK_ORDER_NO, packBean);
|
|
|
|
@ -179,12 +180,16 @@ public class MesCutRawErrorProofingService implements IMesCutRawErrorProofingSer
|
|
|
|
|
|
|
|
|
|
if (materialSnDb == null) MesPcnException.throwMesBusiException("条码【%s】不存在", model.getSn());
|
|
|
|
|
|
|
|
|
|
if (materialSnDb.getSurplusLength() < model.getSubLength()) MesPcnException.throwMesBusiException("条码【%s】减去长度【%s】大于剩余长度", materialSnDb.getSurplusLength(), model.getSubLength());
|
|
|
|
|
if (model.getSubLength() == null) MesPcnException.throwMesBusiException("条码【%s】为填减去长度", model.getSn());
|
|
|
|
|
|
|
|
|
|
if (materialSnDb.getSurplusLength() < model.getSubLength()) MesPcnException.throwMesBusiException("条码【%s】减去长度【%s】大于剩余长度【%s】", model.getSn(), materialSnDb.getSurplusLength(), model.getSubLength());
|
|
|
|
|
|
|
|
|
|
materialSnDb.setSurplusLength(materialSnDb.getSurplusLength() - model.getSubLength());
|
|
|
|
|
ConvertBean.serviceModelUpdate(materialSnDb, model.getUserName());
|
|
|
|
|
materialSnRepository.save(materialSnDb);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private List<MesWorkOrderCutMaterial> getWorkOrderCutMaterialList(MesCutRawErrorProofingModel model) {
|
|
|
|
|