From 55b94886f07ddd77d0b9ebbbf2d6ff8e92f682a4 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 16 七月 2024 16:59:26 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes

---
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java |   30 ++++++++++++++++++++----------
 1 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
index c61632d..c4b5266 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java
@@ -1,5 +1,6 @@
 package com.mes.edgstoragecage.service.impl;
 
+import cn.hutool.core.collection.CollectionUtil;
 import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.toolkit.JoinWrappers;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -36,15 +37,22 @@
     UpPattenUsageMapper upPattenUsageMapper;
 
     @Override
-    public EdgStorageCage selectNearestEmpty(int currentSlot) {
-        return this.selectJoinOne(EdgStorageCage.class, new MPJLambdaWrapper<EdgStorageCage>()
+    public EdgStorageCage selectNearestEmpty(int currentSlot, boolean flag) {
+        List<EdgStorageCage> emptyList = this.selectJoinList(EdgStorageCage.class, new MPJLambdaWrapper<EdgStorageCage>()
                 .selectAll(EdgStorageCage.class)
                 .leftJoin(EdgStorageCageDetails.class, on -> on
                         .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot)
                         .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN))
                 .isNull(EdgStorageCageDetails::getSlot)
-                .last("order by abs(t.slot - " + currentSlot + ")  asc limit 1")
+                .last("order by abs(t.slot - " + currentSlot + ")  asc limit 2")
         );
+        if (flag && CollectionUtil.isNotEmpty(emptyList)) {
+            return emptyList.get(0);
+        }
+        if (CollectionUtil.isEmpty(emptyList) || emptyList.size() == 1) {
+            return null;
+        }
+        return emptyList.get(0);
     }
 
     /**
@@ -100,12 +108,9 @@
                 .select(EdgStorageCageDetails::getGlassId, EdgStorageCageDetails::getWidth, EdgStorageCageDetails::getHeight, EdgStorageCageDetails::getId)
                 .leftJoin(EdgStorageCageDetails.class, on -> on
                         .eq(EdgStorageCageDetails::getDeviceId, EdgStorageCage::getDeviceId)
+                        .eq(EdgStorageCageDetails::getState, Const.GLASS_STATE_IN)
                         .eq(EdgStorageCageDetails::getSlot, EdgStorageCage::getSlot))
         );
-//        return baseMapper.selectJoinMaps(new MPJQueryWrapper<EdgStorageCage>().selectAll(EdgStorageCage.class)
-//                        .select("escd.glass_id","escd.flow_card_id","escd.width","escd.height")
-//                        .leftJoin("edg_storage_cage_details escd on t.device_id=escd.device_id and t.slot=escd.slot")
-//        );
     }
 
     /**
@@ -117,9 +122,14 @@
     @Override
     public boolean updateEdgStorageCage(EdgStorageCage edgStorageCage) {
         EdgStorageCage edgItem = baseMapper.selectById(edgStorageCage.getId());
-        edgItem.setEnableState(edgStorageCage.getEnableState());
-        baseMapper.updateById(edgItem);
-        return true;
+        if(edgItem!=null){
+            edgItem.setEnableState(edgStorageCage.getEnableState());
+            baseMapper.updateById(edgItem);
+            log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:鎴愬姛",edgStorageCage);
+            return true;
+        }
+        log.info("鍗у缂撳瓨锛氥�愬惎鐢�/绂佺敤銆� 鍙傛暟:{} 缁撴灉:澶辫触",edgStorageCage);
+        return false;
     }
 
     /**

--
Gitblit v1.8.0