From eaf25c57276ebaf28141418199c92e9502884ccf Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期日, 09 三月 2025 23:51:28 +0800
Subject: [PATCH] 1、原片仓储新增任务完成/任务失败接口供用户异常情况恢复处理 2、原片仓储新增历史任务查询按钮 3、卧式理片新增任务完成/任务失败接口供用户异常情况恢复处理 4、大理片笼临时修改:10mm及以上厚度的玻璃走直通任务,厚度可按照实际情况进行配置 5、fixbug:中空理片笼10mm厚度玻璃进入理片笼小格子异常问题查询,同一个流程卡同一层出现2种厚度,导致厚度赋值异常,目前已改为查询最后一次导入的为准

---
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageDetailsMapper.java            |    3 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/RawGlassStorageTaskService.java                          |    7 +
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageServiceImpl.java        |    6 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/impl/RawGlassRawGlassStorageTaskServiceImpl.java         |   93 ++++++++++++++-
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageMapper.java                   |    5 
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageDetailsService.java          |    3 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/RawGlassStorageDetailsService.java                    |    2 
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java           |   23 +++
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/controller/EdgStorageDeviceController.java                |    8 +
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageDetailsMapper.xml                               |    5 
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/EdgStorageDeviceTaskService.java                  |    3 
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageMapper.xml                                      |    7 +
 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java                                          |    1 
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java |   11 +
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/impl/EdgStorageDeviceTaskServiceImpl.java         |   45 +++++++
 hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java                         |   24 ++-
 hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/job/RawGlassTask.java                                           |   23 ---
 hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java      |    2 
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageService.java                 |    2 
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/vo/EdgSlotRemainVO.java                     |   18 +++
 hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglasstask/controller/RawGlassStorageTaskController.java      |   22 +++
 21 files changed, 265 insertions(+), 48 deletions(-)

diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/RawGlassStorageDetailsService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/RawGlassStorageDetailsService.java
index 0163e98..9f83829 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/RawGlassStorageDetailsService.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/RawGlassStorageDetailsService.java
@@ -47,4 +47,6 @@
     String shelfReset(Long slot);
 
     List<RawGlassStorageDetailsDTO> patternUsage(String width, String height, String thickness, String films);
+
+    RawGlassStorageDetails generateDetails(RawGlassStorageDetails details, Integer targetSlot);
 }
\ No newline at end of file
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java
index 57806a4..510c58f 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglassdetails/service/impl/RawGlassStorageDetailsServiceImpl.java
@@ -12,6 +12,8 @@
 import com.mes.rawglassdetails.entity.request.RawGlassRequest;
 import com.mes.rawglassdetails.mapper.RawGlassStorageDetailsMapper;
 import com.mes.rawglassdetails.service.RawGlassStorageDetailsService;
+import com.mes.rawglassstation.entity.RawGlassStorageStation;
+import com.mes.rawglassstation.service.RawGlassStorageStationService;
 import com.mes.rawglasstask.entity.RawGlassStorageTask;
 import com.mes.rawglasstask.service.RawGlassStorageTaskService;
 import lombok.extern.slf4j.Slf4j;
@@ -34,6 +36,9 @@
 
     @Autowired
     RawGlassStorageTaskService rawGlassStorageTaskService;
+
+    @Autowired
+    RawGlassStorageStationService rawGlassStorageStationService;
 
     @Autowired(required = false)
     MiloService miloService;
@@ -218,4 +223,22 @@
     public List<RawGlassStorageDetailsDTO> patternUsage(String width, String height, String thickness, String films){
         return baseMapper.patternUsage(width, height, thickness, films);
     }
+
+    @Override
+    public RawGlassStorageDetails generateDetails(RawGlassStorageDetails details, Integer targetSlot) {
+        RawGlassStorageDetails targetDetails = new RawGlassStorageDetails();
+        RawGlassStorageStation station = rawGlassStorageStationService.getOne(new LambdaQueryWrapper<RawGlassStorageStation>()
+                .eq(RawGlassStorageStation::getSlot, targetSlot));
+        targetDetails.setDeviceId(station.getDeviceId());
+        targetDetails.setSlot(targetSlot);
+        targetDetails.setShelf(details.getShelf());
+        targetDetails.setPatternWidth(details.getPatternWidth());
+        targetDetails.setPatternHeight(details.getPatternHeight());
+        targetDetails.setPatternThickness(details.getPatternThickness());
+        targetDetails.setFilmsId(details.getFilmsId());
+        targetDetails.setRemainQuantity(details.getRemainQuantity());
+        targetDetails.setCreateTime(new Date());
+        targetDetails.setState(Const.RAW_GLASS_STATE_IN);
+        return targetDetails;
+    }
 }
