From 9783363dba44f8606e88d2f28349759e3914ea27 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期三, 16 十月 2024 09:25:57 +0800
Subject: [PATCH] 1、版本部分整合
---
hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java | 56 +++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 45 insertions(+), 11 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..54d2030 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
@@ -2,11 +2,11 @@
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.kangaroohy.milo.model.ReadWriteEntity;
+import com.kangaroohy.milo.service.MiloService;
import com.mes.common.config.Const;
import com.mes.engineering.entity.Engineering;
import com.mes.engineering.mapper.EngineeringMapper;
-import com.mes.milo.model.ReadWriteEntity;
-import com.mes.milo.service.MiloService;
import com.mes.rawglassdetails.entity.RawGlassStorageDetails;
import com.mes.rawglassdetails.service.RawGlassStorageDetailsService;
import com.mes.rawglassstation.entity.RawGlassStorageStation;
@@ -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