diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java index 6ab9f3c..75b7ffc 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesShiftService.java @@ -1,10 +1,13 @@ package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; import cn.estsh.i3plus.ext.mes.api.base.IMesShiftService; +import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; 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.MesPart; import cn.estsh.i3plus.pojo.mes.bean.MesShift; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ValidatorBean; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -20,4 +23,54 @@ public class MesShiftService extends BaseMesService implements IMesShi DdlPreparedPack.getStringLikerPack(bean.getShiftName(), "shiftName", packBean); } + + protected void onInsertBean(MesShift item) { + // 数据校验 + ValidatorBean.checkNotNull(item.getAreaCode(), "区域不能为空"); + ValidatorBean.checkNotNull(item.getShiftCode(), "班次代码不能为空"); + ValidatorBean.checkNotNull(item.getShiftName(), "班次名称不能为空"); + ValidatorBean.checkNotNull(item.getStartTime(), "开始时间不能为空"); + ValidatorBean.checkNotNull(item.getEndTime(), "结束时间不能为空"); + ValidatorBean.checkNotNull(item.getWorkerQty(), "作业人数不能为空"); + + DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getAreaCode(), "areaCode", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getShiftCode(), "shiftCode", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getWorkCenterCode(), "workCenterCode", cellBinPackBean); + boolean flg = baseRDao.isExitByHql(cellBinPackBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】区域【%s】产线【%s】班次代码已经存在,请检查数据", item.getAreaCode(), item.getWorkCenterCode(), item.getShiftCode()) + .build(); + } + } + + + protected void onUpdateBean(MesShift item) { + + // 数据校验 + ValidatorBean.checkNotNull(item.getAreaCode(), "区域不能为空"); + ValidatorBean.checkNotNull(item.getShiftCode(), "班次代码不能为空"); + ValidatorBean.checkNotNull(item.getShiftName(), "班次名称不能为空"); + ValidatorBean.checkNotNull(item.getStartTime(), "开始时间不能为空"); + ValidatorBean.checkNotNull(item.getEndTime(), "结束时间不能为空"); + ValidatorBean.checkNotNull(item.getWorkerQty(), "作业人数不能为空"); + + DdlPackBean cellBinPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getAreaCode(), "areaCode", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getShiftCode(), "shiftCode", cellBinPackBean); + DdlPreparedPack.getStringEqualPack(item.getWorkCenterCode(), "workCenterCode", cellBinPackBean); + DdlPreparedPack.getNumNOEqualPack(item.getId(), "id", cellBinPackBean); + boolean flg = baseRDao.isExitByHql(cellBinPackBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("【%s】区域【%s】产线【%s】班次代码已经存在,请检查数据", item.getAreaCode(), item.getWorkCenterCode(), item.getShiftCode()) + .build(); + } + } + }