From 0db357a9c5f73f2fc65dee021e52070e3b36d25c Mon Sep 17 00:00:00 2001
From: chenyc <501753378@qq.com>
Date: 星期二, 06 九月 2022 21:10:52 +0800
Subject: [PATCH] up

---
 src/samples/sockteStomp.ts |   64 +++++++++++++++++---------------
 1 files changed, 34 insertions(+), 30 deletions(-)

diff --git a/src/samples/sockteStomp.ts b/src/samples/sockteStomp.ts
index fa4e428..028efb5 100644
--- a/src/samples/sockteStomp.ts
+++ b/src/samples/sockteStomp.ts
@@ -30,18 +30,23 @@
             return de.deviceName===resultInfo.deviceNumber
         })
         console.log(deviceInfo,'更具设备number查找到的设备')
+        console.log(resultInfo)
         if(deviceInfo!==undefined){
             switch(deviceInfo.deviceType){
                 case '读卡器':
-                    sockteStore().setdkqSockte(
-                        {
-                            deviceName:resultInfo.deviceNumber,
-                            type:"读卡器",
-                            result:resultInfo.result,
-                            resultTime:resultInfo.resultTime,
-                            state:2
-                        }
-                    )
+                    console.log('读卡器收到消息')
+                    const res=JSON.parse(resultInfo.result)
+                    if(res.clientCode!==null){
+                        sockteStore().setdkqSockte(
+                            {
+                                deviceName:resultInfo.deviceNumber,
+                                type:"读卡器",
+                                result:resultInfo.result,
+                                resultTime:resultInfo.resultTime,
+                                state:2
+                            }
+                        )
+                    }
                     break
                 case "体重秤":
                     console.log(resultInfo,'体重秤')
@@ -49,7 +54,7 @@
                         {
                             deviceName:resultInfo.deviceNumber,
                             type:"体重秤",
-                            result:resultInfo.result,
+                            result:Number(resultInfo.result).toString(),
                             resultTime:resultInfo.resultTime,
                             state:2
                         }
@@ -107,26 +112,25 @@
 
 }
 const writePatient=(resultInfo:any)=>{
+    // 给一个时间变化
+    const da=new Date().toTimeString()  
+    console.log(da)
     const info={
         id:resultInfo.patientInfo===null?0:resultInfo.patientInfo.id,
         code:resultInfo.patientInfo===null?'':resultInfo.patientInfo.code,
-        name:resultInfo.patientInfo===null?0:resultInfo.patientInfo.patientName,
-        patientAvatarIcon:resultInfo.patientInfo===null?0:resultInfo.patientInfo.patientAvatarIcon,
+        name:resultInfo.patientInfo===null?'':resultInfo.patientInfo.patientName,
+        patientAvatarIcon:resultInfo.patientInfo===null?'':resultInfo.patientInfo.patientAvatarIcon,
         deviceCode:resultInfo.deviceCode===null?"":resultInfo.deviceCode,
         hemoCode:resultInfo.hemoCode===null?"":resultInfo.hemoCode,
-        pureWeight:resultInfo.pureWeight===null?"":resultInfo.pureWeight
+        pureWeight:resultInfo.pureWeight===null?"":resultInfo.pureWeight,
+        datetime:da  
     }
     // 写入vuex里
     patientInfoStore().setpatientInfo(info)
-    console.log('播放声音')
-    // sound.play("https://dhcdn.leon056.com/hemo/autoselfsign/step2.mp3")
-    
-
 }
 
 // 订阅结果事件返回函数
 const  callback = function(message:any) {
-    console.log('接收到数据-----',message.body)
     if (message.body!==undefined) {
         const data=JSON.parse(message.body)
         writeResult(data)
@@ -166,6 +170,7 @@
     isErrConnectBackCalled = true
     const pcName= sockteStore().pcName
     console.log("链接成功",stompClient,pcName)
+    sockteStore().setsockteIsLink(true)
     // 订阅患者信息服务
     if(stompClient!==null){
         // 订阅患者信息事件
@@ -179,16 +184,16 @@
     // 更新sockte链接状态
     sockteStore().setsockteIsLink(true)
     console.log(sockteStore().isLink)
-    if(devices!==undefined&&devices.length>0){
+    if(devices!==undefined &&devices!=null&&devices.length>0){
         // 更新sockte链接状态
-        sockteStore().setsockteIsLink(true)
+        sockteStore().setsockteIsLink(true) 
         console.log(sockteStore().isLink)
         console.log(devices)
-        if(devices!==undefined&&devices!=null &&devices.length>0){
+        if(devices!==undefined&&devices!=null &&devices!=null &&devices.length>0){
             devices.forEach(de=>{
                 if(stompClient!==null){
                     stompClient.subscribe(`/queue/${clientCode}/${de.deviceName}/result`,callback)
-                    // stompClient.subscribe(`/queue/${clientCode}/${de.deviceName}/keepalive`,callbackState)
+                    stompClient.subscribe(`/queue/${clientCode}/${de.deviceName}/keepalive`,callbackState)
                     stompClient.send(`/app/device/request/${clientCode}/${de.deviceName}`, {}, JSON.stringify({"deviceNumber":de.deviceName}));
 
                 } 
@@ -197,18 +202,17 @@
     }
 }
 
-const disconnectCallBack=function(){
-    console.log("disconnect");
-}
-
 const error_callback=function(error:any){
     console.log('链接错误',error);
+    sockteStore().setsockteIsLink(false)
     setTimeout(()=>{
-        console.log('10秒之后重连',sockteNum++) 
+        console.log('60秒之后重连',sockteNum++) 
         const socket = new WebSocket('ws://hemobs.icoldchain.cn/broadcast')
-        stompClient?.disconnect(disconnectCallBack,{})
-        stompClient = Stomp.over(socket)
-        stompClient.connect({}, connectCallback,error_callback)
+        stompClient?.disconnect(()=>{
+            console.log("disconnected!");
+            stompClient = Stomp.over(socket)
+            stompClient.connect({}, connectCallback,error_callback)
+        },{})
     },60000)
 }
 // 创建客户端链接

--
Gitblit v1.8.0