\ No newline at end of file
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/RawGlassStorageTaskService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/RawGlassStorageTaskService.java
index 887eb62..82f3bf9 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/RawGlassStorageTaskService.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/RawGlassStorageTaskService.java
@@ -1,6 +1,7 @@
 package com.mes.rawglasstask.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.mes.rawglassdetails.entity.RawGlassStorageDetails;
 import com.mes.rawglasstask.entity.RawGlassStorageTask;
 import com.mes.rawglasstask.entity.request.RawGlassTaskRequest;
 
@@ -26,4 +27,10 @@
      * @return
      */
     String setRawGlassTaskRequest(RawGlassTaskRequest request);
+
+    Boolean taskSuccess(Long taskId);
+
+    Boolean taskError(Long taskId);
+
+    List<RawGlassStorageTask> queryRawGlassHistoryTask(RawGlassTaskRequest request);
 }
\ No newline at end of file
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/impl/RawGlassRawGlassStorageTaskServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/impl/RawGlassRawGlassStorageTaskServiceImpl.java
index f5c0ad9..52f4d28 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/impl/RawGlassRawGlassStorageTaskServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/rawglasstask/service/impl/RawGlassRawGlassStorageTaskServiceImpl.java
@@ -2,7 +2,12 @@
 
 import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.mes.common.config.Const;
+import com.mes.rawglassdetails.entity.RawGlassStorageDetails;
+import com.mes.rawglassdetails.service.RawGlassStorageDetailsService;
+import com.mes.rawglassstation.entity.RawGlassStorageStation;
 import com.mes.rawglasstask.entity.RawGlassStorageTask;
 import com.mes.rawglasstask.entity.request.RawGlassTaskRequest;
 import com.mes.rawglasstask.mapper.RawGlassStorageTaskMapper;
@@ -13,6 +18,8 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -26,9 +33,11 @@
     @Autowired
     RedisUtil redisUtil;
 
+    @Resource
+    RawGlassStorageDetailsService rawGlassStorageDetailsService;
+
     @Override
-    public List<RawGlassStorageTask> listRawGlassTask() {
-        RawGlassTaskRequest request = redisUtil.getCacheObject("rawGlassTaskRequest");
+    public List<RawGlassStorageTask> queryRawGlassHistoryTask(RawGlassTaskRequest request) {
         if (null == request) {
             request = new RawGlassTaskRequest();
         }
@@ -42,12 +51,13 @@
                 .in(CollectionUtil.isNotEmpty(request.getTaskState()), RawGlassStorageTask::getTaskState, request.getTaskState())
                 .in(CollectionUtil.isNotEmpty(request.getTaskType()), RawGlassStorageTask::getTaskType, request.getTaskType())
                 .orderByDesc(RawGlassStorageTask::getCreateTime));
+    }
 
-//        return list(new QueryWrapper<RawGlassStorageTask>()
-//                .in(CollectionUtil.isNotEmpty(request.getTaskState()), "task_state", request.getTaskState())
-//                .in(CollectionUtil.isNotEmpty(request.getTaskType()), "task_type", request.getTaskType())
-//                .between("create_time", request.getBeginDate(), request.getEndDate())
-//                .orderByDesc("create_time"));
+    @Override
+    public List<RawGlassStorageTask> listRawGlassTask() {
+        RawGlassTaskRequest request = redisUtil.getCacheObject("rawGlassTaskRequest");
+        return queryRawGlassHistoryTask(request);
+
     }
 
     @Override
@@ -60,4 +70,73 @@
         log.info("鍓嶇浼犲叆鍙傛暟锛歿}", request);
         return "success";
     }
