From 2d92826d942cd4c06e1f415d4a3896b99ec65e2b Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期四, 07 十一月 2024 19:32:00 +0800
Subject: [PATCH] 更改配片逻辑

---
 springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java |  153 +++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 113 insertions(+), 40 deletions(-)

diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java b/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java
index c83305f..401e8cf 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java
@@ -16,10 +16,12 @@
 import com.example.springboot.component.S7control;
 import com.example.springboot.entity.Flowcard;
 import com.example.springboot.entity.GlassInfo;
+import com.example.springboot.entity.MeasureSetting;
 import com.example.springboot.entity.Queue;
 import com.example.springboot.entity.StorageCage;
 import com.example.springboot.entity.StorageTask;
 import com.example.springboot.entity.device.PlcParameterObject;
+import com.example.springboot.mapper.AlbaniaMapper;
 import com.example.springboot.mapper.HomeMapper;
 import com.example.springboot.mapper.QueueMapper;
 import com.fasterxml.jackson.databind.ObjectMapper;
@@ -37,6 +39,8 @@
 
     @Autowired
     private SpianService spianService;
+    @Autowired
+    private AlbaniaMapper albaniaMapper;
 
     public void EndTask(int types) {
         String A01glassid1 = spianService.queGlassid("DB103.128", 14).toString();
@@ -200,6 +204,7 @@
         } else {
             if (id == 1) {
                 // 璋冪敤浼嶅瓨鍌ㄨ繃绋�
+                System.out.println("璋冪敤涓婄墖鍑芥暟");
                 zhi = spianService.selectAll(queue.getglassId());
                 if (zhi == 200) {
                     homeMapper.InsertQueueGlassId(queue, id);
@@ -233,7 +238,7 @@
     // 鏌ヨ杩�/鍑虹墖浠诲姟
     public List<StorageTask> SelectStorageTask(int task_type) {
         List<StorageTask> storageTasks = new ArrayList<>();
-        String loadrack="0";
+        String loadrack = "0";
         if (task_type == 0) {
             storageTasks = homeMapper.SelectStorageTask(task_type);
         } else {
@@ -241,30 +246,85 @@
         }
         for (StorageTask storageTask : storageTasks) {
             if (task_type == 0) {
-                loadrack=storageTask.getLoadrack();
-            }else{
-                loadrack=storageTask.getShelfRack();
+                loadrack = storageTask.getLoadrack();
+            } else {
+                loadrack = storageTask.getShelfRack();
             }
             storageTask.setstorageCage(homeMapper.SelectStorageByCell(loadrack));
         }
         return storageTasks;
     }
 
+    // 鏌ヨ杩�/鍑虹墖浠诲姟
+    public List<GlassInfo> SelectMeasure() {
+        return homeMapper.SelectMeasure();
+    }
+     // 鏌ヨ褰撳墠鑶滅郴鍘氬害
+     public MeasureSetting SelectSetting() {
+        return homeMapper.SelectMeasureSetting();
+    }
+     // 鏌ヨ娴嬮噺瀹介珮鍘氳啘绯�
+     public Map StorageCageForm() {
+        return homeMapper.SelectMeasureWidthHeight();
+    }
+
+
     // 鎵嬪姩瀹屾垚浠诲姟
-    public Result FinishTask(Integer id) {
-        StorageTask storageTask = homeMapper.SelectStorageTaskById(id);// 鑾峰彇浠诲姟淇℃伅
-        homeMapper.FinishTask(storageTask.getId());// 瀹屾垚浠诲姟
-        if (storageTask.getTaskType().equals("0")) {
-            UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1
-            homeMapper.DeletequeueByGlassid(storageTask.getGlassId());
-        } else {
-            StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack());
-            if (storageCage.getNumber() > 1) {
-                UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), -1);// 鐜荤拑鏁伴噺-1
-            } else {
-                UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅
+    public Result FinishTask() {
+        for (int i = 1; i < 7; i++) {
+            int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲�
+            System.out.println("浠诲姟鏁伴噺:"+taskcont);
+            if (taskcont == 0) {
+                break;
             }
-            homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺
+            StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅
+            if (storageTask.getTaskType().equals("0")) {
+                System.out.println("瀹屾垚杩涚墖浠诲姟:"+storageTask.getId());
+                homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
+                UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1
+                homeMapper.DeletequeueByGlassid(storageTask.getGlassId());
+            } else {
+                System.out.println("瀹屾垚鍑虹墖浠诲姟:"+storageTask.getId());
+                homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
+                StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack());
+                if (storageCage.getNumber()==null||storageCage.getNumber() ==0) {
+                    UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅
+                }
+                // homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺
+
+            }
+        }
+        Map<String, Object> map = new HashMap<>();
+        map.put("message", "200");
+        return Result.success(map);
+    }
+
+    // 鑷姩瀹屾垚浠诲姟
+    public Result LoseTask() {
+        for (int i = 1; i < 7; i++) {
+            int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲�
+            System.out.println("浠诲姟鏁伴噺:"+taskcont);
+            if (taskcont == 0) {
+                break;
+            }
+            StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅
+            if (storageTask.getTaskType().equals("0")) {
+                System.out.println("瀹屾垚杩涚墖浠诲姟:"+storageTask.getId());
+                homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
+                UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1
+                homeMapper.DeletequeueByGlassid(storageTask.getGlassId());
+            } else {
+                System.out.println("瀹屾垚鍑虹墖浠诲姟:"+storageTask.getId());
+                homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
+                StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack());
+                if (storageCage.getNumber() > 1) {
+                    UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), -1);// 鐜荤拑鏁伴噺-1
+                } else {
+                    UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅
+                }
+                homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺
+
+            }
         }
         Map<String, Object> map = new HashMap<>();
         map.put("message", "200");
