From fceafc19ee78894e3e6d04dc237c70aeb4dfb7fe Mon Sep 17 00:00:00 2001 From: administrator Date: Wed, 3 Jul 2024 19:52:41 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=A7=E7=BA=BF=E4=B8=8E?= =?UTF-8?q?=E5=B7=A5=E4=BD=8D=E7=9A=84=E5=85=B3=E7=B3=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/base/IMesWorkCenterPartRelationService.java | 14 ++++++++++++++ .../base/MesWorkCenterPartRelationController.java | 19 +++++++++++++++++++ .../base/MesWorkCenterPartRelationService.java | 20 ++++++++++++++++++++ .../serviceimpl/base/MesWorkOrderService.java | 17 +++++++++++++++++ 4 files changed, 70 insertions(+) create mode 100644 modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesWorkCenterPartRelationService.java create mode 100644 modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesWorkCenterPartRelationController.java create mode 100644 modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCenterPartRelationService.java diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesWorkCenterPartRelationService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesWorkCenterPartRelationService.java new file mode 100644 index 0000000..25cdc61 --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/base/IMesWorkCenterPartRelationService.java @@ -0,0 +1,14 @@ +package cn.estsh.i3plus.ext.mes.api.base; + +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentVariableCfg; +import cn.estsh.i3plus.pojo.mes.bean.MesWorkCenterPartRelation; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2024/7/3 19:09 + * @Modify: + **/ +public interface IMesWorkCenterPartRelationService extends IBaseMesService{ +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesWorkCenterPartRelationController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesWorkCenterPartRelationController.java new file mode 100644 index 0000000..557d167 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/base/MesWorkCenterPartRelationController.java @@ -0,0 +1,19 @@ +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.MesWorkCenter; +import cn.estsh.i3plus.pojo.mes.bean.MesWorkCenterPartRelation; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @Description : 产线与零件关系 + * @Reference : + * @Author : Castle + * @CreateDate : 2024/7/3 19:08 + * @Modify: + **/ +@RestController +@RequestMapping(MesCommonConstant.MES_YANFEN + "/MesWorkCenterPartRelation") +public class MesWorkCenterPartRelationController extends BaseMesController { +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCenterPartRelationService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCenterPartRelationService.java new file mode 100644 index 0000000..20ded59 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkCenterPartRelationService.java @@ -0,0 +1,20 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base; + +import cn.estsh.i3plus.ext.mes.api.base.IMesWorkCellService; +import cn.estsh.i3plus.ext.mes.api.base.IMesWorkCenterPartRelationService; +import cn.estsh.i3plus.pojo.mes.bean.MesWorkCell; +import cn.estsh.i3plus.pojo.mes.bean.MesWorkCenterPartRelation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +/** + * @Description : + * @Reference : + * @Author : Castle + * @CreateDate : 2024/7/3 19:10 + * @Modify: + **/ +@Service +@Slf4j +public class MesWorkCenterPartRelationService extends BaseMesService implements IMesWorkCenterPartRelationService { +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java index e8505a5..646a46a 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java @@ -106,8 +106,16 @@ public class MesWorkOrderService extends BaseMesService implements private MesBomRepository mesBomRDao; @Autowired private MesPartRepository mesPartRDao; + + @Autowired + private MesWorkCenterPartRelationRepository partRelationRao; @Override public MesWorkOrder insert(MesWorkOrder bean) { + //校验产线与工位的关系 + boolean relationResult = checkWorkCenterPartRelation(bean.getWorkCenterCode(), bean.getPartNo()); + if (!relationResult){ + MesException.throwMesBusiException(String.format("工单产线【%s】与工单零件【%s】没有维护产线零件关系",bean.getWorkCenterCode(),bean.getPartNo())); + } //获取相同类型 相同标识 生产序号最大值的 DdlPackBean orderPackBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode()); DdlPreparedPack.getNumEqualPack(bean.getWorkOrderStatus(), "workOrderStatus", orderPackBean); @@ -1509,4 +1517,13 @@ public class MesWorkOrderService extends BaseMesService implements return mesBoms.stream().collect(Collectors.groupingBy(MesBom::getBomCode)).get(next.getBomCode()); } + + private boolean checkWorkCenterPartRelation(String workCenterCode,String partNo){ + DdlPackBean partRelationPackBean = DdlPackBean.getDdlPackBean(AuthUtil.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(workCenterCode,"workCenterCode", partRelationPackBean); + DdlPreparedPack.getStringEqualPack(partNo, "partNo", partRelationPackBean); + int count = partRelationRao.findByHqlWhereCount(partRelationPackBean); + return count > 0; + } + }