+
+    @Override
+    public Boolean taskSuccess(Long taskId) {
+        //鑾峰彇浠诲姟姝e湪鎵ц鐨勪换鍔′俊鎭�
+        RawGlassStorageTask task = this.getById(taskId);
+        //鍘昏鎯呰〃鑾峰彇姝e湪鎵ц鐨勫師鐗囪鎯呬俊鎭�
+        RawGlassStorageDetails details = rawGlassStorageDetailsService.getOne(new LambdaQueryWrapper<RawGlassStorageDetails>()
+                .ne(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_OUT).eq(RawGlassStorageDetails::getSlot, task.getStartSlot())
+        );
+        RawGlassStorageDetails targetDetails = rawGlassStorageDetailsService.generateDetails(details, task.getEndSlot());
+        int deviceId = details.getDeviceId();
+        Integer taskType = task.getTaskType();
+        log.info("灏嗚鎯呰〃鐨勭姸鎬佹敼涓哄凡鍑哄簱");
+        rawGlassStorageDetailsService.update(new LambdaUpdateWrapper<RawGlassStorageDetails>()
+                .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_OUT)
+                .ne(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_OUT)
+                .eq(RawGlassStorageDetails::getSlot, task.getStartSlot()));
+        log.info("浠诲姟鐘舵�佸凡鏇存敼涓猴細宸插畬鎴�");
+        this.update(new LambdaUpdateWrapper<RawGlassStorageTask>()
+                .eq(RawGlassStorageTask::getTaskState, Const.RAW_GLASS_TASK_NEW)
+                .set(RawGlassStorageTask::getTaskState, Const.RAW_GLASS_TASK_SUCCESS));
+        switch (taskType) {
+            case 1:
+            case 3:
+                log.info("1銆佸叆搴擄紝3銆佽皟搴︿换鍔°�倇}", taskType);
+                if (details.getRemainQuantity() > 0) {
+                    rawGlassStorageDetailsService.save(targetDetails);
+                }
+                break;
+            case 2:
+            case 4:
+                log.info("2銆佸嚭鐗�,4銆佸叆搴撹姹傘�倇}", taskType);
+                targetDetails = new RawGlassStorageDetails();
+                targetDetails.setSlot(task.getEndSlot());
+                targetDetails.setDeviceId(deviceId);
+                targetDetails.setShelf(task.getStartSlot());
+                targetDetails.setState(Const.RAW_GLASS_STATE_IN);
+                rawGlassStorageDetailsService.save(targetDetails);
+                break;
+            default:
+                break;
+        }
+        return Boolean.TRUE;
+    }
+
+
+    @Override
+    public Boolean taskError(Long taskId) {
+        //鑾峰彇浠诲姟姝e湪鎵ц鐨勪换鍔′俊鎭�
+        RawGlassStorageTask task = this.getById(taskId);
+        Integer taskType = task.getTaskType();
+        if (taskType.equals(Const.RAW_GLASS_TASK_TYPE_IN_REQUEST)) {
+            rawGlassStorageDetailsService.update(new LambdaUpdateWrapper<RawGlassStorageDetails>()
+                    .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_OUT)
+                    .eq(RawGlassStorageDetails::getSlot, task.getStartSlot())
+                    .in(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_RUNNING, Const.RAW_GLASS_STATE_CAR));
+        } else {
+            rawGlassStorageDetailsService.update(new LambdaUpdateWrapper<RawGlassStorageDetails>()
+                    .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_IN)
+                    .eq(RawGlassStorageDetails::getSlot, task.getStartSlot())
+                    .in(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_RUNNING, Const.RAW_GLASS_STATE_CAR));
+        }
+        this.update(new LambdaUpdateWrapper<RawGlassStorageTask>()
+                .eq(RawGlassStorageTask::getTaskState, Const.RAW_GLASS_TASK_NEW)
+                .set(RawGlassStorageTask::getTaskState, Const.RAW_GLASS_TASK_FAILURE));
+        return Boolean.TRUE;
+    }
+
+
 }
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/vo/EdgSlotRemainVO.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/vo/EdgSlotRemainVO.java
new file mode 100644
index 0000000..98c9eb4
--- /dev/null
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/entity/vo/EdgSlotRemainVO.java
@@ -0,0 +1,18 @@
+package com.mes.edgstoragecage.entity.vo;
+
+import lombok.Data;
+
+/**
+ * @Author : zhoush
+ * @Date: 2025/3/9 23:18
+ * @Description:
+ */
+@Data
+public class EdgSlotRemainVO {
+
+    private int deviceId;
+
+    private int slot;
+
+    private int remainWidth;
+}
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageDetailsMapper.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageDetailsMapper.java
index 80d8574..118758e 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageDetailsMapper.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageDetailsMapper.java
@@ -3,6 +3,7 @@
 import com.github.yulichang.base.MPJBaseMapper;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
 import com.mes.edgstoragecage.entity.vo.CutDrawingVO;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.security.core.parameters.P;
 
@@ -21,4 +22,6 @@
     EdgStorageCageDetails queryEdgStorageDetailsBySize(int deviceId, int currentSlot, double width, double height);
 
     List<CutDrawingVO> queryCutDrawingByEngineerId(@Param("engineerId") String engineerId, @Param("patternSequence") int patternSequence, @Param("isAll") int isAll);
+
+    List<EdgSlotRemainVO> querySlotRemainWidth(@Param("cellLength") int cellLength, @Param("glassGap") int glassGap);
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageMapper.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageMapper.java
index b727e12..b88c071 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageMapper.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/mapper/EdgStorageCageMapper.java
@@ -2,7 +2,10 @@
 
 import com.github.yulichang.base.MPJBaseMapper;
 import com.mes.edgstoragecage.entity.EdgStorageCage;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * <p>
