From f2966bc5a06badaec2248153cf0ce836999776b3 Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 04 九月 2025 11:38:50 +0800
Subject: [PATCH] 1、一键破损功能有工程号 原片序号改为玻璃id列表

---
 hangzhoumesParent/moduleService/CacheGlassModule/src/main/java/com/mes/edgstoragecage/service/impl/EdgStorageCageDetailsServiceImpl.java |   91 +++++++++++++++++++++++++++++++++------------
 1 files changed, 66 insertions(+), 25 deletions(-)

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 87ce02b..2574d8d 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
@@ -2,6 +2,7 @@
 
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.lang.Assert;
+import cn.hutool.json.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
@@ -10,14 +11,14 @@
 import com.github.yulichang.toolkit.JoinWrappers;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import com.mes.damage.entity.Damage;
-import com.mes.damage.mapper.DamageMapper;
+import com.mes.damage.entity.request.DamageRequest;
 import com.mes.damage.service.DamageService;
 import com.mes.edgglasstask.entity.EdgGlassTaskInfo;
-import com.mes.edgglasstask.entity.request.IdentWornRequest;
 import com.mes.edgglasstask.service.EdgGlassTaskInfoService;
 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;
@@ -25,15 +26,17 @@
 import com.mes.engineering.mapper.EngineeringMapper;
 import com.mes.glassinfo.entity.GlassInfo;
 import com.mes.glassinfo.service.GlassInfoService;
+import com.mes.largenscreen.entity.PieChartVO;
 import com.mes.pp.entity.OptimizeHeatDetail;
 import com.mes.pp.entity.OptimizeHeatLayout;
 import com.mes.pp.entity.OptimizeProject;
 import com.mes.pp.mapper.OptimizeHeatDetailMapper;
 import com.mes.taskcache.entity.TaskCache;
 import com.mes.taskcache.service.TaskCacheService;
+import com.mes.uppattenusage.entity.UpPattenUsage;
+import com.mes.uppattenusage.mapper.UpPattenUsageMapper;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
-import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -71,17 +74,17 @@
     @Autowired
     TaskCacheService taskCacheService;
 
-    @Resource
-    DamageMapper damageMapper;
-
     @Autowired
     DamageService damageService;
+
+    @Resource
+    UpPattenUsageMapper upPattenUsageMapper;
 
     @Autowired
     EdgGlassTaskInfoService edgGlassTaskInfoService;
 
     @Override
-    public List<CutDrawingVO> queryCurrentCutDrawing(int deviceId, int stationCell) {
+    public JSONObject queryCurrentCutDrawing(int deviceId, int stationCell) {
 //         鑾峰彇鏈潯绾垮綋鍓嶆鍦ㄦ墽琛岀殑宸ョ▼
         Engineering engineering = engineeringMapper.selectOne(new LambdaQueryWrapper<Engineering>()
                 .eq(Engineering::getState, 1).eq(Engineering::getStationCell, stationCell));
@@ -109,7 +112,18 @@
                 patternSequence = lastGlass.getPatternSequence();
             }
         }
-        return baseMapper.queryCutDrawingByEngineerId(engineering.getEngineerId(), patternSequence, 0);
+        JSONObject jsonObject = new JSONObject();
+        List<CutDrawingVO> currentCutDrawings = baseMapper.queryCutDrawingByEngineerId(engineering.getEngineerId(), patternSequence, 0);
+        jsonObject.append("currentCutTerritory", currentCutDrawings);
+        if (CollectionUtil.isNotEmpty(currentCutDrawings)) {
+            jsonObject.append("engineer", engineering.getEngineerId());
+            jsonObject.append("sequence", patternSequence);
+            UpPattenUsage upPattenUsage = upPattenUsageMapper.selectOne(new LambdaQueryWrapper<UpPattenUsage>()
+                    .eq(UpPattenUsage::getEngineeringId, engineering.getEngineerId())
+                    .eq(UpPattenUsage::getLayoutSequence, patternSequence));
+            jsonObject.append("upPattenUsage", upPattenUsage);
+        }
+        return jsonObject;
     }
 
     @Override
@@ -119,6 +133,9 @@
         List<GlassInfo> glassInfoList = glassInfoService.list(new LambdaQueryWrapper<GlassInfo>().eq(GlassInfo::getEngineerId, engineerId));
         long totalPatternSequence = glassInfoList.stream().map(GlassInfo::getPatternSequence).distinct().count();
         map.put("totalPatternSequence", totalPatternSequence);
