From 14e5f7ef2f3fa41661b483e1d4a44ee48afd13df Mon Sep 17 00:00:00 2001 From: "jhforever.wang@estsh.com" Date: Fri, 11 Apr 2025 00:45:03 +0800 Subject: [PATCH] =?UTF-8?q?l=E4=B8=B4=E6=97=B6=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ext/mes/pcn/api/busi/IMesWorkOrderExtService.java | 3 +++ .../serviceimpl/busi/MesWorkOrderExtService.java | 18 ++++++++++++++++++ ...roductionDataSaveBeforeControlOrderStepService.java | 6 ++++++ .../ext/mes/pcn/pojo/util/MesPcnExtConstWords.java | 2 ++ 4 files changed, 29 insertions(+) diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesWorkOrderExtService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesWorkOrderExtService.java index 2b4dd9e..a1bbd3a 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesWorkOrderExtService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesWorkOrderExtService.java @@ -63,4 +63,7 @@ public interface IMesWorkOrderExtService { @ApiOperation(value = "根据工单更新工单状态") void updateMesWorkOrderOrderStatusShippingByWorkOrderNo(String organizeCode, List workOrderNoList,String userName); + @ApiOperation(value = "控制工单数量查询") + Map getControlOrderQtyMap(String organizeCode, String workCenterCode, String startTime, String endTime, List partNoList); + } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderExtService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderExtService.java index 15d0e4e..5f996bd 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderExtService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderExtService.java @@ -267,4 +267,22 @@ public class MesWorkOrderExtService implements IMesWorkOrderExtService { return produceSn; } + @Override + public Map getControlOrderQtyMap(String organizeCode, String workCenterCode, String startTime, String endTime, List partNoList) { + if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workCenterCode) || + StringUtils.isEmpty(startTime) || StringUtils.isEmpty(endTime) || CollectionUtils.isEmpty(partNoList)) return null; + DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.timeBuilder(startTime, endTime, MesPcnExtConstWords.PLAN_START_TIME, packBean, false); + DdlPreparedPack.getStringEqualPack(workCenterCode, MesPcnExtConstWords.WORK_CENTER_CODE, packBean); + if (partNoList.size() == 1) DdlPreparedPack.getStringEqualPack(partNoList.get(0), MesPcnExtConstWords.PART_NO, packBean); + else DdlPreparedPack.getInPackList(partNoList, MesPcnExtConstWords.PART_NO, packBean); + List workOrderList = workOrderRepository.findByHqlWhere(packBean); + workOrderList = CollectionUtils.isEmpty(workOrderList) ? null : + workOrderList.stream().filter(o -> (null != o + && o.getWorkOrderStatus().compareTo(MesExtEnumUtil.ORDER_STATUS.CREATE.getValue()) != 0 + && !o.getOrderFlag().equals(MesExtEnumUtil.ORDER_TYPE_IDENTIFICATION.P.getValue()))).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(workOrderList)) return null; + + } + } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionDataSaveBeforeControlOrderStepService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionDataSaveBeforeControlOrderStepService.java index 683def7..9a4e5c7 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionDataSaveBeforeControlOrderStepService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/step/MesProductionDataSaveBeforeControlOrderStepService.java @@ -3,6 +3,7 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.step; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionDispatchContextStepService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionProcessContextStepService; import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesProductionRecordService; +import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesWorkOrderExtService; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProdRuleContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionProcessContext; import cn.estsh.i3plus.ext.mes.pcn.pojo.context.MesProductionPsInContext; @@ -13,6 +14,7 @@ import cn.estsh.i3plus.mes.pcn.serviceimpl.fsm.IStepService; import cn.estsh.i3plus.mes.pcn.util.StringUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.mes.bean.MesProductionRecord; +import cn.estsh.i3plus.pojo.mes.bean.MesWorkOrder; import cn.estsh.i3plus.pojo.mes.model.StationRequestBean; import cn.estsh.i3plus.pojo.mes.model.StationResultBean; import cn.estsh.i3plus.pojo.mes.model.StepResult; @@ -48,6 +50,9 @@ public class MesProductionDataSaveBeforeControlOrderStepService extends BaseStep @Autowired private IMesProductionRecordService productionRecordService; + @Autowired + private IMesWorkOrderExtService workOrderExtService; + @Override public StepResult execute(StationRequestBean reqBean) { @@ -82,6 +87,7 @@ public class MesProductionDataSaveBeforeControlOrderStepService extends BaseStep if (CollectionUtils.isEmpty(reportPsMap)) break Loop; + List workOrderList = workOrderExtService.getWorkOrderList() diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java index 9db31ee..29d55e0 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java @@ -381,6 +381,8 @@ public class MesPcnExtConstWords { public static final String PAGE_SIZE = "pageSize"; //枚举代码 public static final String ENUM_CODE = "enumCode"; + //计划开始时间 + public static final String PLAN_START_TIME = "planStartTime"; //BaseBean字段不包含工厂, 用于对象复制剔除属性BeanUtils.copyProperties(Object source, Object target, String... ignoreProperties)