diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesPackingPartTypeService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesPackingPartTypeService.java new file mode 100644 index 0000000..c0f2ea5 --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesPackingPartTypeService.java @@ -0,0 +1,7 @@ +package cn.estsh.i3plus.ext.mes.api.base; + +import cn.estsh.i3plus.pojo.mes.bean.MesPackingPartType; + +public interface IMesPackingPartTypeService extends IBaseMesService { + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesPackingPartTypeController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesPackingPartTypeController.java new file mode 100644 index 0000000..598dec7 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesPackingPartTypeController.java @@ -0,0 +1,13 @@ +package cn.estsh.i3plus.ext.mes.apiservice.controller.base; + +import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant; +import cn.estsh.i3plus.pojo.mes.bean.MesPackingPartType; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@Api("成品包装类型零件信息") +@RestController +@RequestMapping(MesCommonConstant.MES_YANFEN + "/mesPackingPartType") +public class MesPackingPartTypeController extends BaseMesController{ +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingPartTypeService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingPartTypeService.java new file mode 100644 index 0000000..fda1987 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingPartTypeService.java @@ -0,0 +1,71 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; + +import cn.estsh.i3plus.ext.mes.api.base.IMesPackingPartTypeService; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; +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.MesPackingPartType; +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; + +import java.util.List; + +@Service +@Slf4j +public class MesPackingPartTypeService extends BaseMesService implements IMesPackingPartTypeService { + + @Override + protected void setPackQueryBean(MesPackingPartType bean, DdlPackBean packBean) { + DdlPreparedPack.getStringLikerPack(bean.getPartNo(), MesExtConstWords.PART_NO, packBean); + DdlPreparedPack.getStringLikerPack(bean.getPartName(), MesExtConstWords.PART_NAME, packBean); + } + + @Override + protected void onInsertBean(MesPackingPartType item) { + ValidatorBean.checkNotNull(item.getPartNo(), "零件代码不能为空"); + ValidatorBean.checkNotNull(item.getPartName(), "零件名称不能为空"); + + DdlPackBean packBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getPartNo(), MesExtConstWords.PART_NO, packBean); + Boolean flg = baseRDao.isExitByHql(packBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("零件代码[%s]信息已经存在,请检查数据", item.getPartNo()) + .build(); + } + } + + @Override + protected void onUpdateBean(MesPackingPartType item) { + ValidatorBean.checkNotNull(item.getId(), "包装代码不能为空"); + ValidatorBean.checkNotNull(item.getPartNo(), "零件代码不能为空"); + ValidatorBean.checkNotNull(item.getPartName(), "零件名称不能为空"); + + DdlPackBean packBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getPartNo(), MesExtConstWords.PART_NO, packBean); + DdlPreparedPack.getNumNOEqualPack(item.getId(), MesExtConstWords.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]信息已经存在,请检查数据", item.getPartNo()) + .build(); + } + } + + @Override + public List validateReturnImport(List beanList) { + for (MesPackingPartType item : beanList) { + onInsertBean(item); + } + return beanList; + } + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleDetailService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleDetailService.java index 2a0f5f5..51f121c 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleDetailService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleDetailService.java @@ -2,12 +2,19 @@ package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; import cn.estsh.i3plus.ext.mes.api.base.IMesPackingRuleDetailService; import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; +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.MesPackingRuleDetail; +import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; +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; +import java.util.List; + @Service @Slf4j public class MesPackingRuleDetailService extends BaseMesService implements IMesPackingRuleDetailService { @@ -19,4 +26,52 @@ public class MesPackingRuleDetailService extends BaseMesService validateReturnImport(List beanList) { + for (MesPackingRuleDetail item : beanList) { + onInsertBean(item); + } + return beanList; + } + } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleService.java index 74cacf4..f2fe6d7 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPackingRuleService.java @@ -2,11 +2,18 @@ package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; import cn.estsh.i3plus.ext.mes.api.base.IMesPackingRuleService; import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; +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.MesPackingRule; +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; +import org.springframework.util.StringUtils; + +import java.util.List; @Service @Slf4j @@ -23,4 +30,50 @@ public class MesPackingRuleService extends BaseMesService implem DdlPreparedPack.getStringLikerPack(bean.getPrinter(), MesExtConstWords.PRINTER, packBean); } + @Override + protected void onInsertBean(MesPackingRule item) { + ValidatorBean.checkNotNull(item.getPackageCode(), "包装代码不能为空"); + ValidatorBean.checkNotNull(item.getGenerateType(), "统计方式不能为空"); + + DdlPackBean packBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getPackageCode(), MesExtConstWords.PACKAGE_CODE, packBean); + Boolean flg = baseRDao.isExitByHql(packBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("包装代码[%s]信息已经存在,请检查数据", item.getPackageCode()) + .build(); + } + if (StringUtils.isEmpty(item.getDefaultFlag()) || item.getDefaultFlag().compareTo(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()) != 0) item.setDefaultFlag(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + } + + @Override + protected void onUpdateBean(MesPackingRule item) { + ValidatorBean.checkNotNull(item.getId(), "包装代码不能为空"); + ValidatorBean.checkNotNull(item.getPackageCode(), "包装代码不能为空"); + ValidatorBean.checkNotNull(item.getGenerateType(), "统计方式不能为空"); + + DdlPackBean packBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getPackageCode(), MesExtConstWords.PACKAGE_CODE, packBean); + DdlPreparedPack.getNumNOEqualPack(item.getId(), MesExtConstWords.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]信息已经存在,请检查数据", item.getPackageCode()) + .build(); + } + if (StringUtils.isEmpty(item.getDefaultFlag()) || item.getDefaultFlag().compareTo(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()) != 0) item.setDefaultFlag(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue()); + } + + @Override + public List validateReturnImport(List beanList) { + for (MesPackingRule item : beanList) { + onInsertBean(item); + } + return beanList; + } + } diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java index de03ae8..ee3d8e5 100644 --- a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/util/MesExtConstWords.java @@ -246,6 +246,8 @@ public class MesExtConstWords { public static final String PUSH_SOURCE_CODE = "pushSourceCode"; //推送工位类型 public static final String PUSH_TYPE = "pushType"; + //零件类型名称 + public static final String PART_TYPE_NAME = "partTypeName"; //时间[开始/结束]条件 public static final String START_TIME_START = "startTimeStart";