From 42882f4846d796855e803786bac69a5699b50cb9 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期二, 12 三月 2024 14:56:21 +0800
Subject: [PATCH] 测量逻辑

---
 springboot-vue3/src/main/java/com/example/springboot/service/HomeService.java   |   43 +++++++++++++++++++++
 springboot-vue3/src/main/java/MyGenerator.java                                  |    2 
 springboot-vue3/src/main/java/com/example/springboot/component/S7control.java   |    2 
 springboot-vue3/src/main/java/com/example/springboot/entity/MeasureSetting.java |    2 +
 springboot-vue3/src/main/resources/application.properties                       |    2 
 springboot-vue3/src/main/java/com/example/springboot/entity/GlassInfo.java      |    2 
 springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java     |   48 +++++++++++++++++++++---
 7 files changed, 90 insertions(+), 11 deletions(-)

diff --git a/springboot-vue3/src/main/java/MyGenerator.java b/springboot-vue3/src/main/java/MyGenerator.java
index 46475de..9343999 100644
--- a/springboot-vue3/src/main/java/MyGenerator.java
+++ b/springboot-vue3/src/main/java/MyGenerator.java
@@ -18,7 +18,7 @@
 public class MyGenerator {
 
     /** 鏁版嵁婧愰厤缃�*/
-    private static final String jdbc = "jdbc:mysql://localhost:3306/canadames?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
+    private static final String jdbc = "jdbc:mysql://10.153.19.150:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai";
     private static final String driverName = "com.mysql.cj.jdbc.Driver";
 
     private static final String username = "root";
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
index 448fefc..6754e2d 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
@@ -5,23 +5,35 @@
 import java.util.List;
 import com.example.springboot.service.*;
 import org.springframework.beans.factory.annotation.Autowired;
+
+import com.example.springboot.entity.GlassInfo;
+import com.example.springboot.entity.MeasureSetting;
 import com.example.springboot.entity.Out_slice;
 import com.example.springboot.entity.Queue;
 import com.example.springboot.entity.StorageCage;
 import com.example.springboot.entity.alarmmg;
 import com.example.springboot.entity.north_glass_buffer1;
 import com.example.springboot.mapper.HomeMapper;
+import com.example.springboot.mapper.GlassInfoMapper;
+import com.example.springboot.mapper.MeasureSettingMapper;
+import com.example.springboot.mapper.QueueMapper;
 import com.example.springboot.mapper.SpianMapper;
 
 public class Plchome extends Thread {
 
     @Autowired
     private HomeMapper homeMapper;
+    @Autowired
+    private HomeService HomeService;
+    private QueueMapper QueueMapper;
+    private GlassInfoMapper GlassInfoMapper;
+    private MeasureSettingMapper MeasureSettingMapper;
     private OutSliceServive outSliceServive;
     private SpianMapper spianMapper;
     private SpianService spianService;
     private North_Glass_Buffer1Service north_Glass_Buffer1Service;
     private JdbcConnections dbserve;
+    
     // 鍑虹墖闃熷垪鏄惁鍏佽鍑虹墖
     public static Boolean isAllowQueue = true;
     public static Boolean isAllowReordering = true;
@@ -53,6 +65,8 @@
             try {
                 Thread.sleep(1000);
                 // 娉ㄥ叆mapper
+                HomeService  = WebSocketServer.applicationContext.getBean(HomeService.class);
+                QueueMapper  = WebSocketServer.applicationContext.getBean(QueueMapper.class);
                 homeMapper = WebSocketServer.applicationContext.getBean(HomeMapper.class);
                 spianMapper = WebSocketServer.applicationContext.getBean(SpianMapper.class);
                 spianService = WebSocketServer.applicationContext.getBean(SpianService.class);
@@ -83,11 +97,6 @@
                 List<alarmmg> alarmmg = homeMapper.SelectAlarmmgInfo();
                 jsonObject.append("alarmmg", alarmmg);
 
-                // 浼� 鑾峰彇杩涙槸鍚︽湁寰呯‘璁ょ殑鐜荤拑id
-                String queid = spianMapper.Selectqueueid();
-                int state = spianMapper.Selectqueuestate();
-                jsonObject.append("queid", queid);
-                jsonObject.append("state", state);
                 // 鑾峰彇鎵爜浣嶄笌涓婄墖浣嶇幓鐠冧俊鎭�
                 Queue form2 = homeMapper.GetQueueInfo(2);
                 Queue form3 = homeMapper.GetQueueInfo(1);
@@ -111,7 +120,34 @@
                 // 鏌ヨ褰撳墠閾濇淇℃伅
                 Out_slice CurrentFrame = outSliceServive.SelectCurrentFrame();
                 jsonObject.append("CurrentFrame", CurrentFrame);
-
+              
+               
+                // 鑾峰彇娴嬮噺鐨勯暱锛屽
+                String PlcRequest = "1";
+                double width = 402;
+                double height = 402;
+                
+                //鑾峰彇鍖归厤璁剧疆
+                if ("1".equals(PlcRequest)) {
+                    List<GlassInfo> Result=HomeService.NormalGlassInfo(width, height, "1");
+                    if(Result.size()==1){
+                        //鍖归厤鎴愬姛  灏变竴绉嶇被鍨�  娣诲姞鏁版嵁
+                        GlassInfo GlassInfo=Result.get(0);
+                        QueueMapper.insert(GlassInfo.getGlassid(),width,height,1);
+                        System.out.println("鍖归厤鎴愬姛");
+                        System.out.println(GlassInfo.getGlassid());
+                    }else if(Result.size()>1){
+                        //鍖归厤澶辫触 鍖归厤鍒板鏉$鍚堢殑鏁版嵁  娣诲姞鏁版嵁
+                        QueueMapper.insert(null,width,height,2);
+                        System.out.println("鍖归厤澶辫触");
+                    }
+                    else{
+                        //鍖归厤澶辫触 鏈壘鍒扮鍚堢殑鏁版嵁 娣诲姞鏁版嵁
+                        QueueMapper.insert(null,width,height,3);
+                        System.out.println("鏈壘鍒扮鍚堢殑鏁版嵁");
+                    }
+                    
+                }
                 // String E01id = new String( S7controlLK.getinstance().ReadByte("DB17.0",16));
                 // String J01id = new String( S7controlLK.getinstance().ReadByte("DB17.22",14));
 
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
index ce4f674..f069ca9 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
@@ -176,7 +176,7 @@
         }
     }
 
-
+    
 
 
     private int getIndexFromAddress(String address) {
diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/GlassInfo.java b/springboot-vue3/src/main/java/com/example/springboot/entity/GlassInfo.java
index 977b843..51bdee9 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/entity/GlassInfo.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/GlassInfo.java
@@ -22,7 +22,7 @@
     /**
      * 娴佺▼鍗d
      */
-    private Integer flowcard;
+    private String flowcard;
     /**
      * 鐜荤拑绫诲瀷
      */
diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/MeasureSetting.java b/springboot-vue3/src/main/java/com/example/springboot/entity/MeasureSetting.java
index da28cda..583d8b1 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/entity/MeasureSetting.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/MeasureSetting.java
@@ -1,5 +1,6 @@
 package com.example.springboot.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 
@@ -30,5 +31,6 @@
      * 绾胯矾
      */
     private Integer line;
+    
 
 }
diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/HomeService.java b/springboot-vue3/src/main/java/com/example/springboot/service/HomeService.java
index 0daec53..452b8eb 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/service/HomeService.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/service/HomeService.java
@@ -1,9 +1,50 @@
 package com.example.springboot.service;
 
+import java.util.ArrayList;
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import com.example.springboot.entity.GlassInfo;
+import com.example.springboot.entity.MeasureSetting;
+import com.example.springboot.mapper.GlassInfoMapper;
+import com.example.springboot.mapper.MeasureSettingMapper;
+import com.example.springboot.mapper.QueueMapper;
 
 @Service
 public class HomeService {
-    
+
+    @Autowired
+    MeasureSettingMapper MeasureSettingMapper;
+    @Autowired
+    GlassInfoMapper GlassInfoMapper;
+    @Autowired
+    QueueMapper QueueMapper;
+
+    // 鍖归厤鐜荤拑 瀹斤紝楂橈紝绾胯矾
+    public List<GlassInfo> NormalGlassInfo(double width, double height, String line) {
+        //
+        List<GlassInfo> Results=new ArrayList<GlassInfo>();
+        // 鑾峰彇鍖归厤璁剧疆
+        MeasureSetting MeasureSetting = MeasureSettingMapper.SelectMeasureSetting(line);
+        if (height > 0 && width > 0 && MeasureSetting != null) {
+            // 鏈夋晥鍙傛暟 璇锋眰=1 闀�/瀹�>0
+            double maxheight = height + MeasureSetting.getErrorHeight();
+            double minheight = height - MeasureSetting.getErrorHeight();
+            double maxwidth = width + MeasureSetting.getErrorWidth();
+            double minwidth = width - MeasureSetting.getErrorWidth();
+            // 鏌ヨ褰撳墠娴嬮噺鏁版嵁
+            List<GlassInfo> GlassInfos = GlassInfoMapper.selectGlassInfos(maxwidth, minwidth, maxheight, minheight);
+            List types = new ArrayList<>();
+            for (int i = 0; i < GlassInfos.size(); i++) {
+                Integer glasstype = GlassInfos.get(i).getGlasstype();
+                if (!types.contains(glasstype)) {
+                    types.add(glasstype);
+                    Results.add(GlassInfos.get(i));
+                }
+            }
+        }
+        return Results;
+    }
 }
diff --git a/springboot-vue3/src/main/resources/application.properties b/springboot-vue3/src/main/resources/application.properties
index 663e822..c29dabf 100644
--- a/springboot-vue3/src/main/resources/application.properties
+++ b/springboot-vue3/src/main/resources/application.properties
@@ -6,7 +6,7 @@
 #\u6570\u636E\u5E93\u9A71\u52A8
 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
 #\u6570\u636E\u5E93\u8FDE\u63A5\u5730\u5740
-spring.datasource.url=jdbc:mysql://localhost:3306/canadames?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+spring.datasource.url=jdbc:mysql://10.153.19.150:3306/albania?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
 #\u6570\u636E\u5E93\u7528\u6237\u540D
 spring.datasource.username=root
 #\u6570\u636E\u5E93\u7528\u6237\u5BC6\u7801  

--
Gitblit v1.8.0