|
|
|
@ -21,6 +21,7 @@ import cn.estsh.i3plus.pojo.mes.bean.recyclablepackage.*;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.recyclablepackage.MesRecyclablePackageBindingDetailRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.recyclablepackage.MesRecyclablePackageBindingRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil;
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.ResultBean;
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.SpringContextsUtil;
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
@ -137,35 +138,40 @@ public class MesRecyclablePackageBindingServiceImpl implements IMesRecyclablePac
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public MesRecyclablePackageBinding doScan(MesRecyclablePackageBindingModel mesRecyclablePackageBindingModel) {
|
|
|
|
|
public ResultBean doScan(MesRecyclablePackageBindingModel mesRecyclablePackageBindingModel) {
|
|
|
|
|
MesRecyclablePackageBinding mesRecyclablePackageBinding = null;
|
|
|
|
|
String msg = MesPcnExtConstWords.EMPTY;
|
|
|
|
|
switch (mesRecyclablePackageBindingModel.getType()) {
|
|
|
|
|
//扫描包条码
|
|
|
|
|
case 10:
|
|
|
|
|
mesRecyclablePackageBinding = doScanPackageSn(mesRecyclablePackageBindingModel);
|
|
|
|
|
msg = String.format("料包条码[%s]扫描成功!", mesRecyclablePackageBindingModel.getPackageSn());
|
|
|
|
|
break;
|
|
|
|
|
//扫描零件条码
|
|
|
|
|
case 20:
|
|
|
|
|
mesRecyclablePackageBinding = doScanProductSn(mesRecyclablePackageBindingModel);
|
|
|
|
|
msg = String.format("零件条码[%s]扫描成功!", mesRecyclablePackageBindingModel.getProductSn());
|
|
|
|
|
break;
|
|
|
|
|
//清空
|
|
|
|
|
case 30:
|
|
|
|
|
mesRecyclablePackageBinding = deletedMesRecyclablePackageBindingDetail(mesRecyclablePackageBindingModel, true);
|
|
|
|
|
msg = String.format("料包条码[%s]清空成功!", mesRecyclablePackageBindingModel.getPackageSn());
|
|
|
|
|
break;
|
|
|
|
|
//删除
|
|
|
|
|
case 40:
|
|
|
|
|
mesRecyclablePackageBinding = deletedMesRecyclablePackageBindingDetail(mesRecyclablePackageBindingModel, false);
|
|
|
|
|
msg = "删除成功!";
|
|
|
|
|
break;
|
|
|
|
|
//关箱
|
|
|
|
|
case 50:
|
|
|
|
|
mesRecyclablePackageBinding = updateClosePackageBinding(mesRecyclablePackageBindingModel);
|
|
|
|
|
msg = String.format("料包条码[%s]关箱成功,请扫描下一箱!", mesRecyclablePackageBindingModel.getPackageSn());
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
|
MesPcnException.throwMesBusiException("扫描类型【%s】不存在", mesRecyclablePackageBindingModel.getType());
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
return mesRecyclablePackageBinding;
|
|
|
|
|
|
|
|
|
|
return ResultBean.success(msg).setResultObject(mesRecyclablePackageBinding);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -201,7 +207,7 @@ public class MesRecyclablePackageBindingServiceImpl implements IMesRecyclablePac
|
|
|
|
|
//校验箱
|
|
|
|
|
MesRecyclablePackageBinding mesRecyclablePackageBinding = getPackageBinding(mesRecyclablePackageBindingModel.getOrganizeCode(), mesRecyclablePackageBindingModel.getPackageSn());
|
|
|
|
|
if (MesExtEnumUtil.RECYCLABLE_PACKAGE_PACKAGE_BINDING_STATUS.CLOSED.getValue() == mesRecyclablePackageBinding.getStatus()) {
|
|
|
|
|
MesPcnException.throwMesBusiException("包条码【%s】已关箱", mesRecyclablePackageBinding.getPackageSn());
|
|
|
|
|
MesPcnException.throwMesBusiException("料包条码【%s】已关箱", mesRecyclablePackageBinding.getPackageSn());
|
|
|
|
|
}
|
|
|
|
|
//校验零件条码是否扫描
|
|
|
|
|
checkIsScan(mesRecyclablePackageBindingModel);
|
|
|
|
@ -350,10 +356,10 @@ public class MesRecyclablePackageBindingServiceImpl implements IMesRecyclablePac
|
|
|
|
|
private MesRecyclablePackageBinding updateClosePackageBinding(MesRecyclablePackageBindingModel mesRecyclablePackageBindingModel) {
|
|
|
|
|
MesRecyclablePackageBinding mesRecyclablePackageBinding = getPackageBinding(mesRecyclablePackageBindingModel.getOrganizeCode(), mesRecyclablePackageBindingModel.getPackageSn());
|
|
|
|
|
if (MesExtEnumUtil.RECYCLABLE_PACKAGE_PACKAGE_BINDING_STATUS.CLOSED.getValue() == mesRecyclablePackageBinding.getStatus()) {
|
|
|
|
|
MesPcnException.throwMesBusiException("包条码【%s】已关,不能重复关箱,请重新扫描", mesRecyclablePackageBinding.getPackageSn());
|
|
|
|
|
MesPcnException.throwMesBusiException("料包条码【%s】已关,不能重复关箱,请重新扫描", mesRecyclablePackageBinding.getPackageSn());
|
|
|
|
|
}
|
|
|
|
|
if (findMesRecyclablePackageBindingDetailByPidCount(mesRecyclablePackageBinding.getOrganizeCode(), mesRecyclablePackageBinding.getId()) <= MesPcnExtConstWords.ZERO) {
|
|
|
|
|
MesPcnException.throwMesBusiException("包条码【%s】明细不能为空,请扫描零件明细", mesRecyclablePackageBinding.getPackageSn());
|
|
|
|
|
MesPcnException.throwMesBusiException("料包条码【%s】明细不能为空,请扫描零件明细", mesRecyclablePackageBinding.getPackageSn());
|
|
|
|
|
}
|
|
|
|
|
//更新未关箱状态
|
|
|
|
|
mesRecyclablePackageBinding.setStatus(MesExtEnumUtil.RECYCLABLE_PACKAGE_PACKAGE_BINDING_STATUS.CLOSED.getValue());
|
|
|
|
|