From dcff64a03d48a104327f9d42d3a174ba7d9e8218 Mon Sep 17 00:00:00 2001 From: gsz Date: Wed, 18 Sep 2024 10:35:44 +0800 Subject: [PATCH] =?UTF-8?q?43112=20MES:PC=E6=8B=89=E5=8A=A8=E5=8D=95?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E9=97=AE=E9=A2=98=206.=E5=90=8C=E4=B8=80?= =?UTF-8?q?=E6=8B=89=E5=8A=A8=E7=BB=84-=E6=A0=B9=E6=8D=AE=E5=B7=A5?= =?UTF-8?q?=E4=BD=8D=E4=BB=A3=E7=A0=81=EF=BC=86=E9=9B=B6=E4=BB=B6=E5=8F=B7?= =?UTF-8?q?=E5=81=9A=E5=94=AF=E4=B8=80=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/base/MesPartPullDetailService.java | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartPullDetailService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartPullDetailService.java index 73d4df1..db94ac6 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartPullDetailService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartPullDetailService.java @@ -5,6 +5,7 @@ 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.base.util.StringUtil; import cn.estsh.i3plus.pojo.mes.bean.MesPartPullDetail; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ValidatorBean; @@ -16,7 +17,51 @@ import java.util.List; @Service @Slf4j public class MesPartPullDetailService extends BaseMesService implements IMesPartPullDetailService { + @Override + protected void onInsertBean(MesPartPullDetail item) { + // 数据校验 + ValidatorBean.checkNotNull(item.getOrganizeCode(), "工厂号不能为空"); + //43112 MES:PC拉动单页面问题 6.同一拉动组-根据工位代码&零件号做唯一校验 + if (!StringUtil.isEmpty(item.getWorkCellCode())&&!StringUtil.isEmpty(item.getPartNo())){ + DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getPullCode(), "pullCode", partPackBean); + DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", partPackBean); + DdlPreparedPack.getStringEqualPack(item.getWorkCellCode(), "workCellCode", partPackBean); + boolean flg = baseRDao.isExitByHql(partPackBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("拉动组【%s】零件号【%s】工位【%s】已经存在,请检查数据", + item.getPullCode(), item.getPartNo(), item.getWorkCellCode()) + .build(); + } + } + } + @Override + protected void onUpdateBean(MesPartPullDetail item) { + // 数据校验 + ValidatorBean.checkNotNull(item.getOrganizeCode(), "工厂号不能为空"); +// ValidatorBean.checkNotNull(item.getPartNo(), "零件号不能为空"); + + //同一拉动组-根据工位代码&零件号做唯一校验 + if (!StringUtil.isEmpty(item.getWorkCellCode())&&!StringUtil.isEmpty(item.getPartNo())){ + DdlPackBean partPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(item.getPullCode(), "pullCode", partPackBean); + DdlPreparedPack.getStringEqualPack(item.getPartNo(), "partNo", partPackBean); + DdlPreparedPack.getStringEqualPack(item.getWorkCellCode(), "workCellCode", partPackBean); + boolean flg = baseRDao.isExitByHql(partPackBean); + if (flg) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.MES.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("拉动组【%s】零件号【%s】工位【%s】已经存在,请检查数据", + item.getPullCode(), item.getPartNo(), item.getWorkCellCode()) + .build(); + } + } + } protected void setPackQueryBean(MesPartPullDetail bean, DdlPackBean packBean) { DdlPreparedPack.getStringLikerPack(bean.getPullCode(), "pullCode", packBean); DdlPreparedPack.getStringLikerPack(bean.getWorkCellCode(), "workCellCode", packBean);