@@ -297,21 +357,21 @@
         return OrderTask;
     }
 
-    // 寮�濮嬩换鍔�
+    // 寮�濮嬪嚭鐗�
     public Result ClaimTasks(String flowcard, Integer state, Integer line) {
-        int count=homeMapper.SelectTaskCount(flowcard,line);
+        int count = homeMapper.SelectTaskCount(flowcard, line);
         Map<String, Object> map = new HashMap<>();
-        if(count==0){
+        if (count == 0) {
             if (state == 1) {
                 homeMapper.ClaimTasks(flowcard, 0, line);
             } else {
                 homeMapper.ClaimTasks(flowcard, 1, line);
             }
             map.put("message", "200");
-        }else{
+        } else {
             map.put("message", "300");
         }
-        
+
         return Result.success(map);
     }
 
@@ -329,8 +389,10 @@
 
     // 淇敼娴嬮噺淇℃伅
     public Result UpdateQueue(GlassInfo glassInfo) {
-        homeMapper.UpdateQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(),
-                glassInfo.getGlasstype(), glassInfo.getThickness(), glassInfo.getTier());
+        // 鍒犻櫎鏁版嵁
+        QueueMapper.DeleteQueue();
+        homeMapper.AddQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(),
+                glassInfo.getGlasstype(), glassInfo.getThickness(), glassInfo.getTier(),glassInfo.getMateid());
         Map<String, Object> map = new HashMap<>();
         PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
         S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1);
@@ -357,20 +419,31 @@
         return Result.success(map);
     }
 
-    // 寮�濮嬪伐绋�
-    public Result StartChange(String flowcard) {
-        homeMapper.StartChange(flowcard, 1);
+    // 寮�濮嬩笂鐗�
+    public Result StartChange(String flowcard,int orderstate) {
+        homeMapper.StartChange(flowcard, orderstate);
         Map<String, Object> map = new HashMap<>();
-        int state=homeMapper.selectStartChange(flowcard);
+        int state = homeMapper.selectStartChange(flowcard);
         map.put("message", "200");
         return Result.success(map);
     }
-     // 鍒犻櫎宸ョ▼
-     public Result deleteTasks(String flowcard) {
-        int aa=homeMapper.deleteFlowcard(flowcard.trim());
+
+    // 鍒犻櫎宸ョ▼
+    public Result deleteTasks(Map num) {
+        String flowcard = (String) num.get("num");
+        int aa = homeMapper.deleteFlowcard(flowcard.trim());
         homeMapper.deleteGlassinfo(flowcard.trim());
+        System.out.println(flowcard);
         Map<String, Object> map = new HashMap<>();
-        map.put("message", aa);
+        map.put("message", flowcard.trim());
+        return Result.success(map);
+    }
+
+    // 淇濆瓨娴嬮噺璁剧疆
+    public Result SaveMeasure(String films, Integer thickness) {
+        int Measure = homeMapper.SaveMeasure(films, thickness);
+        Map<String, Object> map = new HashMap<>();
+        map.put("message", Measure);
         return Result.success(map);
     }
 
@@ -398,7 +471,7 @@
         Map<String, Integer> OrderFinishedProduct = new HashMap<String, Integer>(); // 寰楀埌澶勭悊瀹屽悗璁㈠崟鎴愬搧鎬绘暟閲�;
         // "order zong 0 1 10 2 10"
         List<Map> RemoveErrorData = IportDataStr.stream()
-                .filter(item -> (item.get("order") != null && item.get("glasstype") != null && item.get("tier") != null
+                .filter(item -> (item.get("order") != null && item.get("tier") != null
                         &&
                         item.get("films") != null && item.get("base") != null && item.get("height") != null
                         && item.get("thickness") != null && item.get("quantity") != null
@@ -437,22 +510,22 @@
         int count = 1;
         for (Map map : RemoveErrorData) {
             String key = map.get("base").toString() + "_" + map.get("height").toString() + "_"
-                    + map.get("thickness").toString() + "_" + map.get("films").toString();
- 
+                    + map.get("thickness").toString() + "_" + map.get("films").toString()+ "_" + map.get("order").toString();
+
             String tierkey = map.get("order").toString() + "_" + map.get("matching").toString();
 
             String value = TypeData.get(key);
             Integer glasstype;
-            System.out.println(key+":"+TypeData.get(key));
+            System.out.println(key + ":" + TypeData.get(key));
             if (TypeData.get(key) == null) {
 
                 glasstype = homeMapper.SelectMaxTypes(key);
-                if(glasstype==null){
-                glasstype = homeMapper.SelectMaxType();
-                 }
+                if (glasstype == null) {
+                    glasstype = homeMapper.SelectMaxType();
+                }
                 if (glasstype == null) {
                     glasstype = 1;
-                } 
+                }
             } else {
                 glasstype = Integer.valueOf(value);
             }

--
Gitblit v1.8.0