|
|
|
@ -6,14 +6,17 @@ import cn.estsh.i3plus.ext.mes.apiservice.dao.IMesDefectRecordDao;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pojo.model.MesDefectRecordModel;
|
|
|
|
|
import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords;
|
|
|
|
|
import cn.estsh.i3plus.platform.common.convert.ConvertBean;
|
|
|
|
|
import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum;
|
|
|
|
|
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;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesDefectType;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesDefectWarnConfig;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesDefectTypeRepository;
|
|
|
|
|
import cn.estsh.i3plus.pojo.mes.repository.MesPartRepository;
|
|
|
|
|
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
|
|
|
|
|
import cn.estsh.impp.framework.boot.util.ValidatorBean;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
@ -39,13 +42,56 @@ public class MesDefectWarnConfigService extends BaseMesService<MesDefectWarnConf
|
|
|
|
|
|
|
|
|
|
protected void onInsertBean(MesDefectWarnConfig item) {
|
|
|
|
|
// 数据校验
|
|
|
|
|
ValidatorBean.checkNotNull(item.getDefectTypeCode(), "缺陷类型不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getDefectLocation(), "零件类型不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getPartTypeCode(), "零件类型不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getPartNo(), "零件号不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getFrontBack(), "正面反面不能为空");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getDefectTypeCode(), "defectTypeCode", packBean);
|
|
|
|
|
DdlPreparedPack.getStringLikerPack(item.getDefectLocation(), "defectLocation", packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartTypeCode(), "partTypeCode", packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", packBean);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(item.getFrontBack(), "frontBack", packBean);
|
|
|
|
|
boolean flg = baseRDao.isExitByHql(packBean);
|
|
|
|
|
if (!flg) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("【%s】缺陷类型【%s】缺陷位置代码【%s】零件类型【%s】零件号【%s】正面反面已经存在,请检查数据", item.getDefectTypeCode(), item.getDefectLocation(),
|
|
|
|
|
item.getPartTypeCode(), item.getPartNo(), item.getFrontBack())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected void onUpdateBean(MesDefectWarnConfig item) {
|
|
|
|
|
// 数据校验
|
|
|
|
|
ValidatorBean.checkNotNull(item.getDefectTypeCode(), "缺陷类型不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getDefectLocation(), "零件类型不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getPartTypeCode(), "零件类型不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getPartNo(), "零件号不能为空");
|
|
|
|
|
ValidatorBean.checkNotNull(item.getFrontBack(), "正面反面不能为空");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DdlPackBean packBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode());
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getDefectTypeCode(), "defectTypeCode", packBean);
|
|
|
|
|
DdlPreparedPack.getStringLikerPack(item.getDefectLocation(), "defectLocation", packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartTypeCode(), "partTypeCode", packBean);
|
|
|
|
|
DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", packBean);
|
|
|
|
|
DdlPreparedPack.getNumEqualPack(item.getFrontBack(), "frontBack", packBean);
|
|
|
|
|
DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", packBean);
|
|
|
|
|
boolean flg = baseRDao.isExitByHql(packBean);
|
|
|
|
|
if (!flg) {
|
|
|
|
|
throw ImppExceptionBuilder.newInstance()
|
|
|
|
|
.setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode())
|
|
|
|
|
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode())
|
|
|
|
|
.setErrorDetail("【%s】缺陷类型【%s】缺陷位置代码【%s】零件类型【%s】零件号【%s】正面反面已经存在,请检查数据", item.getDefectTypeCode(), item.getDefectLocation(),
|
|
|
|
|
item.getPartTypeCode(), item.getPartNo(), item.getFrontBack())
|
|
|
|
|
.build();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected void setPackQueryBean(MesDefectWarnConfig bean, DdlPackBean packBean) {
|
|
|
|
|