@@ -24,4 +27,6 @@
      * @return
      */
     EdgStorageCage getEdgStorageCageBySize(@Param("deviceId") int deviceId, @Param("width") double width, @Param("height") double height, @Param("slot") int slot);
+
+    void resetSlotRemainWidth(@Param("list") List<EdgSlotRemainVO> list);
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageDetailsService.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageDetailsService.java
index 811f058..3fc8538 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageDetailsService.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageDetailsService.java
@@ -4,6 +4,7 @@
 import com.mes.damage.entity.request.DamageRequest;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
 import com.mes.edgstoragecage.entity.vo.CutDrawingVO;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 
 import java.util.List;
 import java.util.Map;
@@ -95,4 +96,6 @@
     EdgStorageCageDetails queryEdgStorageDetailsBySize(int deviceId, int currentSlot, double width, double height);
 
     String edgDetailsOperate(DamageRequest request);
+
+    List<EdgSlotRemainVO> querySlotRemainWidth(int cellLength, int glassGap);
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageService.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageService.java
index 0ede466..970a6ea 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageService.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/EdgStorageCageService.java
@@ -3,6 +3,7 @@
 import com.github.yulichang.base.MPJBaseService;
 import com.mes.edgstoragecage.entity.EdgStorageCage;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 import com.mes.edgstoragecage.entity.vo.EdgStorageCageVO;
 
 import java.util.List;
@@ -62,4 +63,5 @@
      */
     EdgStorageCage getEdgStorageCageBySize(int deviceId, double width, double height, int slot);
 
+    void resetSlotRemainWidth(List<EdgSlotRemainVO> edgSlotRemainVOS);
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java
index 7ab8534..afbca94 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java
@@ -18,6 +18,7 @@
 import com.mes.edgstoragecage.entity.EdgStorageCage;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
 import com.mes.edgstoragecage.entity.vo.CutDrawingVO;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 import com.mes.edgstoragecage.mapper.EdgStorageCageDetailsMapper;
 import com.mes.edgstoragecage.mapper.EdgStorageCageMapper;
 import com.mes.edgstoragecage.service.EdgStorageCageDetailsService;
@@ -102,7 +103,8 @@
                 patternSequence = lastGlass.getPatternSequence() + 1;
             } else {
                 //褰撳墠鐗堝浘鏄惁鏈夊墿浣欙紝鏈夊墿浣欐樉绀哄綋鍓嶇増鍥�
-                patternSequence = lastGlass.getPatternSequence();            }
+                patternSequence = lastGlass.getPatternSequence();
+            }
         }
         return baseMapper.queryCutDrawingByEngineerId(engineering.getEngineerId(), patternSequence, 0);
     }
@@ -340,7 +342,12 @@
     public String edgDetailsOperate(DamageRequest request) {
         //鍗у紡鐞嗙墖绗肩垎鐮存崯
         damageService.autoSubmitReport(request.getGlassId(), request.getLine(), request.getWorkingProcedure(), "鍗у紡鐞嗙墖绗�", request.getState());
-        this.remove(new LambdaQueryWrapper<EdgStorageCageDetails>().eq(EdgStorageCageDetails::getGlassId,request.getGlassId()));
+        this.remove(new LambdaQueryWrapper<EdgStorageCageDetails>().eq(EdgStorageCageDetails::getGlassId, request.getGlassId()));
         return "success";
     }
+
+    @Override
+    public List<EdgSlotRemainVO> querySlotRemainWidth(int cellLength, int glassGap) {
+        return this.baseMapper.querySlotRemainWidth(cellLength, glassGap);
+    }
 }
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 7d726bc..bfdedd1 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
@@ -10,6 +10,7 @@
 import com.mes.damage.service.DamageService;
 import com.mes.edgstoragecage.entity.EdgStorageCage;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 import com.mes.edgstoragecage.entity.vo.EdgStorageCageVO;
 import com.mes.edgstoragecage.mapper.EdgStorageCageDetailsMapper;
 import com.mes.edgstoragecage.mapper.EdgStorageCageMapper;
@@ -151,5 +152,8 @@
         return baseMapper.getEdgStorageCageBySize(deviceId, width, height, slot);
     }
 
-
+    @Override
+    public void resetSlotRemainWidth(List<EdgSlotRemainVO> edgSlotRemainVOS) {
+        baseMapper.resetSlotRemainWidth(edgSlotRemainVOS);
+    }
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/controller/EdgStorageDeviceController.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/controller/EdgStorageDeviceController.java
index 39fb4b2..3355e67 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/controller/EdgStorageDeviceController.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/controller/EdgStorageDeviceController.java
@@ -26,7 +26,7 @@
     @Resource
     private EdgStorageDeviceTaskService edgStorageDeviceTaskService;
 
