From dc7e0180c54cb5576030585983502cb256eeee14 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 20 六月 2024 22:05:39 +0800
Subject: [PATCH] 1、大理片笼进出片任务逻辑初次提交:单元测试已完成,待优化 2、删除重复无用的钢化小片表、玻璃小片表 3、删除玻璃小片mapper层接口多继承无用父类 4、调整按照工程号获取优化详情表内的宽高

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java |   42 +++++++++++++++++++++++++++++-------------
 1 files changed, 29 insertions(+), 13 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
index f909c54..d85c477 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java
@@ -7,6 +7,7 @@
 import com.mes.bigstorage.entity.BigStorageCage;
 import com.mes.bigstorage.entity.BigStorageCageDetails;
 import com.mes.bigstorage.entity.BigStorageDTO;
+import com.mes.bigstorage.entity.dto.SlotSequenceDTO;
 import com.mes.bigstorage.entity.dto.TemperingLayoutDTO;
 import com.mes.bigstorage.mapper.BigStorageCageDetailsMapper;
 import com.mes.bigstorage.service.BigStorageCageDetailsService;
@@ -21,6 +22,7 @@
 import com.mes.temperingglass.entity.TemperingGlassInfo;
 import com.mes.temperingglass.mapper.TemperingGlassInfoMapper;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -49,6 +51,9 @@
     private BigStorageCageService bigStorageCageService;
     @Resource
     private GlassInfoMapper glassInfoMapper;
+
+    @Value("${mes.minCount}")
+    private int minCount;
 
     /**
      * 鏌ヨ杩�/鍑虹墖浠诲姟
@@ -215,24 +220,26 @@
 
     @Override
     public BigStorageDTO queryTargetSlotByTempering(GlassInfo glassInfo) {
-//        MPJLambdaWrapper<BigStorageDTO> wrapper = new MPJLambdaWrapper<>(BigStorageCage.class)
-//                .selectAll(BigStorageDTO.class)
-//                .leftJoin(BigStorageCageDetails.class, BigStorageCageDetails::getSlot, BigStorageCage::getSlot)
-//                .eq(BigStorageCageDetails::getTemperingLayoutId, glassInfo.getTemperingLayoutId())
-//                .eq(BigStorageCageDetails::getTemperingFeedSequence, glassInfo.getTemperingFeedSequence() + 1)
-//                .last("limit 1");
         BigStorageDTO bigStorageDTO = null;
         MPJLambdaWrapper<BigStorageCage> wrapper = new MPJLambdaWrapper<>(BigStorageCage.class)
-                .selectAsClass(BigStorageCage.class, BigStorageDTO.class)
+                .selectAll(BigStorageCage.class)
                 .leftJoin(BigStorageCageDetails.class, BigStorageCageDetails::getSlot, BigStorageCage::getSlot)
                 .eq(BigStorageCageDetails::getTemperingLayoutId, glassInfo.getTemperingLayoutId())
-                .eq(BigStorageCageDetails::getTemperingFeedSequence, glassInfo.getTemperingFeedSequence() + 1)
+                .gt(BigStorageCage::getRemainWidth, glassInfo.getWidth())
                 .last("limit 1");
-        bigStorageDTO = bigStorageCageService.selectJoinOne(BigStorageDTO.class, wrapper);
-        if (null != bigStorageDTO) {
+        if (glassInfo.getTemperingLayoutId() == 0) {
+            wrapper.eq(BigStorageCageDetails::getWidth, glassInfo.getWidth()).eq(BigStorageCageDetails::getHeight, glassInfo.getHeight());
+        } else {
+            wrapper.eq(BigStorageCageDetails::getTemperingFeedSequence, glassInfo.getTemperingFeedSequence() + 1);
+        }
+        BigStorageCage bigStorageCage = bigStorageCageService.selectJoinOne(BigStorageCage.class, wrapper);
+        if (null != bigStorageCage) {
+            bigStorageDTO = new BigStorageDTO();
+            bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
+            bigStorageDTO.setSlot(bigStorageCage.getSlot());
             return bigStorageDTO;
         }
-        BigStorageCage bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
+        bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
                 .eq(BigStorageCage::getRemainWidth, Const.BIG_STORAGE_WIDTH)
                 .inSql(BigStorageCage::getDeviceId,
                         "select distinct device_id from big_storage_cage_details where tempering_layout_id = " + glassInfo.getTemperingLayoutId())
@@ -251,12 +258,21 @@
         bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
         bigStorageDTO.setSlot(bigStorageCage.getSlot());
         return bigStorageDTO;
-
-
     }
 
     @Override
     public TemperingLayoutDTO temperingIsAll() {
         return baseMapper.temperingIsAll();
     }
+
+
+    @Override
+    public TemperingLayoutDTO queryTemperingOccupySlot() {
+        return baseMapper.queryTemperingOccupySlot(minCount);
+    }
+
+    @Override
+    public List<SlotSequenceDTO> queryGlassMaxAndMin(String engineerId, Integer temperingLayoutId) {
+        return baseMapper.queryGlassMaxAndMin(engineerId, temperingLayoutId);
+    }
 }

--
Gitblit v1.8.0