From 668137140bca5894b8a98e08414109d8f8cca070 Mon Sep 17 00:00:00 2001 From: zhoushihao <zsh19950802@163.com> Date: 星期二, 15 十月 2024 15:26:02 +0800 Subject: [PATCH] 1、原片仓储逻辑完成90% 2、liquibase配置更改 --- hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java | 52 +++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 43 insertions(+), 9 deletions(-) diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java index 6040484..66e13c4 100644 --- a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java +++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java @@ -136,6 +136,10 @@ } //褰撳墠灏哄闇�瑕佷笂鐗囩殑鏁伴噺 List<UpPattenUsageVO> pattenUsageList = upPattenUsageMapper.queryRawGlassByEngineeringId(engineering.getEngineerId()); + if (CollectionUtils.isEmpty(pattenUsageList)) { + log.info("姝e湪鎵ц鐨勫伐绋嬪師鐗囨棤鍙笂鐗囩殑鍘熺墖淇℃伅"); + return; + } Map<String, List<UpPattenUsageVO>> upListMap = pattenUsageList.stream() .collect(Collectors.groupingBy(UpPattenUsageVO::getGroupNumber)); //todo:鎸夌収宸ョ▼鍙锋寜鐓у伐绋嬩笅鏈畬鎴愮殑灏哄鐨勯『搴忥紝褰�1鍙蜂笂鐗囦綅鏋跺瓙涓婄殑褰撳墠灏哄鐜荤拑灏戜簬3鐗囦笖2鍙蜂笂鐗囦綅鏃犲師鐗囩幓鐠冿紝鍒欏皢鍘昏皟搴︾幓鐠冨幓2鍙蜂笂鐗囦綅锛� @@ -145,6 +149,18 @@ .eq(RawGlassStorageDetails::getState, Const.GLASS_STATE_IN).in(RawGlassStorageDetails::getSlotId, loadGlassStation)); if (CollectionUtils.isEmpty(rawGlassDetailsList)) { //琛ㄧず1涓婄墖浣嶆病鏈夊師鐗囷紝鐩存帴鎵惧師鐗囨斁鍏ュ搴旂殑涓婄墖浣� + List<UpPattenUsageVO> upPattenUsage01VOS = upListMap.get("1"); + UpPattenUsageVO usageVO = upPattenUsage01VOS.get(0); + RawGlassStorageDetails details = rawGlassStorageDetailsService.getOne(new LambdaQueryWrapper<RawGlassStorageDetails>() + .eq(RawGlassStorageDetails::getFilmsId, usageVO.getFilmsId()) + .eq(RawGlassStorageDetails::getPatternWidth, usageVO.getWidth()) + .eq(RawGlassStorageDetails::getPatternHeight, usageVO.getHeight()) + .eq(RawGlassStorageDetails::getPatternThickness, usageVO.getThickness()) + .gt(RawGlassStorageDetails::getRemainQuantity, upPattenUsage01VOS.size()) + .orderByAsc(RawGlassStorageDetails::getRemainQuantity) + .last("limit 1") + ); + generateTask(details.getSlotId(), 1, details.getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_DISPATCH); //缁撴潫璋冨害浠诲姟 } Map<Integer, List<RawGlassStorageDetails>> listMap = rawGlassDetailsList.stream().collect(Collectors.groupingBy(RawGlassStorageDetails::getSlotId)); @@ -156,23 +172,41 @@ if (null == rawGlass03Details) { if (null == rawGlass04Details) { //琛ㄧず1涓婄墖浣嶆病鏈夊師鐗囷紝鐩存帴鎵惧師鐗囨斁鍏ュ搴旂殑涓婄墖浣� + List<UpPattenUsageVO> upPattenUsage01VOS = upListMap.get("1"); + UpPattenUsageVO usageVO = upPattenUsage01VOS.get(0); + RawGlassStorageDetails details = rawGlassStorageDetailsService.getOne(new LambdaQueryWrapper<RawGlassStorageDetails>() + .eq(RawGlassStorageDetails::getFilmsId, usageVO.getFilmsId()) + .eq(RawGlassStorageDetails::getPatternWidth, usageVO.getWidth()) + .eq(RawGlassStorageDetails::getPatternHeight, usageVO.getHeight()) + .eq(RawGlassStorageDetails::getPatternThickness, usageVO.getThickness()) + .gt(RawGlassStorageDetails::getRemainQuantity, upPattenUsage01VOS.size()) + .orderByAsc(RawGlassStorageDetails::getRemainQuantity) + .last("limit 1") + ); + generateTask(details.getSlotId(), 1, details.getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_DISPATCH); //缁撴潫璋冨害浠诲姟 } else { //灏�2鍙蜂笂鐗囦綅鐨勫師鐗囨斁鍏�1鍙蜂笂鐗囦綅 + generateTask(2, 1, rawGlass04Details.getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_DISPATCH); //缁撴潫璋冨害浠诲姟 } } else { - //鍘熺墖鍓╀綑鏁伴噺 - Integer quantity = rawGlass03Details.getRemainQuantity(); - List<UpPattenUsageVO> upPattenUsage01VOS = upListMap.get("1"); if (null == rawGlass04Details) { - //todo:鍒ゆ柇2鍙蜂笂鐗囦綅闇�瑕佺殑鍘熺墖淇℃伅 - if (quantity < upPattenUsage01VOS.size()) { - //todo:缁х画涓婁竴鍙蜂笂鐗囦綅褰撳墠鐨勫昂瀵� - } else { - //todo:鍒囨崲灏哄锛屼笂鍚庣画缁勭殑灏哄 - List<UpPattenUsageVO> upPattenUsage02VOS = upListMap.get("2"); + List<UpPattenUsageVO> upPattenUsage01VOS = upListMap.get("2"); + if (CollectionUtils.isEmpty(upPattenUsage01VOS)) { + return; } + UpPattenUsageVO usageVO = upPattenUsage01VOS.get(0); + RawGlassStorageDetails details = rawGlassStorageDetailsService.getOne(new LambdaQueryWrapper<RawGlassStorageDetails>() + .eq(RawGlassStorageDetails::getFilmsId, usageVO.getFilmsId()) + .eq(RawGlassStorageDetails::getPatternWidth, usageVO.getWidth()) + .eq(RawGlassStorageDetails::getPatternHeight, usageVO.getHeight()) + .eq(RawGlassStorageDetails::getPatternThickness, usageVO.getThickness()) + .gt(RawGlassStorageDetails::getRemainQuantity, upPattenUsage01VOS.size()) + .orderByAsc(RawGlassStorageDetails::getRemainQuantity) + .last("limit 1") + ); + generateTask(details.getSlotId(), 2, details.getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_DISPATCH); } } -- Gitblit v1.8.0