-    @ApiOperation(value = "閲嶇疆浠诲姟锛氭寜鐓ц澶噄d閲嶇疆浠诲姟")
+    @ApiOperation(value = "閲嶇疆浠诲姟/浠诲姟澶辫触澶勭悊锛氭寜鐓ц澶噄d閲嶇疆浠诲姟")
     @PostMapping("/resetTask")
     public Result<Boolean> resetTask(Integer deviceId) {
         Boolean flag = edgStorageDeviceTaskService.resetTask(deviceId);
@@ -36,4 +36,10 @@
             return Result.build(200, "鏃犱换鍔★紝鏃犻渶閲嶇疆", flag);
         }
     }
+
+    @ApiOperation("浠诲姟鎴愬姛澶勭悊")
+    @PostMapping("/taskSuccess")
+    public Result<Boolean> taskSuccess(Integer deviceId) {
+        return Result.build(200, "澶勭悊鎴愬姛", edgStorageDeviceTaskService.taskSuccess(deviceId));
+    }
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/EdgStorageDeviceTaskService.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/EdgStorageDeviceTaskService.java
index d7fad87..10f51c4 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/EdgStorageDeviceTaskService.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/EdgStorageDeviceTaskService.java
@@ -20,4 +20,7 @@
 
     Boolean resetTask(Integer deviceId);
 
+    Boolean taskSuccess(Integer deviceId);
+
+
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/impl/EdgStorageDeviceTaskServiceImpl.java b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/impl/EdgStorageDeviceTaskServiceImpl.java
index 4e13ea7..9df80f0 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/impl/EdgStorageDeviceTaskServiceImpl.java
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/opctask/service/impl/EdgStorageDeviceTaskServiceImpl.java
@@ -3,17 +3,22 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.mes.common.config.Const;
+import com.mes.edgstoragecage.entity.EdgStorageCage;
 import com.mes.edgstoragecage.entity.EdgStorageCageDetails;
+import com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO;
 import com.mes.edgstoragecage.service.EdgStorageCageDetailsService;
