From 95088616493655e419469a7d1be7af7bb30ae8ab Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期二, 18 二月 2025 15:43:36 +0800
Subject: [PATCH] 增加上片防止重复保存

---
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java                  |   11 +++++++++--
 hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java         |   21 +++++++++++++++++++--
 hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/controller/EngineeringController.java |   11 +++++++++--
 3 files changed, 37 insertions(+), 6 deletions(-)

diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java
index 4e06e76..0066379 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.mes.engineering.entity.Engineering;
+import com.mes.glassinfo.entity.GlassInfo;
 
 import java.util.List;
 
@@ -40,13 +41,19 @@
     Engineering selectInitiate(Integer state);
     Engineering selectInitiates(Integer state,Integer cell);
     /**
-     * 鏌ヨ鏄惁鏈変笂鐗囦换鍔w
+     * 鏌ヨ宸ョ▼琛ㄦ槸鍚﹀凡鏈夊伐绋嬪彿
      *
      * @return Engineering
      */
-    Engineering selectUpInitiate(Integer state, Integer equipmentId);
+    Engineering selectUpInitiate(String engineerId);
 
     /**
+     * 鏌ヨ灏忕墖琛ㄦ槸鍚﹀凡鏈夊伐绋嬪彿
+     *
+     * @return Engineering
+     */
+    GlassInfo selectGlassinfoIsnull(String engineerId);
+    /**
      * 鏌ヨ涓婄墖浠诲姟
      *
      * @return Engineering
diff --git a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
index ac51eae..93cfed3 100644
--- a/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
+++ b/hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
@@ -7,6 +7,8 @@
 import com.mes.engineering.entity.Engineering;
 import com.mes.engineering.mapper.EngineeringMapper;
 import com.mes.engineering.service.EngineeringService;
+import com.mes.glassinfo.entity.GlassInfo;
+import com.mes.glassinfo.mapper.GlassInfoMapper;
 import com.mes.pp.entity.OptimizeProject;
 import com.mes.pp.mapper.OptimizeProjectMapper;
 import lombok.extern.slf4j.Slf4j;
@@ -33,6 +35,8 @@
     OptimizeProjectMapper optimizeProjectMapper;
     @Autowired
     private EngineeringMapper engineeringMapper;
+    @Autowired
+    private GlassInfoMapper glassInfoMapper;
 
     //寮�濮�/鏆傚仠浠诲姟
     @Override
@@ -114,8 +118,21 @@
     }
 
     @Override
-    public Engineering selectUpInitiate(Integer state, Integer equipmentId) {
-        return null;
+    public Engineering selectUpInitiate(String engineerId) {
+        QueryWrapper<Engineering> wrapper = new QueryWrapper<>();
+        wrapper.eq("engineer_id", engineerId)
+                .last("limit 1");
+        return engineeringMapper.selectOne(wrapper);
+
+    }
+
+    @Override
+    public GlassInfo selectGlassinfoIsnull(String engineerId) {
+        QueryWrapper<GlassInfo> wrapper = new QueryWrapper<>();
+        wrapper.eq("engineer_id", engineerId)
+                .last("limit 1");
+        return glassInfoMapper.selectOne(wrapper);
+
     }
 
     @Override
diff --git a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/controller/EngineeringController.java b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/controller/EngineeringController.java
index 07c4361..bf20572 100644
--- a/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/controller/EngineeringController.java
+++ b/hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/engineering/controller/EngineeringController.java
@@ -77,12 +77,14 @@
     public  Result <Boolean> changeTask(@RequestBody Engineering engineering) {
         log.info("engineeringId:{}", engineering);
         UpPattenUsage upPattenUsage = upPattenUsageService.selectedEngineering(engineering.getEngineerId());
-        if (upPattenUsage != null) {
+        Engineering engineerings = engineeringService.selectUpInitiate(engineering.getEngineerId());
+        GlassInfo glassInfos = engineeringService.selectGlassinfoIsnull(engineering.getEngineerId());
+        if (upPattenUsage != null && engineerings != null && glassInfos != null) {
             boolean work = engineeringService.changeTasks(engineering);
             List<UpPattenUsage> glass = upPattenUsageService.prioritylist();
             optimizeProjectService.changeTask(engineering.getEngineerId(), 200);
             return Result.build(200, "寮�濮嬩笂鐗�", work);
-        } else {
+        } else if (upPattenUsage == null && engineerings == null && glassInfos == null) {
             List<UpPattenUsage> upPattenUsages = upPattenUsageService.selectSaveUpPattenUsage(engineering.getEngineerId());
             log.info("灏嗘煡璇㈠嚭鐨刄pPattenUsage鏁版嵁淇濆瓨鍒版暟鎹簱琛ㄩ噷");
             upPattenUsageService.saveUpPattenUsage(upPattenUsages);
@@ -102,6 +104,11 @@
             }else {
                 return Result.build(200, "淇濆瓨澶辫触"+engineering.getEngineerId(), false);
             }
+        } else {
+            upPattenUsageService.deleteTask(engineering.getEngineerId());
+            engineeringService.deleteTask(engineering.getEngineerId());
+            glassInfoService.deleteTask(engineering.getEngineerId());
+            return Result.build(200, "璇烽噸鏂扮偣鍑讳笂鐗�" + engineering.getEngineerId(), true);
         }
 
     }

--
Gitblit v1.8.0