From 6db39c1dfb1dca966983652e4360672cb58a96f6 Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期日, 31 三月 2024 12:40:45 +0800
Subject: [PATCH] 代码更新

---
 springboot-vue3/src/main/java/com/example/springboot/service/StorageCageService.java |   43 ++++++++++++++++++++++++++++++++++++-------
 1 files changed, 36 insertions(+), 7 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 883b3db..18a8576 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
@@ -21,6 +21,7 @@
 import com.example.springboot.entity.StorageTask;
 import com.example.springboot.entity.device.PlcParameterObject;
 import com.example.springboot.mapper.HomeMapper;
+import com.example.springboot.mapper.QueueMapper;
 import com.fasterxml.jackson.databind.ObjectMapper;
 
 @Service
@@ -30,6 +31,9 @@
 
     @Autowired
     private OutSliceServive outSliceServive;
+
+    @Autowired
+    private QueueMapper QueueMapper;
 
     @Autowired
     private SpianService spianService;
@@ -315,6 +319,8 @@
         homeMapper.UpdateQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(),
                 glassInfo.getGlasstype());
         Map<String, Object> map = new HashMap<>();
+        PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
+        S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1);
         map.put("message", "200");
         return Result.success(map);
     }
@@ -328,8 +334,10 @@
         // 璇诲彇DB105鍖烘枃浠�
         PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
         // 绉婚櫎
-        // S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),
-        // (short) 3);
+        S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 3);
+        //鍒犻櫎鏁版嵁
+        QueueMapper.DeleteErrorQueue();
+        
         // plcmes.getPlcParameter("GaToMES").setValue("3");
         Map<String, Object> map = new HashMap<>();
         map.put("message", "200");
@@ -341,8 +349,9 @@
         // 璇诲彇DB105鍖烘枃浠�
         PlcParameterObject plcmes = PLCAutoMes.PlcMesObject;
         // 閲嶆柊娴嬮噺
-        // S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),
-        // (short) 2);
+        S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 2);
+        //鍒犻櫎鏁版嵁
+        QueueMapper.DeleteErrorQueue();
         // plcmes.getPlcParameter("GaToMES").setValue("2");
         Map<String, Object> map = new HashMap<>();
         map.put("message", "200");
@@ -356,7 +365,8 @@
         List<Map> TypeDatas = homeMapper.SelectType();
         Map<String, String> TypeData = new HashMap<String, String>();// 寰楀埌澶勭悊瀹屽悗鎵�鏈夌殑绫诲瀷
         Map<String, Integer> groupby=new HashMap<String, Integer>(); // 寰楀埌澶勭悊瀹屽悗鎵�鏈夋�诲眰鏁�;
-
+        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
                         &&
@@ -370,6 +380,17 @@
 
         RemoveErrorData.forEach(item -> {
             String key=item.get("order").toString()+"_"+item.get("matching").toString();
+            String keyCount=item.get("order").toString()+"_"+item.get("matching").toString()+"_"+item.get("tier").toString();
+            String keyCountSum=item.get("order").toString()+"_"+item.get("matching").toString()+"_Sum";//璁㈠崟鎬绘暟
+            if (OrderFinishedProduct.get(keyCount)!=null) {
+                Integer count=OrderFinishedProduct.get(keyCount)+1;
+                Integer sumcount=OrderFinishedProduct.get(keyCountSum)+Integer.parseInt(item.get("quantity").toString());
+                OrderFinishedProduct.put(keyCount,count);
+                OrderFinishedProduct.put(keyCountSum,sumcount);
+            }else if(OrderFinishedProduct.get(keyCount)==null&&groupby.get(key)==null){
+                OrderFinishedProduct.put(keyCount,1);
+                OrderFinishedProduct.put(keyCountSum,Integer.parseInt(item.get("quantity").toString()));
+            }
             if (groupby.get(key)!=null) {
                 Integer Tiers=groupby.get(key)+1;
                 groupby.put(key, Tiers);
@@ -380,6 +401,7 @@
 
         System.out.println(RemoveErrorData.size());
         // 澶勭悊瀹屾垚 娣诲姞鏁版嵁搴�
+        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();
@@ -390,16 +412,23 @@
             Integer glasstype;
             if (TypeData.get(key) == null) {
                 glasstype = homeMapper.SelectMaxType();
+                if (glasstype==null) {
+                    glasstype=1;
+                }
             } else {
                 glasstype = Integer.valueOf(value);
             }
+            //
             homeMapper.AddGlassinfo(map.get("order").toString(), glasstype,
-                    Integer.parseInt(map.get("glasstype").toString()) // 闇�瑕佽绠� 閰嶇墖ID
-                    , glasstype+"" // 闇�瑕佽绠� 鐜荤拑ID
+                    Integer.parseInt(map.get("matching").toString()) // 闇�瑕佽绠� 閰嶇墖ID
+                    ,map.get("order").toString()+"-"+count+"" // 闇�瑕佽绠� 鐜荤拑ID
                     , 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));// 闇�瑕佽绠楁�诲眰鏁�
+            //璁㈠崟鍐呮�诲眰鏁�
+            homeMapper.InsertFlowcard(map.get("order").toString(),OrderFinishedProduct.get(tierkey+"_Sum")); 
+            count++;
         }
         Map<String, Object> ResultCode = new HashMap<>();
         ResultCode.put("message", "200");

--
Gitblit v1.8.0