+        UpPattenUsage upPattenUsage = upPattenUsageMapper.selectOne(new LambdaQueryWrapper<UpPattenUsage>().eq(UpPattenUsage::getEngineeringId, engineerId)
+                .eq(UpPattenUsage::getLayoutSequence, patternSequence));
+        map.put("upPattenUsage", upPattenUsage);
         return map;
 
     }
@@ -291,27 +308,19 @@
         return outEdgStorageCageDetails;
     }
 
+
     @Override
-    public String identControls(IdentWornRequest request) {
+    public String identControls(DamageRequest request) {
         //灏嗚瘑鍒牬鎹熺殑鐜荤拑鐩存帴鍔犲叆鐮存崯琛�
-        Damage damage = new Damage();
-        BeanUtils.copyProperties(request, damage);
-        damage.setType(request.getState());
-        damage.setRemark("");
-        damage.setStatus(0);
-        damageService.insertDamage(damage);
+        damageService.autoSubmitReport(request.getGlassId(), request.getLine(), request.getWorkingProcedure(), "鎺扮墖璇嗗埆", request.getState());
         return "success";
     }
 
     @Override
-    public String edgReportStatus(IdentWornRequest request) {
+    public String edgReportStatus(DamageRequest request) {
         //灏嗙(杈归槦鍒楃牬鎹熺殑鐜荤拑鐩存帴鍔犲叆鐮存崯琛�
-        Damage damage = new Damage();
-        BeanUtils.copyProperties(request, damage);
-        damage.setType(request.getState());
-        damage.setRemark("");
-        damage.setStatus(0);
-        damageService.insertDamage(damage);
+        damageService.autoSubmitReport(request.getGlassId(), request.getLine(), request.getWorkingProcedure(), "纾ㄨ竟娓呮礂", request.getState());
+
         //淇敼纾ㄨ竟闃熷垪鏁版嵁鐘舵��
         edgGlassTaskInfoService.update(new LambdaUpdateWrapper<EdgGlassTaskInfo>()
                 .set(EdgGlassTaskInfo::getState, request.getState()).eq(EdgGlassTaskInfo::getGlassId, request.getGlassId()));
@@ -333,7 +342,7 @@
             //璇存槑姝ょ幓鐠冩病鏈夎繘杩囩悊鐗�
             return true;
         } else {
-            List<Damage> damage = damageMapper.selectList(new LambdaQueryWrapper<Damage>()
+            List<Damage> damage = damageService.list(new LambdaQueryWrapper<Damage>()
                     .eq(Damage::getGlassId, glassId)
                     .and(wrapper -> wrapper.eq(Damage::getType, 8).or().eq(Damage::getType, 9))
             );
@@ -345,7 +354,39 @@
     }
 
     @Override
-    public EdgStorageCageDetails queryEdgStorageDetailsBySize(int deviceId, int currentSlot, double width, double height) {
-        return baseMapper.queryEdgStorageDetailsBySize(deviceId, currentSlot, width, height);
+    public EdgStorageCageDetails queryEdgStorageDetailsBySize(int deviceId, int currentSlot, double width, double height, int cell, int maxThickness) {
+        return baseMapper.queryEdgStorageDetailsBySize(deviceId, currentSlot, width, height, cell, maxThickness);
+    }
+
+    @Override
+    public EdgStorageCageDetails queryEdgStorageDetailsByLimitSize(int deviceId, Integer currentCell, double width, double height, int cell, int minOneFirstLength, int minOneSecondLength, int maxTwoFirstLength, int maxTwoSecondLength, int maxThickness) {
+        return baseMapper.queryEdgStorageDetailsByLimitSize(deviceId, currentCell, width, height, cell, minOneFirstLength, minOneSecondLength, maxTwoFirstLength, maxTwoSecondLength, maxThickness);
+    }
+
+    @Override
+    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()));
+        return "success";
+    }
+
+    @Override
+    public List<EdgSlotRemainVO> querySlotRemainWidth(int cellLength, int glassGap) {
+        return this.baseMapper.querySlotRemainWidth(cellLength, glassGap);
+    }
+
+    @Override
+    public List<PieChartVO> queryPieChart() {
+        return this.baseMapper.queryPieChart();
+    }
+
+    @Override
+    public Boolean identControlsByPatternSequence(DamageRequest request) {
+        for (String glassId : request.getGlassIdList()) {
+            //鎺扮墖鎶ョ牬鎹�
+            damageService.autoSubmitReport(glassId, request.getLine(), request.getWorkingProcedure(), "鍒囧壊", request.getState());
+        }
+        return Boolean.TRUE;
     }
 }

--
Gitblit v1.8.0