From 5780c58879296cfced72012c8831c1d3cf4dafb2 Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期四, 14 十一月 2024 00:33:13 +0800
Subject: [PATCH] 增加任务队列 任务日志,客户名称字段

---
 springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java |  139 ++++++++++++++++++++++++++++++++++++----------
 1 files changed, 109 insertions(+), 30 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 401e8cf..47c8255 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
@@ -22,6 +22,7 @@
 import com.example.springboot.entity.StorageTask;
 import com.example.springboot.entity.device.PlcParameterObject;
 import com.example.springboot.mapper.AlbaniaMapper;
+import com.example.springboot.mapper.GlassInfoMapper;
 import com.example.springboot.mapper.HomeMapper;
 import com.example.springboot.mapper.QueueMapper;
 import com.fasterxml.jackson.databind.ObjectMapper;
@@ -41,6 +42,8 @@
     private SpianService spianService;
     @Autowired
     private AlbaniaMapper albaniaMapper;
+    @Autowired
+    private GlassInfoMapper glassInfoMapper;
 
     public void EndTask(int types) {
         String A01glassid1 = spianService.queGlassid("DB103.128", 14).toString();
@@ -235,6 +238,23 @@
         return Result.success(map);
     }
 
+    // 鎸囧畾鏍煎瓙鍑虹墖
+    public Result AddOutGlass(Integer cell,Integer glasstype) {
+        GlassInfo glass = albaniaMapper.SelectGlassInfo(glasstype);
+        Map<String, Object> map = new HashMap<>();
+        if(glass!=null){
+        albaniaMapper.AddFinishNumber(glass.getFlowcard(),glass.getMateid(), glass.getTier());
+        UpdateStroageCageByCell(cell, -1);// 鐜荤拑鏁伴噺-1
+        // 澧炲姞鍑虹墖闃熷垪鐨勪换鍔�
+        albaniaMapper.InsertOutTask(1, 0, cell, 2001,glass.getGlassid(),
+        glass.getGlasstype(), glass.getFlowcard(),glass.getMateid(),glass.getTier());
+        map.put("message", "200");
+        }else{
+        map.put("message", "300");
+        }
+        return Result.success(map);
+    }
+
     // 鏌ヨ杩�/鍑虹墖浠诲姟
     public List<StorageTask> SelectStorageTask(int task_type) {
         List<StorageTask> storageTasks = new ArrayList<>();
@@ -250,47 +270,85 @@
             } else {
                 loadrack = storageTask.getShelfRack();
             }
-            storageTask.setstorageCage(homeMapper.SelectStorageByCell(loadrack));
+            // storageTask.setstorageCage(homeMapper.SelectStorageByCell(loadrack));
+            storageTask.setstorageCage(homeMapper.SelectStorageByCellGlass(storageTask.getId()));
+
         }
         return storageTasks;
+    }
+    
+    //鏌ヨ鍑虹墖闃熷垪
+    public List<Map> SelectOutTask() {
+        return homeMapper.SelectOutTask();
+    }
+     //鏌ヨ鍑虹墖闃熷垪
+     public List<Map> SelectOutLog() {
+        return homeMapper.SelectOutLog();
     }
 
     // 鏌ヨ杩�/鍑虹墖浠诲姟
     public List<GlassInfo> SelectMeasure() {
         return homeMapper.SelectMeasure();
     }