+import com.mes.edgstoragecage.service.EdgStorageCageService;
 import com.mes.job.OpcCacheGlassTask;
 import com.mes.opctask.entity.EdgStorageDeviceTask;
 import com.mes.opctask.entity.EdgStorageDeviceTaskHistory;
 import com.mes.opctask.mapper.EdgStorageDeviceTaskMapper;
 import com.mes.opctask.service.EdgStorageDeviceTaskHistoryService;
 import com.mes.opctask.service.EdgStorageDeviceTaskService;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.List;
 
 /**
  * @Author : zhoush
@@ -33,9 +38,14 @@
     @Resource
     private EdgStorageCageDetailsService edgStorageCageDetailsService;
     @Resource
-    EdgStorageDeviceTaskMapper edgStorageDeviceTaskMapper;
+    private EdgStorageCageService edgStorageCageService;
     @Resource
-    OpcCacheGlassTask opcCacheGlassTask;
+    EdgStorageDeviceTaskMapper edgStorageDeviceTaskMapper;
+
+    @Value("${mes.glassGap}")
+    private int glassGap;
+    @Value("${mes.cellLength}")
+    private int cellLength;
 
     @Override
     public EdgStorageDeviceTask queryTaskMessage(String tableName) {
@@ -75,12 +85,13 @@
                     .eq(EdgStorageCageDetails::getGlassId, glassId));
         }
 
-        opcCacheGlassTask.updateCellRemainWidth(cell, deviceId, taskHistory);
         edgStorageDeviceTaskHistoryService.update(new LambdaUpdateWrapper<EdgStorageDeviceTaskHistory>()
                 .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW)
                 .eq(EdgStorageDeviceTaskHistory::getDeviceId, deviceId)
                 .set(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_FAILURE)
         );
+        //璁$畻姣忎釜鍚勮嚜鐨勫墿浣欏昂瀵镐俊鎭�
+        resetSlotRemainWidth();
         //鏈�鍚庢洿鏂颁换鍔★紝淇濊瘉浠诲姟鍓嶇殑鍔ㄤ綔閮藉仛瀹�
         EdgStorageDeviceTask task = new EdgStorageDeviceTask();
         task.setTaskRunning(Const.GLASS_CACHE_TYPE_EMPTY);
@@ -89,4 +100,32 @@
         this.updateTaskMessage(tableName, task);
         return Boolean.TRUE;
     }
+
+    @Override
+    public Boolean taskSuccess(Integer deviceId) {
+        String tableName = deviceId == 1 ? EDG_STORAGE_DEVICE_ONE_TASK : EDG_STORAGE_DEVICE_TWO_TASK;
+        edgStorageDeviceTaskHistoryService.update(new LambdaUpdateWrapper<EdgStorageDeviceTaskHistory>()
+                .set(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_SUCCESS)
+                .eq(EdgStorageDeviceTaskHistory::getTaskState, Const.RAW_GLASS_TASK_NEW)
+                .eq(EdgStorageDeviceTaskHistory::getDeviceId, deviceId));
+        //璁$畻姣忎釜鍚勮嚜鐨勫墿浣欏昂瀵镐俊鎭�
+        resetSlotRemainWidth();
+        //鏈�鍚庢洿鏂颁换鍔★紝淇濊瘉浠诲姟鍓嶇殑鍔ㄤ綔閮藉仛瀹�
+        EdgStorageDeviceTask task = new EdgStorageDeviceTask();
+        task.setTaskRunning(Const.GLASS_CACHE_TYPE_EMPTY);
+        task.setGlassIdOut("");
+        task.setStartCell(0);
+        this.updateTaskMessage(tableName, task);
+        return Boolean.TRUE;
+    }
+
+    private boolean resetSlotRemainWidth() {
+        //灏嗗昂瀵搁噸缃负鍘熷灏哄
+        edgStorageCageService.update(new LambdaUpdateWrapper<EdgStorageCage>().set(EdgStorageCage::getRemainWidth, cellLength));
+        //鑾峰彇绗煎唴鐨勮鎯呮暟鎹�
+        List<EdgSlotRemainVO> edgSlotRemainVOS = edgStorageCageDetailsService.querySlotRemainWidth(cellLength, glassGap);
+        //鎸夌収鏌ヨ缁撴灉瀵圭鍐呯幇鏈夌幓鐠冪殑鏍煎瓙灏哄杩涜鏇存柊
+        edgStorageCageService.resetSlotRemainWidth(edgSlotRemainVOS);
+        return Boolean.TRUE;
+    }
 }
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageDetailsMapper.xml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageDetailsMapper.xml
index f4f8fc6..228dd96 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageDetailsMapper.xml
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageDetailsMapper.xml
@@ -73,4 +73,9 @@
         </if>
 
     </select>
+    <select id="querySlotRemainWidth" resultType="com.mes.edgstoragecage.entity.vo.EdgSlotRemainVO">
+        select device_id,slot, if(#{cellLength} - sum(GREATEST(width,height)+#{glassGap})< 0 ,0,#{cellLength} -
+        sum(GREATEST(width,height)+#{glassGap}) )as
+        remain_width from edg_storage_cage_details where state = 100 group by device_id,slot
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageMapper.xml b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageMapper.xml
index 4b0946d..cd4c157 100644
--- a/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageMapper.xml
+++ b/hangzhoumesParent/moduleService/CacheGlassModule/src/main/resources/mapper/EdgStorageCageMapper.xml
@@ -10,6 +10,13 @@
         <result column="remain_width" property="remainWidth" jdbcType="INTEGER"/>
     </resultMap>
 
+    <update id="resetSlotRemainWidth">
+        <foreach collection="list" item="item" separator=";" open="begin" close=";end;">
+            update edg_storage_cage set remain_width = #{item.remainWidth} where
+            device_id = #{item.deviceId} and slot = #{item.slot}
+        </foreach>
+    </update>
+
     <select id="getEdgStorageCageBySize" resultMap="baseMap">
         select t.*
         from edg_storage_cage t
diff --git a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java
index 640cf2f..63861e5 100644
--- a/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java
+++ b/hangzhoumesParent/moduleService/CacheVerticalGlassModule/src/main/java/com/mes/job/OpcPlcStorageCageNewTask.java
@@ -170,19 +170,21 @@
         }
         //鎸夌収鐜荤拑鍘氬害鍒嗙粍锛屽垽鏂墿浣欐牸瀛愭槸鍚﹀彲浠ュ瓨鏀�
         Map<Double, Long> thickCountMap = glassInfoList.stream().collect(Collectors.groupingBy(GlassInfo::getThickness, Collectors.counting()));
-        for (Map.Entry<Double, Long> entry : thickCountMap.entrySet()) {
-            int count = bigStorageCageService.count(new LambdaQueryWrapper<BigStorageCage>()
-                    .eq(BigStorageCage::getEnableState, Const.SLOT_ON).eq(BigStorageCage::getRemainWidth, slotWidth)
-                    .le(BigStorageCage::getMinThickness, entry.getKey())
-                    .ge(BigStorageCage::getMaxThickness, entry.getKey()));
-            if (count < entry.getValue()) {
-                log.info("绗煎唴鏍煎瓙鍓╀綑鏁伴噺涓嶈冻锛岀粨鏉熸湰娆¤繘鐗�");
-                //todo:鍚憄lc鍙戦�佹姤璀�
-                return;
+        if(glassInfoList.get(0).getThickness() < slotMaxthickness){
+            for (Map.Entry<Double, Long> entry : thickCountMap.entrySet()) {
+                int count = bigStorageCageService.count(new LambdaQueryWrapper<BigStorageCage>()
+                        .eq(BigStorageCage::getEnableState, Const.SLOT_ON).eq(BigStorageCage::getRemainWidth, slotWidth)
+                        .le(BigStorageCage::getMinThickness, entry.getKey())
+                        .ge(BigStorageCage::getMaxThickness, entry.getKey()));
+                if (count < entry.getValue()) {
+                    log.info("绗煎唴鏍煎瓙鍓╀綑鏁伴噺涓嶈冻锛岀粨鏉熸湰娆¤繘鐗�");
+                    //todo:鍚憄lc鍙戦�佹姤璀�
+                    return;
+                }
             }
         }
         //todo:瓒呭ぇ灏哄
-        if (slotMaxHeight < Math.min(glassInfoList.get(0).getWidth(), glassInfoList.get(0).getHeight()) || glassInfoList.get(0).getThickness() > slotMaxthickness) {
+        if (slotMaxHeight < Math.min(glassInfoList.get(0).getWidth(), glassInfoList.get(0).getHeight()) || glassInfoList.get(0).getThickness() >= slotMaxthickness) {
             int count = bigStorageCageDetailsService.count(new LambdaQueryWrapper<BigStorageCageDetails>()
                     .eq(BigStorageCageDetails::getSlot, THROUGH_SLOT)
                     .in(BigStorageCageDetails::getState, Const.GLASS_STATE_IN_ALL));
@@ -205,7 +207,7 @@
         //璁$畻鐩爣鏍煎瓙
         List<BigStorageCageHistoryTask> historyTasks = new ArrayList<>();
         //瓒呭ぇ灏哄涓庢甯稿昂瀵哥幓鐠冭绠楁柟寮忎笉涓�鏍�
-        if (slotMaxHeight > Math.min(glassInfoList.get(0).getWidth(), glassInfoList.get(0).getHeight())) {
+        if (slotMaxHeight > Math.min(glassInfoList.get(0).getWidth(), glassInfoList.get(0).getHeight()) && glassInfoList.get(0).getThickness() < slotMaxthickness) {
             for (BigStorageCageTask task : inTaskList) {
                 GlassInfo info = glassListMap.get(task.getGlassId()).get(0);
                 BigStorageDTO bigStorageDTO = bigStorageGlassInfoService.queryBigStorageTargetSlot(info.getEngineerId(), info.getTemperingLayoutId(), info.getTemperingFeedSequence());
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 76e3087..33c73b3 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
@@ -142,7 +142,6 @@
         }
         rawGlassStorageDetailsService.update(new LambdaUpdateWrapper<RawGlassStorageDetails>().eq(RawGlassStorageDetails::getId, one.getId())
                 .set(RawGlassStorageDetails::getState, Const.RAW_GLASS_STATE_CAR));
-
     }
 
     @Scheduled(fixedDelay = 1000)
@@ -161,7 +160,7 @@
         }
         RawGlassStorageTask task = rawGlassStorageTaskService.getOne(new LambdaQueryWrapper<RawGlassStorageTask>()
                 .in(RawGlassStorageTask::getTaskState, Const.RAW_GLASS_TASK_NEW));
-        RawGlassStorageDetails targetDetails = generateDetails(details, task.getEndSlot());
+        RawGlassStorageDetails targetDetails = rawGlassStorageDetailsService.generateDetails(details, task.getEndSlot());
         int deviceId = details.getDeviceId();
         Integer taskType = task.getTaskType();
         if ("1".equals(value)) {
@@ -299,7 +298,7 @@
         }
         //鐢熸垚澶嶄綅浠诲姟
 
-        rawGlassStorageDetailsService.generateTask(rawGlassList.get(0).getSlot(), rawGlassList.get(0).getShelf(), rawGlassList.get(0).getShelf(), rawGlassList.get(0).getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_DISPATCH);
+//        rawGlassStorageDetailsService.generatask(rawGlassList.get(0).getSlot(), rawGlassList.get(0).getShelf(), rawGlassList.get(0).getShelf(), rawGlassList.get(0).getRemainQuantity(), Const.RAW_GLASS_TASK_TYPE_DISPATCH);
 
 //        List<ReadWriteEntity> list = new ArrayList<>();
 //        list.add(generateReadWriteEntity("CC.CC.taskWord", 1));
@@ -533,24 +532,6 @@
             }
         }
     }
-
-    private RawGlassStorageDetails generateDetails(RawGlassStorageDetails details, Integer targetSlot) {
-        RawGlassStorageDetails targetDetails = new RawGlassStorageDetails();
-        RawGlassStorageStation station = rawGlassStorageStationService.getOne(new LambdaQueryWrapper<RawGlassStorageStation>()
-                .eq(RawGlassStorageStation::getSlot, targetSlot));
-        targetDetails.setDeviceId(station.getDeviceId());
-        targetDetails.setSlot(targetSlot);
-        targetDetails.setShelf(details.getShelf());
-        targetDetails.setPatternWidth(details.getPatternWidth());
-        targetDetails.setPatternHeight(details.getPatternHeight());
-        targetDetails.setPatternThickness(details.getPatternThickness());
-        targetDetails.setFilmsId(details.getFilmsId());
-        targetDetails.setRemainQuantity(details.getRemainQuantity());
-        targetDetails.setCreateTime(new Date());
-        targetDetails.setState(Const.RAW_GLASS_STATE_IN);
-        return targetDetails;
-    }
-
 
     private ReadWriteEntity generateReadWriteEntity(String identifier, int value) {
         ReadWriteEntity readWriteEntity = new ReadWriteEntity();
diff --git a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglasstask/controller/RawGlassStorageTaskController.java b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglasstask/controller/RawGlassStorageTaskController.java
index e5aea4c..4ba357c 100644
--- a/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglasstask/controller/RawGlassStorageTaskController.java
+++ b/hangzhoumesParent/moduleService/GlassStorageModule/src/main/java/com/mes/rawglasstask/controller/RawGlassStorageTaskController.java
@@ -1,6 +1,7 @@
 package com.mes.rawglasstask.controller;
 
 
+import com.mes.rawglasstask.entity.RawGlassStorageTask;
 import com.mes.rawglasstask.entity.request.RawGlassTaskRequest;
 import com.mes.rawglasstask.service.RawGlassStorageTaskService;
 import com.mes.utils.Result;
@@ -10,6 +11,8 @@
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
 
 /**
  * <p>
@@ -32,5 +35,24 @@
         return Result.build(200, "鏌ヨ鎴愬姛", rawGlassStorageTaskService.setRawGlassTaskRequest(request));
     }
 
+    @ApiOperation("鎸夌収鏉′欢鏌ョ湅浠撳偍鍘嗗彶浠诲姟")
+    @PostMapping("/queryRawGlassHistoryTask")
+    public Result<List<RawGlassStorageTask>> queryRawGlassHistoryTask(@RequestBody RawGlassTaskRequest request) {
+        return Result.build(200, "鏌ヨ鎴愬姛", rawGlassStorageTaskService.queryRawGlassHistoryTask(request));
+    }
+
+    @ApiOperation("浠诲姟鎴愬姛澶勭悊")
+    @PostMapping("/taskSuccess")
+    public Result<Boolean> taskSuccess(@RequestBody Long taskId) {
+        return Result.build(200, "鏌ヨ鎴愬姛", rawGlassStorageTaskService.taskSuccess(taskId));
+    }
+
+    @ApiOperation("浠诲姟澶辫触澶勭悊")
+    @PostMapping("/taskError")
+    public Result<Boolean> taskError(@RequestBody Long taskId) {
+        return Result.build(200, "鏌ヨ鎴愬姛", rawGlassStorageTaskService.taskError(taskId));
+    }
+
+
 }
 
diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java
index 217fadc..21ae9c4 100644
--- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java
+++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java
@@ -44,7 +44,6 @@
      * fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
      * fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
      */
-
     @Scheduled(fixedDelay = 300)
     public void plcLoadGlassTask() throws InterruptedException {
         try {
diff --git a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
index 88f22a2..ba08ba6 100644
--- a/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
+++ b/hangzhoumesParent/moduleService/hollowGlassModule/src/main/java/com/mes/hollow/service/impl/HollowGlassRelationInfoServiceImpl.java
@@ -192,7 +192,7 @@
     public void generateHollowGlassInfo(String flowCardId, int totalLayer, int layer) {
 
         GlassInfo glassInfo = glassInfoService.getOne(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getFlowCardId, flowCardId)
-                .eq(GlassInfo::getLayer, layer).last("limit 1"));
+                .eq(GlassInfo::getLayer, layer).orderByDesc(GlassInfo::getId).last("limit 1"));
         if (null == glassInfo) {
             log.info("褰撳墠娴佺▼鍗′俊鎭负瀵煎叆mes绯荤粺娴佺▼鍗★細{}锛屽眰鏁皗}", flowCardId, layer);
             return;

--
Gitblit v1.8.0