From 9e93b4e701cd7ed5a97257b39168a1990c9d6761 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期五, 19 七月 2024 13:40:43 +0800
Subject: [PATCH] 大理片笼fixbug:修复破损后格子宽度重置

---
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/bigstorage/service/impl/BigStorageCageDetailsServiceImpl.java |   32 +++++++++++++++++++++++++++++---
 1 files changed, 29 insertions(+), 3 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 a808cc0..96b7fbb 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
@@ -17,6 +17,8 @@
 import com.mes.bigstoragetask.mapper.BigStorageCageFeedTaskMapper;
 import com.mes.bigstoragetask.mapper.BigStorageCageOutTaskMapper;
 import com.mes.common.config.Const;
+import com.mes.damage.entity.Damage;
+import com.mes.damage.service.DamageService;
 import com.mes.glassinfo.entity.GlassInfo;
 import com.mes.glassinfo.mapper.GlassInfoMapper;
 import com.mes.temperingglass.entity.TemperingGlassInfo;
@@ -53,6 +55,9 @@
     private BigStorageCageService bigStorageCageService;
     @Resource
     private GlassInfoMapper glassInfoMapper;
+
+    @Resource
+    private DamageService damageService;
 
     @Value("${mes.minCount}")
     private int minCount;
@@ -204,7 +209,12 @@
         baseMapper.updateById(bigStorageCageDetails);
         bigStorageCageService.updateRemainWidth(bigStorageCageDetails.getSlot());
         //todo:鎻掑叆鐮存崯鏁版嵁
-
+        Damage damage = new Damage();
+        damage.setGlassId(bigStorageCageDetails.getGlassId());
+        damage.setWorkingProcedure("鍐峰姞宸�");
+        damage.setRemark("澶х悊鐗囩鐮存崯");
+        damage.setStatus(2);
+        damageService.insertDamage(damage);
     }
 
     //鏌ヨ鐜荤拑淇℃伅
@@ -260,7 +270,7 @@
                 .leftJoin(BigStorageCageDetails.class, BigStorageCageDetails::getSlot, BigStorageCage::getSlot)
                 .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
                 .eq(BigStorageCageDetails::getTemperingLayoutId, glassInfo.getTemperingLayoutId())
-                .gt(BigStorageCage::getRemainWidth, glassInfo.getWidth())
+                .gt(BigStorageCage::getRemainWidth, Math.max(glassInfo.getWidth(), glassInfo.getHeight()))
                 .last("limit 1");
         if (glassInfo.getTemperingLayoutId() == 0) {
             wrapper.eq(BigStorageCageDetails::getWidth, glassInfo.getWidth()).eq(BigStorageCageDetails::getHeight, glassInfo.getHeight());
@@ -288,7 +298,23 @@
             bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
             return bigStorageDTO;
         }
-        //todo:鑾峰彇鐜荤拑鐨勫帤搴︼細閲嶆柊閫夌瀛愰渶瑕佹寜鐓х瀛愬彲鏀剧幓鐠冨帤搴﹁繘琛岄�夋嫨
+
+        //鑾峰彇鐜荤拑鐨勫帤搴︼細閲嶆柊閫夌瀛愰渶瑕佹寜鐓х瀛愬彲鏀剧幓鐠冨帤搴﹁繘琛岄�夋嫨
+        bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
+                .eq(BigStorageCage::getRemainWidth, slotWidth)
+                .eq(BigStorageCage::getEnableState, Const.SLOT_ON)
+                .notInSql(BigStorageCage::getDeviceId,
+                        "select distinct device_id from big_storage_cage_details where tempering_layout_id = " + glassInfo.getTemperingLayoutId())
+                .gt(BigStorageCage::getMaxThickness, glassInfo.getThickness())
+                .orderByAsc(BigStorageCage::getDeviceId)
+                .last("limit 1"));
+        if (null != bigStorageCage) {
+            bigStorageDTO = new BigStorageDTO();
+            bigStorageDTO.setWidth(bigStorageCage.getRemainWidth());
+            bigStorageDTO.setSlot(bigStorageCage.getSlot());
+            bigStorageDTO.setDeviceId(bigStorageCage.getDeviceId());
+            return bigStorageDTO;
+        }
         bigStorageCage = bigStorageCageService.getOne(new LambdaQueryWrapper<BigStorageCage>()
                 .eq(BigStorageCage::getRemainWidth, slotWidth)
                 .eq(BigStorageCage::getEnableState, Const.SLOT_ON)

--
Gitblit v1.8.0