-     // 鏌ヨ褰撳墠鑶滅郴鍘氬害
-     public MeasureSetting SelectSetting() {
+
+    // 鏌ヨ褰撳墠鑶滅郴鍘氬害
+    public MeasureSetting SelectSetting() {
         return homeMapper.SelectMeasureSetting();
     }
-     // 鏌ヨ娴嬮噺瀹介珮鍘氳啘绯�
-     public Map StorageCageForm() {
+
+    // 鏌ヨ娴嬮噺瀹介珮鍘氳啘绯�
+    public Map StorageCageForm() {
         return homeMapper.SelectMeasureWidthHeight();
     }
 
-
-    // 鎵嬪姩瀹屾垚浠诲姟
-    public Result FinishTask() {
+    // 鎵嬪姩缁撴潫浠诲姟
+    public Result TerminateTask(int id) {
         for (int i = 1; i < 7; i++) {
             int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲�
-            System.out.println("浠诲姟鏁伴噺:"+taskcont);
+            System.out.println("浠诲姟鏁伴噺:" + taskcont);
             if (taskcont == 0) {
                 break;
             }
             StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅
             if (storageTask.getTaskType().equals("0")) {
-                System.out.println("瀹屾垚杩涚墖浠诲姟:"+storageTask.getId());
+                System.out.println("缁撴潫杩涚墖浠诲姟:" + storageTask.getId());
+                homeMapper.FinishTask(storageTask.getId(), 2);// 瀹屾垚浠诲姟
+                homeMapper.DeletequeueByGlassid(storageTask.getGlasstype().toString());
+                glassInfoMapper.updateGlassNumber(storageTask.getGlasstype());// 鍑忓皯鎵弿娆℃暟
+            } else {
+                System.out.println("缁撴潫鍑虹墖浠诲姟:" + storageTask.getId());
+                homeMapper.FinishTask(storageTask.getId(), 2);// 瀹屾垚浠诲姟
+                UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 1);// 鐜荤拑鏁伴噺+1
+                homeMapper.OutGlassNo(storageTask.getGlasstype());// 杩樺師鍑虹墖瀹屾垚鏁伴噺
+            }
+        }
+        Map<String, Object> map = new HashMap<>();
+        return Result.success(map);
+    }
+
+    // 鎵嬪姩瀹屾垚浠诲姟
+    public Result FinishTask() {
+        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());
+                homeMapper.DeletequeueByGlassid(storageTask.getGlasstype().toString());
             } else {
-                System.out.println("瀹屾垚鍑虹墖浠诲姟:"+storageTask.getId());
+                System.out.println("瀹屾垚鍑虹墖浠诲姟:" + storageTask.getId());
                 homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
                 StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack());
-                if (storageCage.getNumber()==null||storageCage.getNumber() ==0) {
+                if (storageCage.getNumber() == null || storageCage.getNumber() == 0) {
                     UpdateStroageCageByCell(Integer.parseInt(storageTask.getShelfRack()), 0);// 娓呴櫎鏍煎唴淇℃伅
                 }
-                // homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(), storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺
+                // homeMapper.AddGlassNo(storageTask.getFlowcard(), storageTask.getMateid(),
+                // storageTask.geTier());// 娣诲姞鍑虹墖瀹屾垚鏁伴噺
 
             }
         }
@@ -303,18 +361,18 @@
     public Result LoseTask() {
         for (int i = 1; i < 7; i++) {
             int taskcont = albaniaMapper.SelectTaskcount(); // 姝e湪杩涜鐨勪换鍔℃暟閲�
-            System.out.println("浠诲姟鏁伴噺:"+taskcont);
+            System.out.println("浠诲姟鏁伴噺:" + taskcont);
             if (taskcont == 0) {
                 break;
             }
             StorageTask storageTask = homeMapper.SelectStorageTaskById();// 鑾峰彇浠诲姟淇℃伅
             if (storageTask.getTaskType().equals("0")) {
-                System.out.println("瀹屾垚杩涚墖浠诲姟:"+storageTask.getId());
+                System.out.println("瀹屾垚杩涚墖浠诲姟:" + storageTask.getId());
                 homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
                 UpdateStroageCageByCell(Integer.parseInt(storageTask.getLoadrack()), 1);// 鐜荤拑鏁伴噺+1
-                homeMapper.DeletequeueByGlassid(storageTask.getGlassId());
+                homeMapper.DeletequeueByGlassid(storageTask.getGlasstype().toString());
             } else {
-                System.out.println("瀹屾垚鍑虹墖浠诲姟:"+storageTask.getId());
+                System.out.println("瀹屾垚鍑虹墖浠诲姟:" + storageTask.getId());
                 homeMapper.FinishTask(storageTask.getId(), 1);// 瀹屾垚浠诲姟
                 StorageCage storageCage = homeMapper.SelectStorageByCell(storageTask.getShelfRack());
                 if (storageCage.getNumber() > 1) {
@@ -387,16 +445,22 @@
         return Result.success(map);
     }
 
-    // 淇敼娴嬮噺淇℃伅
+    // 浜哄伐鍖归厤淇敼娴嬮噺淇℃伅
     public Result UpdateQueue(GlassInfo glassInfo) {
         // 鍒犻櫎鏁版嵁
-        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);
-        map.put("message", "200");
+        // QueueMapper.DeleteQueue();
+        System.out.println("浜哄伐鍖归厤ID锛�"+glassInfo.getMateid()+"鑶滅郴:"+glassInfo.getFilms());
+        int count = homeMapper.SelectQueue();
+        if (count > 0) {
+            homeMapper.UpdateQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(),
+                    glassInfo.getGlasstype(), glassInfo.getThickness(), glassInfo.getTier(), glassInfo.getMateid());
+            PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
+            S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(), (short) 1);
+            map.put("message", "200");
+        } else {
+            map.put("message", "300");
+        }
         return Result.success(map);
     }
 
