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 23e022c..8d323e4 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 @@ -17,10 +17,7 @@ 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.*; -import cn.estsh.i3plus.pojo.mes.bean.shipping.MesLoadingList; -import cn.estsh.i3plus.pojo.mes.bean.shipping.MesLoadingListDetail; -import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagement; -import cn.estsh.i3plus.pojo.mes.bean.shipping.MesShippingOrderManagementDetail; +import cn.estsh.i3plus.pojo.mes.bean.shipping.*; import cn.estsh.i3plus.pojo.mes.model.MesEquipVariableRwResult; import cn.estsh.i3plus.pojo.mes.repository.*; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; @@ -117,6 +114,9 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService @Autowired private IMesProduceSnExtService mesProduceSnExtService; + @Autowired + private MesShippingQueueRepository shippingQueueRDao; + @Override public MesSortShippingCheckModel doShippingOrderNoQuery(MesShippingOrderManagement shippingOrderManagement) { //校验发运单 @@ -573,6 +573,8 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService workOrderNoList.add(detail.getVisualOrderNo()); //更新应急件库位管理库存出库 mesEmergencyLocationService.doShippingStockOutOnline(organizeCode, detail.getVisualOrderNo(), userInfo, true); + // 保存到发运队列,后续发运单的条码会拼接,而保存到发运队列中的为拼接前的数据,因此要在拼接前调用。 + saveShippingQueue(orderManagement, detail, userInfo); //条码格式(扫描目视单,扫描条码) detail.setBarcode(new StringJoiner(MesPcnExtConstWords.COMMA).add(detail.getVisualOrderNo()).add(detail.getBarcode()).toString()); } @@ -767,4 +769,24 @@ public class MesSortShippingCheckService implements IMesSortShippingCheckService } } } + + private void saveShippingQueue(MesShippingOrderManagement orderManagement, MesShippingOrderManagementDetail detail, String userInfo) { + if (StringUtil.isEmpty(detail.getVin())) { + MesPcnException.throwMesBusiException("发运单【%s】零件号【%s】vin号为空,请检查数据", orderManagement.getShippingCode(), detail.getPartNo()); + } + + MesShippingQueue mesShippingQueue = new MesShippingQueue(); + mesShippingQueue.setOrganizeCode(orderManagement.getOrganizeCode()); + mesShippingQueue.setShippingCode(orderManagement.getShippingCode()); + mesShippingQueue.setShippingGroupCode(orderManagement.getShippingGroupCode()); + mesShippingQueue.setShippingType(orderManagement.getShippingType()); + mesShippingQueue.setWorkOrderNo(detail.getVisualOrderNo()); + mesShippingQueue.setCustSn(detail.getBarcode()); + mesShippingQueue.setPartNo(detail.getPartNo()); + mesShippingQueue.setPartName(detail.getPartName()); + mesShippingQueue.setVin(detail.getVin()); + mesShippingQueue.setQueueStatus(1); + ConvertBean.serviceModelInitialize(mesShippingQueue, userInfo); + shippingQueueRDao.insert(mesShippingQueue); + } }