From dc7afd089a74edf6a9e50d0eb3e0607d09e72548 Mon Sep 17 00:00:00 2001
From: chenyc <501753378@qq.com>
Date: 星期五, 08 七月 2022 17:15:29 +0800
Subject: [PATCH] confingUpdete
---
src/views/home/index.vue | 203 +++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 183 insertions(+), 20 deletions(-)
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 6a67dac..e1a76c2 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -1,15 +1,22 @@
<script lang="ts">
import { userInfoStore } from '@/stores/userInfo'
import { sockteStore } from '@/stores/sockteInfo'
+import { patientInfoStore } from '@/stores/patient'
import { ipcRenderer } from 'electron'
-import { reactive,computed, toRefs,onMounted ,ref} from "vue"
-import{sendPationCode} from '../../samples/sockteStomp'
+import os from "os"
+import { reactive,computed, toRefs,onMounted ,ref,watch} from "vue"
+import{sendPationCode,sendPationSet} from '../../samples/sockteStomp'
import {formatDate} from '@/utils/formatTime'
export default {
setup() {
+ let timer:any=0
const user = userInfoStore()
const sockte= sockteStore()
const inputRef=ref()
+ const AudioRef0=ref()
+ const AudioRef=ref()
+ const AudioRef2=ref()
+ const AudioRef3=ref()
const isLink= computed(()=>{
return !sockte.isLink
})
@@ -19,36 +26,178 @@
const weightInfo= computed(()=>{
return sockte.weightSockte
})
+ const xyjInfo= computed(()=>{
+ return sockte.xyjSockte
+ })
+ const patientInfo=computed(()=>{
+ return patientInfoStore().patientInfo
+ })
+ const viewNumber=computed(()=>{
+ return patientInfoStore().viewNumber
+ })
+
+ const settime=()=>{
+ // 计数倒计时
+ state.clockNum=patientInfoStore().viewNumber
+ // 清除定时器
+ clearInterval(state.timerNum)
+ console.log('------------------')
+ timer= setInterval(() => {
+ if (state.clockNum > 0) {
+ state.clockNum--
+ }
+ else {
+ clearInterval(timer)
+ patientInfoStore().setpatientInfo({
+ id:0,
+ code:'',
+ name:'',
+ patientAvatarIcon:'',
+ deviceCode:'',
+ hemoCode:'',
+ pureWeight:''
+ })
+ state.clockNum = patientInfoStore().viewNumber
+ }
+ }, 1000)
+ // 记录定时器
+ state.timerNum=timer
+ console.log(timer)
+ }
const state=reactive({
dialogVisible:false,
isActive:false,
inputCode:"",
- Newdate:""
+ Newdate:"",
+ clockNum:60,
+ timerNum:0,//定时器数
+ aimTSL:0,// 目标脱水量,
+ gao_ya:"",//高压
+ di_ya:"",//低压
+ mai_bu:""//脉搏
})
+ watch(
+ ()=>patientInfo.value.id,
+ ()=>{
+ console.log('患者变化了',patientInfo)
+ if(patientInfo.value.id!==0)
+ {
+ AudioRef.value.play();
+ sockteStore().setweightSockte({
+ type:"体重秤",
+ state:2,
+ deviceName:"",
+ result:"0",
+ resultTime:""
+ })
+ sockteStore().setxyjSockte({
+ type:"血压计",
+ state:2,
+ deviceName:"",
+ result:"",
+ resultTime:""
+ })
+ settime()
+
+ }
+ }
+ )
+ watch(
+ ()=>weightInfo.value.resultTime,
+ ()=>{
+ settime()
+ console.log("体重变化了")
+ // AudioRef2.value.play()
+ if(patientInfo.value.id===0){
+ AudioRef0.value.play()
+ }
+ else{
+ AudioRef2.value.play()
+ // 发送结果到sockte服务
+ const mode={
+ patientCode:patientInfo.value.code,
+ weight:weightInfo.value.result,
+ bloodPressure:''
+
+ }
+ console.log('发送患者结果',mode)
+ sendPationSet(mode)
+ // 计算目标脱水量
+ if(Number(weightInfo.value.result)>0&&Number(patientInfo.value.pureWeight)!==0){
+ state.aimTSL=Number(weightInfo.value.result)-Number(patientInfo.value.pureWeight)
+ }
+ }
+ }
+ )
+ watch(
+ ()=>xyjInfo.value.resultTime,
+ ()=>{
+ if(xyjInfo.value.result!==''){
+ const list=xyjInfo.value.result.split(',')
+ if(list.length===3){
+ state.gao_ya=list[0]
+ state.di_ya=list[1]
+ state.mai_bu=list[2]
+ }
+ if(patientInfo.value.id===0){
+ AudioRef0.value.play()
+ settime()
+ }else{
+ AudioRef3.value.play()
+ settime()
+ const mode={
+ patientCode:patientInfo.value.code,
+ weight:weightInfo.value.result,
+ bloodPressure:xyjInfo.value.result
+
+ }
+ console.log('发送患者结果',mode)
+ sendPationSet(mode)
+ }
+ }else{
+ state.gao_ya=""
+ state.di_ya=""
+ state.mai_bu=""
+ }
+ }
+ )
+ watch(()=>viewNumber,
+ ()=>{
+ state.clockNum=viewNumber.value
+ }
+ )
const inputChabge=()=>{
sendPationCode(state.inputCode)
+ setTimeout(function(){
+ state.inputCode=''
+ },1000)
}
onMounted(() => {
- console.log('Component is mounted!')
- inputRef.value.focus();
- console.log(inputRef)
+ console.log('页面初始化',os.hostname())
+ state.clockNum=patientInfoStore().viewNumber
setTimeout(function(){
- // state.inputCode="3434"
- console.log('-----------sdsds')
+ console.log('7秒后操作')
inputRef.value.focus();
- },10000)
+ },7000)
setInterval(function(){
state.Newdate=formatDate(new Date(),"YYYY-mm-dd HH:MM:SS")
- console.log(state.Newdate,'----ss')
},1000)
})
- return{ ...toRefs(state),isLink,netLink,weightInfo,inputRef,inputChabge
+ return{ ...toRefs(state),isLink,netLink,weightInfo,patientInfo,inputRef,AudioRef0,AudioRef,AudioRef2,AudioRef3,inputChabge
}
}
}
</script>
<template>
<div class="home">
+ <!-- 提醒刷卡 -->
+ <audio src="https://dhcdn.leon056.com/hemo/autoselfsign/step1.mp3" ref="AudioRef0" id="eventAudio"></audio>
+ <!-- 患者信息读取成功 -->
+ <audio src="https://dhcdn.leon056.com/hemo/autoselfsign/step2.mp3" ref="AudioRef" id="eventAudio"></audio>
+ <!-- 体重结果回传成功 -->
+ <audio src="https://dhcdn.leon056.com/hemo/autoselfsign/step3.mp3" ref="AudioRef2" id="eventAudio"></audio>
+ <!-- 血压结果回传成功 -->
+ <audio src="https://dhcdn.leon056.com/hemo/autoselfsign/step4.mp3" ref="AudioRef3" id="eventAudio"></audio>
<el-dialog
title="提示"
v-model="netLink"
@@ -67,10 +216,16 @@
<img class="imgss" alt="Vue logo" src="@/assets/logo.png" />
</div>
</el-col>
- <el-col :span="12">
+ <el-col :span="6">
<!-- <div> sockte连接状态{{isLink}}</div>
<div> 网络连接状态{{netLink}}</div> -->
<el-input id="inputCode" @change="inputChabge" v-model="inputCode" ref="inputRef" placeholder="" />
+
+ </el-col>
+ <el-col :span="6">
+ <div class="datess">
+ {{clockNum}}
+ </div>
</el-col>
</el-row>
<div class="grid-container">
@@ -79,9 +234,9 @@
shape="square"
:size="100"
fit="cover"
- src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
+ :src="patientInfo.patientAvatarIcon"
/>
- <div class="zsf">张三丰</div>
+ <div class="zsf">{{patientInfo.name}}</div>
</div>
<div class="grid-item">
<div class="lableText">当前时间:</div>
@@ -89,19 +244,19 @@
</div>
<div class="grid-item">
<div class="lableText">透析号:</div>
- <div class="conText">123456</div>
+ <div class="conText">{{patientInfo.hemoCode}}</div>
</div>
<div class="grid-item">
<div class="lableText">机号:</div>
- <div class="conText">001</div>
+ <div class="conText">{{patientInfo.deviceCode}}</div>
</div>
<div class="grid-item">
<div class="lableText">序号:</div>
- <div class="conText">10</div>
+ <div class="conText">0</div>
</div>
<div class="grid-item">
<div class="lableText">干体重(kg):</div>
- <div class="conText">88</div>
+ <div class="conText">{{patientInfo.pureWeight}}</div>
</div>
<div class="grid-item" >
<div>
@@ -113,11 +268,11 @@
</div>
<div class="grid-item">
<div class="lableText">目标脱水量:</div>
- <div class="conText">2</div>
+ <div class="conText">{{aimTSL}}</div>
</div>
<div class="grid-item">
<div class="lableText">血压:</div>
- <div class="conText">140/90</div>
+ <div class="conText">{{gao_ya}}/{{di_ya}}</div>
</div>
</div>
</div>
@@ -175,4 +330,12 @@
background: #c1c2c6;
color: black;
}
+.datess{
+ text-align: right;
+ padding-right: 20px;
+ height: 30px;
+ line-height: 30px;
+ color: red;
+ font-weight: 1000;
+}
</style>
\ No newline at end of file
--
Gitblit v1.8.0