@@ -420,10 +484,24 @@
     }
 
     // 寮�濮嬩笂鐗�
-    public Result StartChange(String flowcard,int orderstate) {
+    public Result StartChange(String flowcard, int orderstate) {
         homeMapper.StartChange(flowcard, orderstate);
         Map<String, Object> map = new HashMap<>();
         int state = homeMapper.selectStartChange(flowcard);
+        map.put("message", "200");
+        return Result.success(map);
+    }
+    // 寮�濮�/鏆傚仠鍑虹墖闃熷垪
+    public Result UpdateOutTask(Integer id, Integer state) {
+        homeMapper.UpdateOutTask(id, state);
+        Map<String, Object> map = new HashMap<>();
+        map.put("message", "200");
+        return Result.success(map);
+    }
+    //鍒犻櫎鍑虹墖闃熷垪
+    public Result DeleteOutTask(Integer id) {
+        homeMapper.DeleteOutTask(id);
+        Map<String, Object> map = new HashMap<>();
         map.put("message", "200");
         return Result.success(map);
     }
@@ -475,7 +553,7 @@
                         &&
                         item.get("films") != null && item.get("base") != null && item.get("height") != null
                         && item.get("thickness") != null && item.get("quantity") != null
-                        && item.get("matching") != null))
+                        && item.get("matching") != null)&& item.get("Customer") != null)
                 .collect(Collectors.toList());
 
         TypeDatas.forEach(item -> {
@@ -510,7 +588,8 @@
         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("order").toString();
+                    + map.get("thickness").toString() + "_" + map.get("films").toString() + "_"
+                    + map.get("order").toString() + "_" + map.get("matching").toString();
 
             String tierkey = map.get("order").toString() + "_" + map.get("matching").toString();
 
@@ -536,9 +615,9 @@
                     , Integer.parseInt(map.get("tier").toString()), map.get("films").toString(),
                     Double.parseDouble(map.get("base").toString()), Double.parseDouble(map.get("height").toString()),
                     Double.parseDouble(map.get("thickness").toString()),
-                    Integer.parseInt(map.get("quantity").toString()), groupby.get(tierkey));// 闇�瑕佽绠楁�诲眰鏁�
+                    Integer.parseInt(map.get("quantity").toString()), groupby.get(tierkey),map.get("Customer").toString());// 闇�瑕佽绠楁�诲眰鏁�
             // 璁㈠崟鍐呮�诲眰鏁�
-            homeMapper.InsertFlowcard(map.get("order").toString(), OrderFinishedProduct.get(tierkey + "_Sum"));
+            homeMapper.InsertFlowcard(map.get("order").toString(), OrderFinishedProduct.get(tierkey + "_Sum"), map.get("Customer").toString());
             count++;
         }
         Map<String, Object> ResultCode = new HashMap<>();

--
Gitblit v1.8.0