From 8619f04e7ba899bc468c3439305c00c953dd41a8 Mon Sep 17 00:00:00 2001
From: whyczh <hzjl@qq.com>
Date: 星期三, 07 四月 2021 11:46:23 +0800
Subject: [PATCH] 更新试验计划websocket接口

---
 src/main/java/com/whyc/ws/TestDataWebSocket.java |   21 ++++++++++++---------
 1 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/src/main/java/com/whyc/ws/TestDataWebSocket.java b/src/main/java/com/whyc/ws/TestDataWebSocket.java
index 202591b..e4a69a1 100644
--- a/src/main/java/com/whyc/ws/TestDataWebSocket.java
+++ b/src/main/java/com/whyc/ws/TestDataWebSocket.java
@@ -17,7 +17,7 @@
 import java.util.List;
 import java.util.concurrent.CopyOnWriteArraySet;
 
-@ServerEndpoint(value = "/testDataWebSocket/{testPlanId}",encoders = WebSocketEncoder.class)
+@ServerEndpoint(value = "/testDataWebSocket",encoders = WebSocketEncoder.class)
 @Component
 @Slf4j
 public class TestDataWebSocket {
@@ -42,7 +42,7 @@
     /**
      * 鏍囪瘑褰撳墠杩炴帴瀹㈡埛绔殑鍙傛暟  璇曢獙璁″垝id
      */
-    private Integer testPlanId;
+    //rivate Integer testPlanId;
 
     /**
      *  鐢ㄤ簬瀛樻墍鏈夌殑杩炴帴鏈嶅姟鐨勫鎴风锛岃繖涓璞″瓨鍌ㄦ槸瀹夊叏鐨�
@@ -51,16 +51,16 @@
 
     private static CopyOnWriteArraySet<TestDataWebSocket> webSockets = new CopyOnWriteArraySet<>();
     @OnOpen
-    public void onOpen(Session session,@PathParam("testPlanId") Integer testPlanId){
+    public void onOpen(Session session){
         System.out.println("璇曢獙璁″垝瀹炴椂鏁版嵁websocket...");
         this.session = session;
-        this.testPlanId = testPlanId;
+        //this.testPlanId = testPlanId;
         webSockets.add(this);
     }
 
 
     @OnMessage
-    public void onMessage(Integer message,Session session) {
+    public void onMessage(String message,Session session) {
         try {
             this.sendMessage(message);
         } catch (IOException e) {
@@ -68,21 +68,24 @@
         }
     }
 
-    public void sendMessage(Integer testPlanId) throws IOException{
+    public void sendMessage(String testPlanId) throws IOException{
         Thread thread = new Thread("TestDataWebSocket"){
             @Override
             public void run() {
                 while (true) {
                     try {
-                        Response model = null;
+                        Response model = new Response();
                         //鑾峰彇璇曢獙璁″垝鏁版嵁
-                        TestPlan testPlan = testPlanService.getOneById(testPlanId);
+                        TestPlan testPlan = testPlanService.getOneById(Integer.parseInt(testPlanId));
                         //鑾峰彇璇曢獙鍙傝瘯璁惧
+                        if(testPlan==null){
+                            break;
+                        }
                         String devices = testPlan.getDevices();
                         String[] devIds = devices.split(",");
                         List<MotorState> list = new ArrayList<>();
                         for (String deviceId:devIds) {
-                            MotorState motorState = motorStateService.getByDeviceId(Integer.valueOf(deviceId));
+                            MotorState motorState = motorStateService.getByDeviceId(Integer.parseInt(deviceId));
                             list.add(motorState);
                         }
                         model.set(1,list);

--
Gitblit v1.9.1