From 47a468a30e24567783c1319cbd7874ef1226ddd5 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 09 五月 2024 19:19:53 +0800
Subject: [PATCH] 卧式理片笼线程改造:新增当前笼子的格子位置,优先进最近的格子

---
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 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 242ffed..7c71c38 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
@@ -3,6 +3,7 @@
 import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.github.yulichang.toolkit.JoinWrappers;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import com.mes.common.config.Const;
 import com.mes.edgstoragecage.entity.EdgStorageCage;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
 import com.mes.edgstoragecage.mapper.EdgStorageCageDetailsMapper;
@@ -34,6 +35,18 @@
     @Autowired
     UpPattenUsageMapper upPattenUsageMapper;
 
+    @Override
+    public EdgStorageCage selectNearestEmpty(int currentSlot) {
+        return this.selectJoinOne(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(slot - 4)  asc limit 1")
+        );
+    }
+
     /**
      * 鏌ヨ绗煎唴绌烘牸
      * @return
@@ -46,6 +59,7 @@
                         .eq(EdgStorageCageDetails::getSlot,EdgStorageCage::getSlot)
                         .eq(EdgStorageCageDetails::getState,"100"))
                 .isNull(EdgStorageCageDetails::getSlot)
+                .last("order by abs(slot - 4)  asc")
         );
     }
 

--
Gitblit v1.8.0