mirror of
https://gitee.com/xiongmao1988/rax-medical.git
synced 2025-08-24 13:04:57 +08:00
远程重连
This commit is contained in:
parent
0f7622a264
commit
375fd80a31
|
@ -35,15 +35,15 @@
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<el-form-item label="密码" prop="password" label-width="100">
|
<el-form-item label="密码" prop="password" label-width="100">
|
||||||
<el-input v-model="formData.password" type="password" show-password
|
<el-input v-model="formData.password" type="password" show-password
|
||||||
placeholder="请输入密码"></el-input>
|
placeholder="8~16位字母或数字(区分大小写)"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新密码" prop="newPassword" label-width="100">
|
<el-form-item label="新密码" prop="newPassword" label-width="100">
|
||||||
<el-input v-model="formData.newPassword" type="password" show-password
|
<el-input v-model="formData.newPassword" type="password" show-password
|
||||||
placeholder="请输入新密码"></el-input>
|
placeholder="8~16位字母或数字(区分大小写)"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="确认密码" prop="confirmPassword" label-width="100">
|
<el-form-item label="确认密码" prop="confirmPassword" label-width="100">
|
||||||
<el-input v-model="formData.confirmPassword" type="password" show-password
|
<el-input v-model="formData.confirmPassword" type="password" show-password
|
||||||
placeholder="请输入新密码"></el-input>
|
placeholder="确认密码"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
|
@ -7,322 +7,352 @@ const medicineUrl = "ws://" + window.location.host + "/socket.io/admin/rax/addMe
|
||||||
const chatUrl = "ws://" + window.location.host + "/socket.io/admin/rax/chatRoom?token=" + Session.getToken()
|
const chatUrl = "ws://" + window.location.host + "/socket.io/admin/rax/chatRoom?token=" + Session.getToken()
|
||||||
|
|
||||||
export const useRemoteWsStore = defineStore("remoteWs", {
|
export const useRemoteWsStore = defineStore("remoteWs", {
|
||||||
state: () => {
|
state: () => {
|
||||||
return {
|
return {
|
||||||
patient: {} as any,
|
patient: {} as any,
|
||||||
remoteTasks: [] as any,
|
remoteTasks: [] as any,
|
||||||
remoteTasksCap: 10,
|
remoteTasksCap: 10,
|
||||||
currentTaskIndex: -1,
|
currentTaskIndex: -1,
|
||||||
varMedicine: ["丙泊酚", "舒芬太尼", "瑞芬太尼", "顺阿曲库胺"],
|
varMedicine: ["丙泊酚", "舒芬太尼", "瑞芬太尼", "顺阿曲库胺"],
|
||||||
fixedMedicine: ["尼卡地平", "艾司洛尔", "麻黄素", "阿托品"],
|
fixedMedicine: ["尼卡地平", "艾司洛尔", "麻黄素", "阿托品"],
|
||||||
exceptionType: ["BIS_except", "DBP_except", "EtCO2_except", "HR_except", "SBP_except", "ST_except"],
|
exceptionType: ["BIS_except", "DBP_except", "EtCO2_except", "HR_except", "SBP_except", "ST_except"],
|
||||||
exceptionMsg: {
|
exceptionMsg: {
|
||||||
"BIS_except": "脑电双频指数异常", "DBP_except": "舒张压异常", "EtCO2_except": "呼气末二氧化碳异常",
|
"BIS_except": "脑电双频指数异常", "DBP_except": "舒张压异常", "EtCO2_except": "呼气末二氧化碳异常",
|
||||||
"HR_except": "心率异常", "SBP_except": "收缩压异常", "ST_except": "ST异常"
|
"HR_except": "心率异常", "SBP_except": "收缩压异常", "ST_except": "ST异常"
|
||||||
} as any,
|
} as any,
|
||||||
|
closeStatus: {} as any
|
||||||
|
}
|
||||||
|
},
|
||||||
|
actions: {
|
||||||
|
setCurrentTaskIndex(i: number) {
|
||||||
|
this.currentTaskIndex = i
|
||||||
|
Session.set("currentTaskIndex", i)
|
||||||
|
},
|
||||||
|
getCurrentTaskIndex() {
|
||||||
|
if (Session.get("currentTaskIndex") > -1) {
|
||||||
|
this.currentTaskIndex = Session.get("currentTaskIndex")
|
||||||
|
}
|
||||||
|
return this.currentTaskIndex
|
||||||
|
},
|
||||||
|
setRemoteTask() {
|
||||||
|
Session.set("remoteTasks", this.remoteTasks)
|
||||||
|
},
|
||||||
|
getRemoteTask() {
|
||||||
|
if (Session.get("remoteTasks")) {
|
||||||
|
this.remoteTasks = Session.get("remoteTasks")
|
||||||
|
}
|
||||||
|
return this.remoteTasks
|
||||||
|
},
|
||||||
|
initRemoteTask() {
|
||||||
|
if (Session.get("remoteTasks")) {
|
||||||
|
this.remoteTasks = Session.get("remoteTasks")
|
||||||
|
}
|
||||||
|
if (this.remoteTasks.length <= 0) {
|
||||||
|
for (let i = 0; i < 10; i++) {
|
||||||
|
this.remoteTasks.push({
|
||||||
|
isRemote: false,
|
||||||
|
isException: false,
|
||||||
|
taskName: "",
|
||||||
|
server: "",
|
||||||
|
serverun: "",
|
||||||
|
serverps: "",
|
||||||
|
patient: "",
|
||||||
|
patientId: "",
|
||||||
|
date: "",
|
||||||
|
log: [],
|
||||||
|
index: i
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return this.remoteTasks
|
||||||
|
},
|
||||||
|
resetRemoteTask(i: number) {
|
||||||
|
this.remoteTasks[i] = Object.assign(this.remoteTasks[i], {
|
||||||
|
isRemote: false,
|
||||||
|
isException: false,
|
||||||
|
taskName: "",
|
||||||
|
server: "",
|
||||||
|
serverun: "",
|
||||||
|
serverps: "",
|
||||||
|
patient: "",
|
||||||
|
patientId: "",
|
||||||
|
date: "",
|
||||||
|
log: [],
|
||||||
|
index: i,
|
||||||
|
message: []
|
||||||
|
})
|
||||||
|
Session.set("remoteTasks", this.remoteTasks)
|
||||||
|
},
|
||||||
|
getActiveRemoteTask() {
|
||||||
|
let index = 0
|
||||||
|
for (let i = 0; i < this.remoteTasks.length; i++) {
|
||||||
|
if (this.remoteTasks[i].isRemote) index = i
|
||||||
|
}
|
||||||
|
return index
|
||||||
|
},
|
||||||
|
setRemoteLog(log: any, i: number) {
|
||||||
|
this.remoteTasks[i].log.push(log)
|
||||||
|
},
|
||||||
|
getCloseStatus() {
|
||||||
|
return this.closeStatus
|
||||||
|
},
|
||||||
|
/*createConnect(name: string, id: string, date: string, index: number) {
|
||||||
|
if (!this.patient[name + id + date + index]) {
|
||||||
|
const vitalWS = new WebSocket(vitalUrl)
|
||||||
|
// const medicineWS = new WebSocket(medicineUrl)
|
||||||
|
const chatWS = new WebSocket(chatUrl)
|
||||||
|
vitalWS.onopen = function () {
|
||||||
|
vitalWS.send(JSON.stringify({
|
||||||
|
patientName: name,
|
||||||
|
idNum: id,
|
||||||
|
date: date,
|
||||||
|
msgType: "msg"
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
vitalWS.onerror = () => {
|
||||||
|
ElMessage.error("远程管理" + (index + 1) + "出错")
|
||||||
|
}
|
||||||
|
|
||||||
|
vitalWS.onmessage = (e: any) => {
|
||||||
|
if (e && e.data) {
|
||||||
|
const data = JSON.parse(e.data);
|
||||||
|
if (data.msgType == "heartbeat") {
|
||||||
|
vitalWS.send(JSON.stringify({msgType: "heartbeat"}))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/!* medicineWS.onopen = function () {
|
||||||
|
medicineWS.send(JSON.stringify({
|
||||||
|
patientName: name,
|
||||||
|
idNum: id,
|
||||||
|
date: date
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
medicineWS.onclose = () => {
|
||||||
|
ElMessage.info("远程管理" + (index + 1) + "给药已断开")
|
||||||
|
}
|
||||||
|
|
||||||
|
medicineWS.onerror = () => {
|
||||||
|
ElMessage.error("远程管理" + (index + 1) + "给药出错")
|
||||||
|
}*!/
|
||||||
|
|
||||||
|
chatWS.onopen = function () {
|
||||||
|
chatWS.send(JSON.stringify({
|
||||||
|
patientName: name,
|
||||||
|
idNum: id,
|
||||||
|
date: date,
|
||||||
|
msgType: "msg"
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
chatWS.onerror = () => {
|
||||||
|
ElMessage.error("远程管理" + (index + 1) + "通讯出错")
|
||||||
|
}
|
||||||
|
|
||||||
|
chatWS.onmessage = (e: any) => {
|
||||||
|
if (e && e.data) {
|
||||||
|
const data = JSON.parse(e.data);
|
||||||
|
if (data.msgType == "heartbeat") {
|
||||||
|
chatWS.send(JSON.stringify({msgType: "heartbeat"}))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
this.patient[name + id + date + index] = {
|
||||||
|
vitalWS,
|
||||||
|
// medicineWS,
|
||||||
|
chatWS
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},*/
|
||||||
|
disconnect(name: string, id: string, date: string, index: number) {
|
||||||
|
this.disconnectChat(name, id, date, index)
|
||||||
|
this.disconnectVital(name, id, date, index)
|
||||||
|
delete this.patient[name + id + date + index]
|
||||||
|
},
|
||||||
|
createVital(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient = this.patient[name + id + date + index] ? this.patient[name + id + date + index] : this.patient[name + id + date + index] = {}
|
||||||
|
if (patient && !patient['vitalWS']) {
|
||||||
|
patient['vitalWS'] = new WebSocket(vitalUrl)
|
||||||
|
patient['vitalWS'].onopen = function () {
|
||||||
|
ElMessage.info("远程控制" + index + ",生命体征数据连接成功")
|
||||||
|
patient['vitalWS'].send(JSON.stringify({
|
||||||
|
patientName: name,
|
||||||
|
idNum: id,
|
||||||
|
date: date,
|
||||||
|
msgType: "msg"
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
patient['vitalWS'].onerror = () => {
|
||||||
|
ElMessage.error("远程管理" + (index + 1) + "出错")
|
||||||
|
}
|
||||||
|
delete this.closeStatus[name + id + date + index + 'vitalWS']
|
||||||
|
}
|
||||||
|
},
|
||||||
|
subscribeVital(name: string, id: string, date: string, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.vitalWS.onmessage = (e: any) => {
|
||||||
|
if (e && e.data) {
|
||||||
|
const data = JSON.parse(e.data);
|
||||||
|
if (data.msgType == "msg") {
|
||||||
|
cb(e)
|
||||||
|
} else {
|
||||||
|
patient.vitalWS.send(JSON.stringify({msgType: "heartbeat"}))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
vitalOnclose(name: string, id: string, date: string, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.vitalWS.onclose = cb
|
||||||
|
},
|
||||||
|
unsubscribeVital(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
if (patient && patient.vitalWS) {
|
||||||
|
patient.vitalWS.onmessage = undefined;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sendMsg(name: string, id: string, date: string, msg: string, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
if (patient) {
|
||||||
|
const params = {
|
||||||
|
patientName: name,
|
||||||
|
idNum: id,
|
||||||
|
date: date,
|
||||||
|
msg,
|
||||||
|
msgType: "msg"
|
||||||
|
}
|
||||||
|
patient.chatWS.send(JSON.stringify(params))
|
||||||
|
cb({
|
||||||
|
status: 0
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
cb({
|
||||||
|
status: 1,
|
||||||
|
msg: "已断开连接"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
disconnectVital(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
if (patient && patient.vitalWS) {
|
||||||
|
this.closeStatus[name + id + date + index + 'vitalWS'] = true
|
||||||
|
patient.vitalWS.close()
|
||||||
|
delete patient['vitalWS']
|
||||||
|
}
|
||||||
|
},
|
||||||
|
createChat(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient = this.patient[name + id + date + index] ? this.patient[name + id + date + index] : this.patient[name + id + date + index] = {}
|
||||||
|
if (patient && !patient['chatWS']) {
|
||||||
|
patient['chatWS'] = new WebSocket(chatUrl)
|
||||||
|
patient['chatWS'].onopen = function () {
|
||||||
|
ElMessage.info("远程控制" + index + ",通讯连接成功")
|
||||||
|
patient['chatWS'].send(JSON.stringify({
|
||||||
|
patientName: name,
|
||||||
|
idNum: id,
|
||||||
|
date: date,
|
||||||
|
msgType: "msg"
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
patient['chatWS'].onerror = () => {
|
||||||
|
ElMessage.error("远程管理" + (index + 1) + "出错")
|
||||||
|
}
|
||||||
|
delete this.closeStatus[name + id + date + index + 'chatWS']
|
||||||
|
}
|
||||||
|
},
|
||||||
|
subscribeChat(name: string, id: string, date: string, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.chatWS.onmessage = (e: any) => {
|
||||||
|
if (e && e.data) {
|
||||||
|
const data = JSON.parse(e.data);
|
||||||
|
if (data.msgType == "msg") {
|
||||||
|
cb(e)
|
||||||
|
} else {
|
||||||
|
patient.chatWS.send(JSON.stringify({msgType: "heartbeat"}))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
chatOnclose(name: string, id: string, date: string, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.chatWS.onclose = cb
|
||||||
|
},
|
||||||
|
unsubscribeChat(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.chatWS.onmessage = undefined;
|
||||||
|
},
|
||||||
|
disconnectChat(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
if (patient && patient.chatWS) {
|
||||||
|
this.closeStatus[name + id + date + index + 'chatWS'] = true
|
||||||
|
patient.chatWS.close()
|
||||||
|
delete patient['chatWS']
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sendMedicine(args: {
|
||||||
|
name: string,
|
||||||
|
id: string,
|
||||||
|
date: string,
|
||||||
|
flag: string,
|
||||||
|
medicine: string,
|
||||||
|
value: string
|
||||||
|
}, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[args.name + args.id + args.date + index]
|
||||||
|
if (patient) {
|
||||||
|
const params = {
|
||||||
|
patientName: args.name,
|
||||||
|
idNum: args.id,
|
||||||
|
date: args.date,
|
||||||
|
flag: args.flag,
|
||||||
|
medicine: args.medicine,
|
||||||
|
value: args.value,
|
||||||
|
msgType: "msg"
|
||||||
|
}
|
||||||
|
patient.medicineWS.send(JSON.stringify(params))
|
||||||
|
cb({
|
||||||
|
status: 0
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
cb({
|
||||||
|
status: 1,
|
||||||
|
msg: "已断开连接"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
subscribeMedicine(name: string, id: string, date: string, index: number, cb: any) {
|
||||||
|
const patient = this.patient[name + id + date + index]
|
||||||
|
if (patient) {
|
||||||
|
patient.medicineCB = cb
|
||||||
|
patient.medicineWS.onmessage = (e: any) => {
|
||||||
|
if (e && e.data) {
|
||||||
|
const data = JSON.parse(e.data);
|
||||||
|
if (data.msgType == "msg") {
|
||||||
|
cb(e)
|
||||||
|
} else {
|
||||||
|
patient.medicineWS.send(JSON.stringify({msgType: "heartbeat"}))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
cb({
|
||||||
|
status: 1,
|
||||||
|
msg: "已断开连接"
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
medicineOnclose(name: string, id: string, date: string, index: number, cb: any) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.medicineWS.onclose = cb
|
||||||
|
},
|
||||||
|
unsubscribeMedicine(name: string, id: string, date: string, index: number) {
|
||||||
|
const patient: any = this.patient[name + id + date + index]
|
||||||
|
patient.medicineCB = undefined;
|
||||||
|
patient.medicineWS.onmessage = undefined;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
actions: {
|
|
||||||
setCurrentTaskIndex(i: number) {
|
|
||||||
this.currentTaskIndex = i
|
|
||||||
Session.set("currentTaskIndex", i)
|
|
||||||
},
|
|
||||||
getCurrentTaskIndex() {
|
|
||||||
if (Session.get("currentTaskIndex") > -1) {
|
|
||||||
this.currentTaskIndex = Session.get("currentTaskIndex")
|
|
||||||
}
|
|
||||||
return this.currentTaskIndex
|
|
||||||
},
|
|
||||||
setRemoteTask() {
|
|
||||||
Session.set("remoteTasks", this.remoteTasks)
|
|
||||||
},
|
|
||||||
getRemoteTask() {
|
|
||||||
if (Session.get("remoteTasks")) {
|
|
||||||
this.remoteTasks = Session.get("remoteTasks")
|
|
||||||
}
|
|
||||||
return this.remoteTasks
|
|
||||||
},
|
|
||||||
initRemoteTask() {
|
|
||||||
if (Session.get("remoteTasks")) {
|
|
||||||
this.remoteTasks = Session.get("remoteTasks")
|
|
||||||
}
|
|
||||||
if (this.remoteTasks.length <= 0) {
|
|
||||||
for (let i = 0; i < 10; i++) {
|
|
||||||
this.remoteTasks.push({
|
|
||||||
isRemote: false,
|
|
||||||
isException: false,
|
|
||||||
taskName: "",
|
|
||||||
server: "",
|
|
||||||
serverun: "",
|
|
||||||
serverps: "",
|
|
||||||
patient: "",
|
|
||||||
patientId: "",
|
|
||||||
date: "",
|
|
||||||
log: [],
|
|
||||||
index: i
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return this.remoteTasks
|
|
||||||
},
|
|
||||||
resetRemoteTask(i: number) {
|
|
||||||
this.remoteTasks[i] = Object.assign(this.remoteTasks[i], {
|
|
||||||
isRemote: false,
|
|
||||||
isException: false,
|
|
||||||
taskName: "",
|
|
||||||
server: "",
|
|
||||||
serverun: "",
|
|
||||||
serverps: "",
|
|
||||||
patient: "",
|
|
||||||
patientId: "",
|
|
||||||
date: "",
|
|
||||||
log: [],
|
|
||||||
index: i,
|
|
||||||
message: []
|
|
||||||
})
|
|
||||||
Session.set("remoteTasks", this.remoteTasks)
|
|
||||||
},
|
|
||||||
getActiveRemoteTask() {
|
|
||||||
let index = 0
|
|
||||||
for (let i = 0; i < this.remoteTasks.length; i++) {
|
|
||||||
if (this.remoteTasks[i].isRemote) index = i
|
|
||||||
}
|
|
||||||
return index
|
|
||||||
},
|
|
||||||
setRemoteLog(log: any, i: number) {
|
|
||||||
this.remoteTasks[i].log.push(log)
|
|
||||||
},
|
|
||||||
createConnect(name: string, id: string, date: string, index: number) {
|
|
||||||
if (!this.patient[name + id + date + index]) {
|
|
||||||
const vitalWS = new WebSocket(vitalUrl)
|
|
||||||
// const medicineWS = new WebSocket(medicineUrl)
|
|
||||||
const chatWS = new WebSocket(chatUrl)
|
|
||||||
vitalWS.onopen = function () {
|
|
||||||
vitalWS.send(JSON.stringify({
|
|
||||||
patientName: name,
|
|
||||||
idNum: id,
|
|
||||||
date: date,
|
|
||||||
msgType: "msg"
|
|
||||||
}))
|
|
||||||
}
|
|
||||||
|
|
||||||
vitalWS.onerror = () => {
|
|
||||||
ElMessage.error("远程管理" + (index + 1) + "出错")
|
|
||||||
}
|
|
||||||
|
|
||||||
vitalWS.onmessage = (e: any) => {
|
|
||||||
if (e && e.data) {
|
|
||||||
const data = JSON.parse(e.data);
|
|
||||||
if (data.msgType == "heartbeat") {
|
|
||||||
vitalWS.send(JSON.stringify({msgType: "heartbeat"}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* medicineWS.onopen = function () {
|
|
||||||
medicineWS.send(JSON.stringify({
|
|
||||||
patientName: name,
|
|
||||||
idNum: id,
|
|
||||||
date: date
|
|
||||||
}))
|
|
||||||
}
|
|
||||||
|
|
||||||
medicineWS.onclose = () => {
|
|
||||||
ElMessage.info("远程管理" + (index + 1) + "给药已断开")
|
|
||||||
}
|
|
||||||
|
|
||||||
medicineWS.onerror = () => {
|
|
||||||
ElMessage.error("远程管理" + (index + 1) + "给药出错")
|
|
||||||
}*/
|
|
||||||
|
|
||||||
chatWS.onopen = function () {
|
|
||||||
chatWS.send(JSON.stringify({
|
|
||||||
patientName: name,
|
|
||||||
idNum: id,
|
|
||||||
date: date,
|
|
||||||
msgType: "msg"
|
|
||||||
}))
|
|
||||||
}
|
|
||||||
|
|
||||||
chatWS.onerror = () => {
|
|
||||||
ElMessage.error("远程管理" + (index + 1) + "通讯出错")
|
|
||||||
}
|
|
||||||
|
|
||||||
chatWS.onmessage = (e: any) => {
|
|
||||||
if (e && e.data) {
|
|
||||||
const data = JSON.parse(e.data);
|
|
||||||
if (data.msgType == "heartbeat") {
|
|
||||||
chatWS.send(JSON.stringify({msgType: "heartbeat"}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.patient[name + id + date + index] = {
|
|
||||||
vitalWS,
|
|
||||||
// medicineWS,
|
|
||||||
chatWS
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
disconnect(name: string, id: string, date: string, index: number) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
if (patient) {
|
|
||||||
patient.vitalWS.close()
|
|
||||||
// patient.medicineWS.close()
|
|
||||||
patient.chatWS.close()
|
|
||||||
delete this.patient[name + id + date + index]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
subscribeVital(name: string, id: string, date: string, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
if (patient) {
|
|
||||||
patient.vitalWS.onmessage = (e: any) => {
|
|
||||||
if (e && e.data) {
|
|
||||||
const data = JSON.parse(e.data);
|
|
||||||
if (data.msgType == "msg") {
|
|
||||||
cb(e)
|
|
||||||
} else {
|
|
||||||
patient.vitalWS.send(JSON.stringify({msgType: "heartbeat"}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
patient.vitalCB = cb
|
|
||||||
} else {
|
|
||||||
this.createConnect(name, id, date, index)
|
|
||||||
this.patient[name + id + date + index].vitalWS.onmessage = (e: any) => {
|
|
||||||
if (e && e.data) {
|
|
||||||
const data = JSON.parse(e.data);
|
|
||||||
if (data.msgType == "msg") {
|
|
||||||
cb(e)
|
|
||||||
} else {
|
|
||||||
this.patient[name + id + date + index].vitalWS.send(JSON.stringify({msgType: "heartbeat"}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
this.patient[name + id + date + index].vitalCB = cb
|
|
||||||
}
|
|
||||||
},
|
|
||||||
vitalOnclose(name: string, id: string, date: string, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
patient.vitalWS.onclose = cb
|
|
||||||
},
|
|
||||||
unsubscribeVital(name: string, id: string, date: string, index: number) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
if (patient && patient.vitalWS) {
|
|
||||||
patient.vitalWS.onmessage = undefined;
|
|
||||||
patient.vitalCB = undefined;
|
|
||||||
}
|
|
||||||
},
|
|
||||||
sendMsg(name: string, id: string, date: string, msg: string, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
if (patient) {
|
|
||||||
const params = {
|
|
||||||
patientName: name,
|
|
||||||
idNum: id,
|
|
||||||
date: date,
|
|
||||||
msg,
|
|
||||||
msgType: "msg"
|
|
||||||
}
|
|
||||||
patient.chatWS.send(JSON.stringify(params))
|
|
||||||
cb({
|
|
||||||
status: 0
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
cb({
|
|
||||||
status: 1,
|
|
||||||
msg: "已断开连接"
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
subscribeChat(name: string, id: string, date: string, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
if (patient) {
|
|
||||||
patient.chatCB = cb
|
|
||||||
patient.chatWS.onmessage = (e: any) => {
|
|
||||||
if (e && e.data) {
|
|
||||||
const data = JSON.parse(e.data);
|
|
||||||
if (data.msgType == "msg") {
|
|
||||||
cb(e)
|
|
||||||
} else {
|
|
||||||
patient.chatWS.send(JSON.stringify({msgType: "heartbeat"}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
cb({
|
|
||||||
status: 1,
|
|
||||||
msg: "已断开连接"
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
chatOnclose(name: string, id: string, date: string, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
patient.chatWS.onclose = cb
|
|
||||||
},
|
|
||||||
unsubscribeChat(name: string, id: string, date: string, index: number) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
patient.chatCB = undefined;
|
|
||||||
patient.chatWS.onmessage = undefined;
|
|
||||||
},
|
|
||||||
sendMedicine(args: {
|
|
||||||
name: string,
|
|
||||||
id: string,
|
|
||||||
date: string,
|
|
||||||
flag: string,
|
|
||||||
medicine: string,
|
|
||||||
value: string
|
|
||||||
}, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[args.name + args.id + args.date + index]
|
|
||||||
if (patient) {
|
|
||||||
const params = {
|
|
||||||
patientName: args.name,
|
|
||||||
idNum: args.id,
|
|
||||||
date: args.date,
|
|
||||||
flag: args.flag,
|
|
||||||
medicine: args.medicine,
|
|
||||||
value: args.value,
|
|
||||||
msgType: "msg"
|
|
||||||
}
|
|
||||||
patient.medicineWS.send(JSON.stringify(params))
|
|
||||||
cb({
|
|
||||||
status: 0
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
cb({
|
|
||||||
status: 1,
|
|
||||||
msg: "已断开连接"
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
subscribeMedicine(name: string, id: string, date: string, index: number, cb: any) {
|
|
||||||
const patient = this.patient[name + id + date + index]
|
|
||||||
if (patient) {
|
|
||||||
patient.medicineCB = cb
|
|
||||||
patient.medicineWS.onmessage = (e: any) => {
|
|
||||||
if (e && e.data) {
|
|
||||||
const data = JSON.parse(e.data);
|
|
||||||
if (data.msgType == "msg") {
|
|
||||||
cb(e)
|
|
||||||
} else {
|
|
||||||
patient.medicineWS.send(JSON.stringify({msgType: "heartbeat"}))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
cb({
|
|
||||||
status: 1,
|
|
||||||
msg: "已断开连接"
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
medicineOnclose(name: string, id: string, date: string, index: number, cb: any) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
patient.medicineWS.onclose = cb
|
|
||||||
},
|
|
||||||
unsubscribeMedicine(name: string, id: string, date: string, index: number) {
|
|
||||||
const patient: any = this.patient[name + id + date + index]
|
|
||||||
patient.medicineCB = undefined;
|
|
||||||
patient.medicineWS.onmessage = undefined;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
})
|
|
@ -83,15 +83,15 @@
|
||||||
<el-form ref="registerFormRef" :model="registerParams" :rules="registerRules" label-width="100">
|
<el-form ref="registerFormRef" :model="registerParams" :rules="registerRules" label-width="100">
|
||||||
<el-form-item label="用户名" prop="username">
|
<el-form-item label="用户名" prop="username">
|
||||||
<el-input v-model="registerParams.username"
|
<el-input v-model="registerParams.username"
|
||||||
placeholder="请输入用户名2~16位字母或数字(区分大小写)"></el-input>
|
placeholder="2~16位字母或数字(区分大小写)"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="密码" prop="password">
|
<el-form-item label="密码" prop="password">
|
||||||
<el-input v-model="registerParams.password" type="password" show-password
|
<el-input v-model="registerParams.password" type="password" show-password
|
||||||
placeholder="请输入密码8~16位字母或数字(区分大小写)"></el-input>
|
placeholder="8~16位字母或数字(区分大小写)"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="确认密码" prop="confirmPassword">
|
<el-form-item label="确认密码" prop="confirmPassword">
|
||||||
<el-input v-model="registerParams.confirmPassword" type="password" show-password
|
<el-input v-model="registerParams.confirmPassword" type="password" show-password
|
||||||
placeholder="请输入密码8~16位字母或数字(区分大小写)"></el-input>
|
placeholder="确认密码"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="姓名" prop="name">
|
<el-form-item label="姓名" prop="name">
|
||||||
<el-input v-model="registerParams.name" placeholder="请输入姓名"></el-input>
|
<el-input v-model="registerParams.name" placeholder="请输入姓名"></el-input>
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="用户名" prop="username">
|
<el-form-item label="用户名" prop="username">
|
||||||
<el-input v-model="formData.username" placeholder="请输入用户名2~16位字母或数字(区分大小写)"
|
<el-input v-model="formData.username" placeholder="2~16位字母或数字(区分大小写)"
|
||||||
:disabled="type === 'edit'"></el-input>
|
:disabled="type === 'edit'"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
@ -46,13 +46,13 @@
|
||||||
<el-row v-if="type != 'edit'">
|
<el-row v-if="type != 'edit'">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="密码" prop="password">
|
<el-form-item label="密码" prop="password">
|
||||||
<el-input v-model="formData.password" placeholder="请输入密码8~16位字母或数字(区分大小写)"
|
<el-input v-model="formData.password" placeholder="8~16位字母或数字(区分大小写)"
|
||||||
:disabled="type === 'edit'" type="password" show-password></el-input>
|
:disabled="type === 'edit'" type="password" show-password></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="确认密码" prop="confirmPassword">
|
<el-form-item label="确认密码" prop="confirmPassword">
|
||||||
<el-input v-model="formData.confirmPassword" placeholder="请输入密码8~16位字母或数字(区分大小写)"
|
<el-input v-model="formData.confirmPassword" placeholder="确认密码"
|
||||||
:disabled="type === 'edit'" type="password" show-password></el-input>
|
:disabled="type === 'edit'" type="password" show-password></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
|
@ -61,6 +61,7 @@
|
||||||
<script lang='ts' setup>
|
<script lang='ts' setup>
|
||||||
import {onMounted, onUnmounted, ref} from 'vue'
|
import {onMounted, onUnmounted, ref} from 'vue'
|
||||||
import {useRemoteWsStore} from "@/stores/remote-ws-store";
|
import {useRemoteWsStore} from "@/stores/remote-ws-store";
|
||||||
|
import {ElMessage} from "element-plus";
|
||||||
|
|
||||||
const props = withDefaults(defineProps<{ index: number }>(), {
|
const props = withDefaults(defineProps<{ index: number }>(), {
|
||||||
index: () => 0
|
index: () => 0
|
||||||
|
@ -69,7 +70,6 @@ const emit = defineEmits(['addLogAfter'])
|
||||||
const remoteWsStore = useRemoteWsStore();
|
const remoteWsStore = useRemoteWsStore();
|
||||||
const remoteTask = ref(remoteWsStore.remoteTasks[props.index]);
|
const remoteTask = ref(remoteWsStore.remoteTasks[props.index]);
|
||||||
const patientInfo = ref({} as any)
|
const patientInfo = ref({} as any)
|
||||||
let reconnectTime = 0
|
|
||||||
let currentException: any = {}
|
let currentException: any = {}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
|
@ -83,6 +83,7 @@ onUnmounted(() => {
|
||||||
})
|
})
|
||||||
|
|
||||||
function initData() {
|
function initData() {
|
||||||
|
remoteWsStore.createVital(remoteTask.value.patient, remoteTask.value.patientId, remoteTask.value.date, props.index)
|
||||||
subscribeVital()
|
subscribeVital()
|
||||||
wsClose()
|
wsClose()
|
||||||
}
|
}
|
||||||
|
@ -103,13 +104,12 @@ function subscribeVital() {
|
||||||
|
|
||||||
function wsClose() {
|
function wsClose() {
|
||||||
remoteWsStore.vitalOnclose(remoteTask.value.patient, remoteTask.value.patientId, remoteTask.value.date, props.index, () => {
|
remoteWsStore.vitalOnclose(remoteTask.value.patient, remoteTask.value.patientId, remoteTask.value.date, props.index, () => {
|
||||||
if (reconnectTime < 3) {
|
const status = remoteWsStore.getCloseStatus()
|
||||||
remoteWsStore.createConnect(remoteTask.value.patient, remoteTask.value.patientId, remoteTask.value.date, props.index)
|
if (remoteTask.value.patient && !status[remoteTask.value.patient + remoteTask.value.patientId + remoteTask.value.date + props.index + 'vitalWS']) {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
subscribeVital()
|
ElMessage.info('远程控制' + props.index + ', 生命体征数据连接断开,正在尝试重连……')
|
||||||
wsClose()
|
initData()
|
||||||
}, 3000)
|
}, 3000)
|
||||||
reconnectTime++
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -119,6 +119,7 @@
|
||||||
<script lang='ts' setup>
|
<script lang='ts' setup>
|
||||||
import {onMounted, onUnmounted, ref} from 'vue'
|
import {onMounted, onUnmounted, ref} from 'vue'
|
||||||
import {useRemoteWsStore} from "@/stores/remote-ws-store";
|
import {useRemoteWsStore} from "@/stores/remote-ws-store";
|
||||||
|
import {ElMessage} from "element-plus";
|
||||||
|
|
||||||
const emit = defineEmits(['addLogAfter', 'breakRemote'])
|
const emit = defineEmits(['addLogAfter', 'breakRemote'])
|
||||||
const mediaMini800 = ref(false)
|
const mediaMini800 = ref(false)
|
||||||
|
@ -163,7 +164,17 @@ function initData() {
|
||||||
currentIndex = remoteWsStore.getCurrentTaskIndex()
|
currentIndex = remoteWsStore.getCurrentTaskIndex()
|
||||||
remoteItem.value = remoteTasks[currentIndex]
|
remoteItem.value = remoteTasks[currentIndex]
|
||||||
if (remoteItem.value && remoteItem.value.patient) {
|
if (remoteItem.value && remoteItem.value.patient) {
|
||||||
remoteWsStore.createConnect(remoteItem.value.patient, remoteItem.value.patientId, remoteItem.value.date, currentIndex)
|
remoteWsStore.createVital(remoteItem.value.patient, remoteItem.value.patientId, remoteItem.value.date, currentIndex)
|
||||||
|
remoteWsStore.vitalOnclose(remoteItem.value.patient, remoteItem.value.patientId, remoteItem.value.date, currentIndex, () => {
|
||||||
|
const status = remoteWsStore.getCloseStatus()
|
||||||
|
if (remoteItem.value.patient && !status[remoteItem.value.patient + remoteItem.value.patientId + remoteItem.value.date + currentIndex + 'vitalWS']) {
|
||||||
|
setTimeout(() => {
|
||||||
|
ElMessage.info('远程控制' + currentIndex + ', 生命体征数据连接断开,正在尝试重连……')
|
||||||
|
remoteWsStore.createVital(remoteItem.value.patient, remoteItem.value.patientId, remoteItem.value.date, currentIndex)
|
||||||
|
initData()
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
|
})
|
||||||
getData()
|
getData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -183,7 +194,6 @@ function getData() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -220,6 +220,7 @@ const medicineCustom: any[] = [
|
||||||
const remoteWsStore = useRemoteWsStore()
|
const remoteWsStore = useRemoteWsStore()
|
||||||
const currentRemote = ref()
|
const currentRemote = ref()
|
||||||
const userInfoStore = useUserStore()
|
const userInfoStore = useUserStore()
|
||||||
|
const currentIndex = remoteWsStore.getCurrentTaskIndex()
|
||||||
|
|
||||||
const chartDom1 = ref(),
|
const chartDom1 = ref(),
|
||||||
chartDom2 = ref(),
|
chartDom2 = ref(),
|
||||||
|
@ -266,35 +267,15 @@ onMounted(() => {
|
||||||
});
|
});
|
||||||
|
|
||||||
onUnmounted(() => {
|
onUnmounted(() => {
|
||||||
const index = remoteWsStore.getCurrentTaskIndex()
|
remoteWsStore.unsubscribeChat(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex);
|
||||||
remoteWsStore.unsubscribeChat(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index);
|
|
||||||
// remoteWsStore.unsubscribeMedicine(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index);
|
// remoteWsStore.unsubscribeMedicine(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index);
|
||||||
remoteWsStore.unsubscribeVital(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index);
|
remoteWsStore.unsubscribeVital(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex);
|
||||||
|
remoteWsStore.disconnectChat(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex)
|
||||||
})
|
})
|
||||||
|
|
||||||
function subscribeWS() {
|
function subscribeWS() {
|
||||||
const index = remoteWsStore.getCurrentTaskIndex()
|
subscribeVital()
|
||||||
remoteWsStore.subscribeVital(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index,
|
subscribeChat()
|
||||||
function (res: any) {
|
|
||||||
const data = JSON.parse(res.data);
|
|
||||||
chartDom1.value.updateChartData(data.vitalSignsList);
|
|
||||||
chartDom2.value.updateChartData(data.vitalSignsList);
|
|
||||||
chartDom3.value.updateChartData(data.vitalSignsList);
|
|
||||||
// chartDom4.value.updateChartData(data.vitalSignsList);
|
|
||||||
// updateMedicineTable(data.aiMedicineList[0], data.docMedicineList[0]);
|
|
||||||
updateMedicineTable(data.aiMedicineList[0], undefined);
|
|
||||||
})
|
|
||||||
|
|
||||||
remoteWsStore.subscribeChat(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index,
|
|
||||||
function (res: any) {
|
|
||||||
const chatObj = JSON.parse(res.data);
|
|
||||||
if (chatObj.history) {
|
|
||||||
mssageList.value = chatObj.history;
|
|
||||||
} else {
|
|
||||||
mssageList.value.push(JSON.parse(res.data));
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
/*remoteWsStore.subscribeMedicine(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index,
|
/*remoteWsStore.subscribeMedicine(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, index,
|
||||||
function (res: any) {
|
function (res: any) {
|
||||||
const data = JSON.parse(res.data);
|
const data = JSON.parse(res.data);
|
||||||
|
@ -310,6 +291,51 @@ function subscribeWS() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const subscribeVital = () => {
|
||||||
|
remoteWsStore.createVital(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex)
|
||||||
|
remoteWsStore.subscribeVital(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex,
|
||||||
|
function (res: any) {
|
||||||
|
const data = JSON.parse(res.data);
|
||||||
|
chartDom1.value.updateChartData(data.vitalSignsList);
|
||||||
|
chartDom2.value.updateChartData(data.vitalSignsList);
|
||||||
|
chartDom3.value.updateChartData(data.vitalSignsList);
|
||||||
|
// chartDom4.value.updateChartData(data.vitalSignsList);
|
||||||
|
// updateMedicineTable(data.aiMedicineList[0], data.docMedicineList[0]);
|
||||||
|
updateMedicineTable(data.aiMedicineList[0], undefined);
|
||||||
|
})
|
||||||
|
remoteWsStore.vitalOnclose(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex, () => {
|
||||||
|
const status = remoteWsStore.getCloseStatus()
|
||||||
|
if (currentRemote.value.patient && !status[currentRemote.value.patient + currentRemote.value.patientId + currentRemote.value.date + currentIndex + 'vitalWS']) {
|
||||||
|
setTimeout(() => {
|
||||||
|
ElMessage.info('远程控制' + currentIndex + ', 生命体征数据连接断开,正在尝试重连……')
|
||||||
|
subscribeVital()
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const subscribeChat = () => {
|
||||||
|
remoteWsStore.createChat(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex)
|
||||||
|
remoteWsStore.subscribeChat(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex,
|
||||||
|
function (res: any) {
|
||||||
|
const chatObj = JSON.parse(res.data);
|
||||||
|
if (chatObj.history) {
|
||||||
|
mssageList.value = chatObj.history;
|
||||||
|
} else {
|
||||||
|
mssageList.value.push(JSON.parse(res.data));
|
||||||
|
}
|
||||||
|
})
|
||||||
|
remoteWsStore.chatOnclose(currentRemote.value.patient, currentRemote.value.patientId, currentRemote.value.date, currentIndex, () => {
|
||||||
|
const status = remoteWsStore.getCloseStatus()
|
||||||
|
if (!status[currentRemote.value.patient + currentRemote.value.patientId + currentRemote.value.date + currentIndex + 'chatWS']) {
|
||||||
|
setTimeout(() => {
|
||||||
|
ElMessage.info('远程控制' + currentIndex + ', 通讯连接断开,正在尝试重连……')
|
||||||
|
subscribeChat()
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
function initData() {
|
function initData() {
|
||||||
lungAlarm.value = false;
|
lungAlarm.value = false;
|
||||||
heartAlarm.value = false;
|
heartAlarm.value = false;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user