From 55c8b6b619796e0ac785b8d996497eb9318d13b6 Mon Sep 17 00:00:00 2001 From: jason Date: Thu, 10 Apr 2025 16:24:49 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E8=A3=85=E8=BD=A6=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=8C=89=E4=B8=8D=E5=90=8C=E5=8F=91=E8=BF=90?= =?UTF-8?q?=E7=BB=84=E8=BF=9B=E8=A1=8C=E9=A1=BA=E5=BA=8F=E5=8D=A1=E6=8E=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../busi/MesShippingLoadingCheckService.java | 28 ++++++++++++++++------ 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java index c6771f9..8048eab 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java @@ -158,18 +158,35 @@ public class MesShippingLoadingCheckService implements IMesShippingLoadingCheckS //校验发运单是否存在 checkLoadingList(model, organizeCode, loadingList); //查询零件发运组 - MesPartShippingGroup shippingGroup = getMesPartShippingGroup(organizeCode, loadingList.getPartShippingGroupCode()); - final boolean isFirstInstall = mesPartShippingGroupService.isFirstInstall(shippingGroup, loadingList); + MesPartShippingGroup loadingShippingGroup = getMesPartShippingGroup(organizeCode, loadingList.getPartShippingGroupCode()); + final boolean isFirstInstall = mesPartShippingGroupService.isFirstInstall(loadingShippingGroup, loadingList); boolean scanflg = false; for (MesLoadingListDetail loadingListDetail : model.getDetailList()) { if (loadingListDetail.getShippingCode().equals(model.getShippingCode())) { - if (Objects.equals(loadingListDetail.getTempStatus(), MesCommonConstant.TRUE_INTEGER)) { throw new ImppBusiException(String.format("【%s】此发运单已经%s,请检查数据!", model.getShippingCode(),loadingListDetail.getTempStatusVal())); } + DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getStringEqualPack(loadingListDetail.getShippingCode(),"shippingCode",packBean); + MesShippingOrderManagement orderManagement = shippingOrderManagementRepository.getByProperty(packBean); + if (orderManagement == null) { + throw new ImppBusiException(String.format("发运单【%s】信息不存在,请检查数据!", loadingListDetail.getShippingCode())); + } + //查询零件发运组 + MesPartShippingGroup shippingGroup = getMesPartShippingGroup(organizeCode, orderManagement.getShippingGroupCode()); + //校验发运单明细顺序 if(!StringUtils.isEmpty(shippingGroup.getIsEnableLoadingFailSafe()) && CommonEnumUtil.VALID == shippingGroup.getIsEnableLoadingFailSafe()){ - Optional detail = model.getDetailList().stream().filter(k -> k.getShippingCode().compareTo(loadingListDetail.getShippingCode()) < 0 && !Objects.equals(k.getTempStatus(), MesCommonConstant.TRUE_INTEGER)).findFirst(); + List shippingGroupLoading = new ArrayList<>(); + for (MesLoadingListDetail detail : model.getDetailList()) { + if (detail.getShippingId() != null) { + MesShippingOrderManagement shippingOrder = shippingOrderManagementRepository.getById(detail.getShippingId()); + if (shippingOrder != null && Objects.equals(shippingOrder.getShippingGroupCode(), shippingGroup.getShippingGroupCode())) { + shippingGroupLoading.add(detail); + } + } + } + Optional detail = shippingGroupLoading.stream().filter(k -> k.getShippingCode().compareTo(loadingListDetail.getShippingCode()) < 0 && !Objects.equals(k.getTempStatus(), MesCommonConstant.TRUE_INTEGER)).findFirst(); if(detail.isPresent()){ throw new ImppBusiException(String.format("装车单【%s】启用明细顺序防错,发运单【%s】前还有未扫描的发运单,请检查数据!", loadingList.getOrderCode(), model.getShippingCode())); } @@ -189,9 +206,6 @@ public class MesShippingLoadingCheckService implements IMesShippingLoadingCheckS //根据扫描的装车单找到是否先装车配置 //若配置为否,则查询装车单中所有的发运单是否都进行【排序发运校验】完成,若【排序发运校验】没完成,则提示,先进行排序发运校验。 if (!isFirstInstall) { - DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode); - DdlPreparedPack.getNumEqualPack(loadingListDetail.getShippingId(),"id",packBean); - MesShippingOrderManagement orderManagement = shippingOrderManagementRepository.getByProperty(packBean); if (orderManagement == null || orderManagement.getStatus() != MesExtEnumUtil.SHIPPING_ORDER_STATUS.SHIPPED.getValue()) { throw new ImppBusiException(String.format("【%s】此装车单中发运单为【%s】,还未做完【排序发运校验】,请检查数据", model.getShippingCode(), loadingListDetail.getShippingCode())); } From c5e83d7b1c855a2eb4a31e2e6c29369c3d7aa5d5 Mon Sep 17 00:00:00 2001 From: jason Date: Thu, 10 Apr 2025 17:26:10 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=90=88=E5=B9=B6bug46139=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/busi/MesShippingLoadingCheckService.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java index 8048eab..07970c4 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesShippingLoadingCheckService.java @@ -243,15 +243,25 @@ public class MesShippingLoadingCheckService implements IMesShippingLoadingCheckS //装车单明细 List vehiclesOrderDetailList = model.getDetailList(); vehiclesOrderDetailList.forEach(k -> { -// if(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue() == k.getStatus()){ -// k.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.PUBLISHED.getValue()); // todo 不改变为发运状态 -// } k.setSystemSyncStatus(CommonEnumUtil.FALSE); ConvertBean.serviceModelUpdate(k, userInfo); }); vehiclesOrderDetailRepository.saveAll(vehiclesOrderDetailList); } + + List shippingOrderList = new ArrayList<>(); + model.getDetailList().forEach(k -> { + DdlPackBean packBean = DdlPackBean.getDdlPackBean(organizeCode); + DdlPreparedPack.getNumEqualPack(k.getShippingId(),"id",packBean); + MesShippingOrderManagement orderManagement = shippingOrderManagementRepository.getByProperty(packBean); + if (orderManagement != null) { + orderManagement.setStatus(MesExtEnumUtil.SHIPPING_ORDER_STATUS.LOADING.getValue()); + shippingOrderList.add(orderManagement); + } + }); + shippingOrderManagementRepository.saveAll(shippingOrderList); + update(loadingList); } return model; From 284bed70e7740c5eb5efb1ce78aff429e7537289 Mon Sep 17 00:00:00 2001 From: jason Date: Fri, 11 Apr 2025 00:46:36 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E5=8F=91=E8=BF=90=E5=90=8E=E8=A3=85=E8=BD=A6=E6=97=A0=E8=A3=85?= =?UTF-8?q?=E8=BD=A6=E5=8D=95=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/busi/MesPartShippingGroupService.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPartShippingGroupService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPartShippingGroupService.java index 9b1704c..6b69b21 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPartShippingGroupService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesPartShippingGroupService.java @@ -115,11 +115,13 @@ public class MesPartShippingGroupService implements IMesPartShippingGroupService @Override public boolean isFirstInstall(MesPartShippingGroup shippingGroup, MesLoadingList loadingList) { - DdlPackBean packBean = DdlPackBean.getDdlPackBean(loadingList.getOrganizeCode()); - DdlPreparedPack.getStringEqualPack(loadingList.getLoadingGroupNo(), "loadingGroupNo", packBean); - MesLoadingGroup loadingGroup = loadingGroupRDao.getByProperty(packBean); - if (loadingGroup != null && loadingGroup.getIsFirstInstall() != null) { - return Objects.equals(loadingGroup.getIsFirstInstall(), CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + if (loadingList != null) { + DdlPackBean packBean = DdlPackBean.getDdlPackBean(loadingList.getOrganizeCode()); + DdlPreparedPack.getStringEqualPack(loadingList.getLoadingGroupNo(), "loadingGroupNo", packBean); + MesLoadingGroup loadingGroup = loadingGroupRDao.getByProperty(packBean); + if (loadingGroup != null && loadingGroup.getIsFirstInstall() != null) { + return Objects.equals(loadingGroup.getIsFirstInstall(), CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); + } } return Objects.equals(shippingGroup.getIsFirstInstall(), CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()); } From d89c2ab7844a280fba57d688097728f7cceae047 Mon Sep 17 00:00:00 2001 From: jason Date: Sun, 13 Apr 2025 21:39:00 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E5=8F=91=E8=BF=90=E5=90=8E=E8=A3=85=E8=BD=A6=E6=97=A0=E8=A3=85?= =?UTF-8?q?=E8=BD=A6=E5=8D=95=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/busi/MesSortShippingCheckService.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java index 3dc343f..c9f5341 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSortShippingCheckService.java @@ -663,10 +663,12 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService orderManagement.setOrderCode(loadingList.getOrderCode()); orderManagement.setLoadingListId(loadingList.getId()); } - //更新装车单明细对应的发运单状态=发运 - listDetail.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue()); - ConvertBean.serviceModelUpdate(listDetail, userInfo); - listDetailRepository.update(listDetail); + if(!Objects.isNull(listDetail)){ + //更新装车单明细对应的发运单状态=发运 + listDetail.setStatus(MesExtEnumUtil.LOADING_ORDER_DETAIL_SHIPPING_STATUS.SHIPPINGED.getValue()); + ConvertBean.serviceModelUpdate(listDetail, userInfo); + listDetailRepository.update(listDetail); + } } //发运单状态修改为校验完成 orderManagement.setSystemSyncStatus(CommonEnumUtil.FALSE);