| | |
| | | </span> |
| | | </div> |
| | | </el-row> |
| | | <el-row |
| | | v-if="deviceData.患者姓名 !== ''" |
| | | :style="{ backgroundColor: textcolor }" |
| | | style="padding-right: 2px; height: 60%" |
| | | > |
| | | <el-col :span="12" style="height: 100%"> |
| | | <div style="height: 100%"> |
| | | <el-row style="padding: 5% 0px 0px 20px; height: 100%"> |
| | | <el-col :span="10" style="height: 100%"> |
| | | <div |
| | | :style="{ backgroundImage: `url(${deviceData.患者头像})` }" |
| | | <template v-if="床旁血压计.zuihouTime>shishiTime"> |
| | | <el-row style="height: 80%; background-color: #ffffff"> |
| | | <el-col :span="8" style="font-weight: bold; color: black; "> |
| | | <div style="height: 30%; text-align: right;" class="grid-container"> |
| | | <p><b style="font-size: 250%;color: red; ">↑</b><b style="font-size:500%">{{床旁血压计.sbp}}</b></p> |
| | | </div> |
| | | <div style="height: 30%; text-align: right; " class="grid-container"> |
| | | <p><b style="font-size: 250%;color: red;">↓</b><b style="font-size:500%"> {{床旁血压计.dbp}}</b></p> |
| | | </div> |
| | | <div style="height: 33%; text-align: right;" class="grid-container"> |
| | | <div> |
| | | <!-- <el-image style="width: 50px; height: 50px;" :src="maibo"></el-image> 2 --> |
| | | <p><b style="font-size: 250%;color: red;" >♥</b><b style="font-size:500%">{{床旁血压计.pulseRate}}</b></p> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="4"></el-col> |
| | | <el-col :span="12"> |
| | | <!-- 展示血压记录图 --> |
| | | <div |
| | | v-if="Number(deviceData.透析状态) > 1" |
| | | :ref="'echartsDiv' + deviceData.设备编号" |
| | | style="height: 80%;width: 100%;" |
| | | > |
| | | </div> |
| | | <div style="height: 20%;text-align: center;" class="grid-container"> |
| | | {{床旁血压计.date_time}} |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </template> |
| | | <template v-else> |
| | | <el-row |
| | | v-if="deviceData.患者姓名 !== ''" |
| | | :style="{ backgroundColor: textcolor }" |
| | | style="padding-right: 2px; height: 60%" |
| | | > |
| | | <el-col :span="12" style="height: 100%"> |
| | | <div style="height: 100%"> |
| | | <el-row style="padding: 5% 0px 0px 20px; height: 100%"> |
| | | <el-col :span="10" style="height: 100%"> |
| | | <div |
| | | :style="{ backgroundImage: `url(${deviceData.患者头像})` }" |
| | | style=" |
| | | background-size: 100% 100%; |
| | | border-radius: 5px; |
| | | margin-bottom: 1%; |
| | | height: 100%; |
| | | width: 100%; |
| | | " |
| | | ></div> |
| | | </el-col> |
| | | <el-col |
| | | :span="14" |
| | | style=" |
| | | background-size: 100% 100%; |
| | | border-radius: 5px; |
| | | margin-bottom: 1%; |
| | | padding-left: 5px; |
| | | height: 100%; |
| | | width: 100%; |
| | | font-weight: 700; |
| | | font-size: 300%; |
| | | " |
| | | ></div> |
| | | </el-col> |
| | | <el-col |
| | | :span="14" |
| | | > |
| | | <el-row style="height: 20%"> |
| | | <el-col |
| | | class="grid-container" |
| | | style="height: 100%" |
| | | :span="12" |
| | | :style="{ |
| | | color: deviceData.透析方案 === 'HDF' ? '#E6A23C' : '', |
| | | }" |
| | | > |
| | | {{ deviceData.透析方案 }} |
| | | </el-col> |
| | | <el-col |
| | | :span="12" |
| | | class="grid-container" |
| | | style=" |
| | | text-align: right; |
| | | font-weight: 800; |
| | | color: #70a3dd; |
| | | white-space: nowrap; |
| | | height: 100%; |
| | | " |
| | | > |
| | | {{ txztText }} |
| | | </el-col> |
| | | </el-row> |
| | | <div style="height: 20%"> |
| | | <template v-if="Number(deviceData.透析状态) >= 2"> |
| | | <div class="grid-container" style="height: 100%"> |
| | | <div> |
| | | <span |
| | | v-if="deviceData.iot_静脉压" |
| | | style="color: #409eff" |
| | | >{{ deviceData.iot_静脉压 }}/</span |
| | | ><span |
| | | v-if="deviceData.iot_跨膜压" |
| | | :style="{ |
| | | color: deviceData.iot_跨膜压 > 200 ? 'red' : '', |
| | | }" |
| | | >{{ deviceData.iot_跨膜压 }}</span |
| | | > |
| | | </div> |
| | | </div> |
| | | </template> |
| | | </div> |
| | | <div style="height: 20%"> |
| | | <span v-if="Number(deviceData.透析状态) >= 2"> |
| | | <span style="color: #303133">{{ |
| | | Number(deviceData.iot_当前脱水量).toFixed(1) |
| | | }}</span |
| | | >/<span>{{ |
| | | Number(deviceData.iot_脱水目标量).toFixed(1) |
| | | }}</span |
| | | ><span style="font-size: 80%" |
| | | >({{ deviceData.iot_脱水速率 }})</span |
| | | > |
| | | </span> |
| | | <span v-if="Number(deviceData.透析状态) == 1"> |
| | | <span style="color: #303133">{{ |
| | | Number(deviceData.iot_当前脱水量).toFixed(1) |
| | | }}</span |
| | | >/<span>{{ |
| | | Number(deviceData.处方脱水量).toFixed(1) |
| | | }}</span> |
| | | </span> |
| | | </div> |
| | | <div style="height: 10%"> |
| | | <el-progress |
| | | :text-inside="true" |
| | | :stroke-width="26" |
| | | :show-text="false" |
| | | :percentage=" Number(deviceData.iot_当前脱水量)/Number(deviceData.处方脱水量)*100" |
| | | /> |
| | | </div> |
| | | <div style="height: 20%"> |
| | | <span v-if="Number(deviceData.透析状态) >= 1"> |
| | | <span style="color: #303133">{{ |
| | | jgTime4(deviceData.iot_透析时间) |
| | | }}</span |
| | | >/<span |
| | | >{{ deviceData.透析处方的时长_小时 }}:{{ |
| | | deviceData.透析处方的时长_分钟 |
| | | }}</span |
| | | > |
| | | </span> |
| | | </div> |
| | | <div style="height: 10%"> |
| | | <el-progress |
| | | :text-inside="true" |
| | | :stroke-width="26" |
| | | :show-text="false" |
| | | :percentage="(Number(deviceData.iot_透析时间)/(Number(deviceData.透析处方的时长)*60))*100" |
| | | status="success" |
| | | /> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="12"> |
| | | <!-- 展示血压记录图 --> |
| | | <div |
| | | v-if="Number(deviceData.透析状态) > 1" |
| | | :ref="'echartsDiv' + deviceData.设备编号" |
| | | style="height: 97%" |
| | | > |
| | | </div> |
| | | <div |
| | | v-if="Number(deviceData.透析状态) === 1" |
| | | style="text-align: right; height: 100%" |
| | | > |
| | | <div |
| | | style=" |
| | | padding-left: 5px; |
| | | height: 100%; |
| | | font-weight: 700; |
| | | font-size: 300%; |
| | | height: 25%; |
| | | font-weight: 600; |
| | | color: #909399; |
| | | " |
| | | > |
| | | <el-row style="height: 20%"> |
| | | <el-col |
| | | class="grid-container" |
| | | style="height: 100%" |
| | | :span="12" |
| | | :style="{ |
| | | color: deviceData.透析方案 === 'HDF' ? '#E6A23C' : '', |
| | | }" |
| | | > |
| | | {{ deviceData.透析方案 }} |
| | | </el-col> |
| | | <el-col |
| | | :span="12" |
| | | class="grid-container" |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div |
| | | style=" |
| | | text-align: right; |
| | | font-weight: 800; |
| | | color: #70a3dd; |
| | | white-space: nowrap; |
| | | height: 100%; |
| | | " |
| | | > |
| | | {{ txztText }} |
| | | </el-col> |
| | | </el-row> |
| | | <div style="height: 20%"> |
| | | <template v-if="Number(deviceData.透析状态) >= 2"> |
| | | <div class="grid-container" style="height: 100%"> |
| | | <div> |
| | | <span |
| | | v-if="deviceData.iot_静脉压" |
| | | style="color: #409eff" |
| | | >{{ deviceData.iot_静脉压 }}/</span |
| | | ><span |
| | | v-if="deviceData.iot_跨膜压" |
| | | :style="{ |
| | | color: deviceData.iot_跨膜压 > 200 ? 'red' : '', |
| | | }" |
| | | >{{ deviceData.iot_跨膜压 }}</span |
| | | > |
| | | </div> |
| | | </div> |
| | | </template> |
| | | </div> |
| | | <div style="height: 20%"> |
| | | <span v-if="Number(deviceData.透析状态) >= 2"> |
| | | <span style="color: #303133">{{ |
| | | Number(deviceData.iot_当前脱水量).toFixed(1) |
| | | }}</span |
| | | >/<span style="font-size: 90%">{{ |
| | | Number(deviceData.iot_脱水目标量).toFixed(1) |
| | | }}</span |
| | | ><span style="font-size: 80%" |
| | | >({{ deviceData.iot_脱水速率 }})</span |
| | | > |
| | | </span> |
| | | <span v-if="Number(deviceData.透析状态) == 1"> |
| | | <span style="color: #303133">{{ |
| | | Number(deviceData.iot_当前脱水量).toFixed(1) |
| | | }}</span |
| | | >/<span style="font-size: 90%">{{ |
| | | Number(deviceData.处方脱水量).toFixed(1) |
| | | }}</span> |
| | | </span> |
| | | </div> |
| | | <div style="height: 10%"> |
| | | <el-progress |
| | | :text-inside="true" |
| | | :stroke-width="26" |
| | | :percentage=" Number(deviceData.iot_当前脱水量)/Number(deviceData.处方脱水量)*100" |
| | | /> |
| | | </div> |
| | | <div style="height: 20%"> |
| | | <span v-if="Number(deviceData.透析状态) >= 1"> |
| | | <span style="color: #303133">{{ |
| | | jgTime4(deviceData.iot_透析时间) |
| | | }}</span |
| | | >/<span style="color: #606266" |
| | | >{{ deviceData.透析处方的时长_小时 }}:{{ |
| | | deviceData.透析处方的时长_分钟 |
| | | }}</span |
| | | > |
| | | </span> |
| | | </div> |
| | | <div style="height: 10%"> |
| | | <el-progress |
| | | :text-inside="true" |
| | | :stroke-width="26" |
| | | :percentage="(Number(deviceData.iot_透析时间)/(Number(deviceData.透析处方的时长)*60))*100" |
| | | status="success" |
| | | /> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="12"> |
| | | <div |
| | | v-if="Number(deviceData.透析状态) > 1" |
| | | :ref="'echartsDiv' + deviceData.设备编号" |
| | | style="height: 97%" |
| | | ></div> |
| | | <div |
| | | v-if="Number(deviceData.透析状态) === 1" |
| | | style="text-align: right; height: 100%" |
| | | > |
| | | <div |
| | | style=" |
| | | height: 25%; |
| | | font-weight: 600; |
| | | color: #909399; |
| | | " |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div |
| | | style=" |
| | | font-weight: 800; |
| | | " |
| | | 透前称重 |
| | | <b style="font-size: 200%;color: #303133;">{{ Number(deviceData.透前称重).toFixed(1) }}</b> |
| | | </div |
| | | > |
| | | 透前称重 |
| | | <b style="font-size: 200%;color: #303133;">{{ Number(deviceData.透前称重).toFixed(1) }}</b> |
| | | </div |
| | | > |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="container" |
| | | style=" |
| | | height: 25%; |
| | | font-weight: 600; |
| | | color: #909399; |
| | | " |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div |
| | | style=" |
| | | font-weight: 800; |
| | | color: #909399; |
| | | " |
| | | > |
| | | 干体重 |
| | | <b style="font-size: 200%;color: #303133;">{{ Number(deviceData.干体重).toFixed(1) }}</b> |
| | | 上次透后称重 |
| | | <b style="font-size: 200%;color: #303133;">{{ Number(deviceData.上次透后称重).toFixed(1) }}</b> |
| | | </div |
| | | > |
| | | </div> |
| | | </div> |
| | | <div |
| | | :style="{ color: deviceData.体重增长率 >= 5 ? 'red' : '#303133' }" |
| | | style="height: 25%; font-weight: 600;color: #909399;" |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div> |
| | | 体重增长 |
| | | <b style="font-size: 200%; color: #303133;" |
| | | v-if="Number(deviceData.透前称重 - deviceData.干体重) > 0" |
| | | >+{{ |
| | | Number(deviceData.透前称重 - deviceData.干体重).toFixed(1) |
| | | }}</b |
| | | <div |
| | | class="container" |
| | | style=" |
| | | height: 25%; |
| | | font-weight: 600; |
| | | color: #909399; |
| | | " |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div |
| | | style=" |
| | | font-weight: 800; |
| | | color: #909399; |
| | | " |
| | | > |
| | | 增长率<b style="font-size: 200%;color: #303133;">({{ deviceData.体重增长率 }}%)</b> |
| | | </div> |
| | | 干体重 |
| | | <b style="font-size: 200%;color: #303133;">{{ Number(deviceData.干体重).toFixed(1) }}</b> |
| | | 上次透后称重 |
| | | <b style="font-size: 200%;color: #303133;">{{ Number(deviceData.上次透后称重).toFixed(1) }}</b> |
| | | </div |
| | | > |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="container" |
| | | style=" |
| | | font-weight: 600; |
| | | height: 25%; |
| | | color: #909399; |
| | | margin-left: -20px; |
| | | " |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | </div> |
| | | <div |
| | | :style="{ color: deviceData.体重增长率 >= 5 ? 'red' : '#303133' }" |
| | | style="height: 25%; font-weight: 600;color: #909399;" |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div> |
| | | 透前血压 |
| | | <span |
| | | v-if="deviceData.透前血压_伸缩压" |
| | | :style="{ color: tqXygj ? 'red' : '#303133' }" |
| | | style="font-weight: 800; font-size: 200%; white-space: nowrap" |
| | | >{{ deviceData.透前血压_伸缩压 }}/</span |
| | | > |
| | | <span |
| | | :style="{ color: tqXygj ? 'red' : '#303133' }" |
| | | style="font-weight: 800; font-size: 200%; white-space: nowrap" |
| | | >{{ deviceData.透前血压_舒张压 }}</span |
| | | > |
| | | 脉搏 |
| | | <span |
| | | v-if="deviceData.透前脉搏" |
| | | :style="{ color: tqMbgj ? 'red' : '#303133' }" |
| | | style="font-weight: 800; font-size: 200%; white-space: nowrap" |
| | | >{{ deviceData.透前脉搏 }}</span |
| | | > |
| | | 体重增长 |
| | | <b style="font-size: 200%; color: #303133;" |
| | | v-if="Number(deviceData.透前称重 - deviceData.干体重) > 0" |
| | | >+{{ |
| | | Number(deviceData.透前称重 - deviceData.干体重).toFixed(1) |
| | | }}</b |
| | | > |
| | | 增长率<b style="font-size: 200%;color: #303133;">({{ deviceData.体重增长率 }}%)</b> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div |
| | | class="container" |
| | | style=" |
| | | font-weight: 600; |
| | | height: 25%; |
| | | color: #909399; |
| | | margin-left: -20px; |
| | | " |
| | | > |
| | | <div class="grid-container" style="height: 100%;"> |
| | | <div> |
| | | 透前血压 |
| | | <span |
| | | v-if="deviceData.透前血压_伸缩压" |
| | | :style="{ color: tqXygj ? 'red' : '#303133' }" |
| | | style="font-weight: 800; font-size: 200%; white-space: nowrap" |
| | | >{{ deviceData.透前血压_伸缩压 }}/</span |
| | | > |
| | | <span |
| | | :style="{ color: tqXygj ? 'red' : '#303133' }" |
| | | style="font-weight: 800; font-size: 200%; white-space: nowrap" |
| | | >{{ deviceData.透前血压_舒张压 }}</span |
| | | > |
| | | 脉搏 |
| | | <span |
| | | v-if="deviceData.透前脉搏" |
| | | :style="{ color: tqMbgj ? 'red' : '#303133' }" |
| | | style="font-weight: 800; font-size: 200%; white-space: nowrap" |
| | | >{{ deviceData.透前脉搏 }}</span |
| | | > |
| | | </div> |
| | | </div> |
| | | |
| | | |
| | | |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row style="height: 20%;background-color: #ffffff; "> |
| | | |
| | | |
| | | <div v-if="isinitXy" style="font-size: 250%; color: cornflowerblue;height: 80%; width: 100%;" class="grid-container"> |
| | | |
| | | <div style="text-align: center;width: 100%;" class="flash-text"> |
| | | 最近一次, 高压:{{床旁血压计.sbp}},低压: {{床旁血压计.dbp}}, 心率: {{床旁血压计.pulseRate}} |
| | | </div> |
| | | |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row style="height: 20%;background-color: #ffffff; line-height: 50px;"> |
| | | |
| | | <div v-if="床旁血压计.zuihouTime>shishiTime" style="color: cornflowerblue;height: 20%; width: 100%;" class="grid-container"> |
| | | <div style="text-align: center;width: 100%; color: #909399;"> |
| | | <!-- {{isShowXY}} --> |
| | | <!-- {{床旁血压计.zuihouTime}} / {{shishiTime}} |
| | | {{}} --> |
| | | {{床旁血压计.date_time}} |
| | | </div> |
| | | |
| | | </div> |
| | | <div v-if="床旁血压计.zuihouTime>shishiTime" style="font-size: 300%; color: cornflowerblue;height: 80%; width: 100%;" class="grid-container"> |
| | | |
| | | <div style="text-align: center;width: 100%;" class="flash-text"> |
| | | 高压:{{床旁血压计.sbp}},低压: {{床旁血压计.dbp}}, 心率: {{床旁血压计.pulseRate}} |
| | | </div> |
| | | <div v-if="isinitXy" style="color: cornflowerblue;height: 20%; width: 100%;" class="grid-container"> |
| | | <div style="text-align: center;width: 100%; color: #909399;"> |
| | | <!-- {{isShowXY}} --> |
| | | <!-- {{床旁血压计.zuihouTime}} / {{shishiTime}} |
| | | {{}} --> |
| | | {{床旁血压计.date_time}} |
| | | </div> |
| | | |
| | | </div> |
| | | <div v-else style="font-size: 200%;height: 100%;text-align: center;padding: 5px; font-weight: 1000;" class="grid-container"> |
| | | 透析器:{{deviceData.透析器}} |
| | | </div> |
| | | <!-- <div style="font-size: 300%; color: red;height: 100%;" class="grid-container"> |
| | | |
| | | 患者掉压验证请注意! |
| | | |
| | | </div> |
| | | <div v-else style="font-size: 200%;height: 100%;text-align: center; color: #909399;padding: 5px;" class="grid-container"> |
| | | 透析器:{{deviceData.透析器}} |
| | | </div> |
| | | <!-- <div style="font-size: 300%; color: red;height: 100%;" class="grid-container"> |
| | | |
| | | 患者掉压验证请注意! |
| | | </div> --> |
| | | <!-- <el-alert style="font-size: 300%" title="处方已经确认。医嘱已执行" type="success" show-icon /> |
| | | <el-alert title="患者治疗过程中掉压验证,请注意!" type="warning" show-icon /> --> |
| | | |
| | | </div> --> |
| | | <!-- <el-alert style="font-size: 300%" title="处方已经确认。医嘱已执行" type="success" show-icon /> |
| | | <el-alert title="患者治疗过程中掉压验证,请注意!" type="warning" show-icon /> --> |
| | | |
| | | </el-row> |
| | | </el-row> |
| | | </template> |
| | | </div> |
| | | <div |
| | | v-else |
| | |
| | | </div> |
| | | <!-- 设置按钮 --> |
| | | <button id="settingsButton" class="fixed-bottom-right" @click="centerDialogVisible=true">⚙️</button> |
| | | <!-- <button id="settingsButton" class="fixed-bottom-right" @click="showxuye">⚙️</button> --> |
| | | <el-dialog |
| | | :show-close="false" |
| | | :close-on-press-escape="false" |
| | |
| | | </template> |
| | | <script lang="ts" setup> |
| | | import TQS88 from "../img/TQS88.png"; |
| | | import maibo from '../img/maibo.png' |
| | | import maibo from '../img/maibo2.png' |
| | | import xueya from '../img/xueya.png' |
| | | import {EventSourcePolyfill} from 'event-source-polyfill'; |
| | | import { computed, getCurrentInstance, onBeforeMount, onMounted, ref, watch } from "vue"; |
| | | import { computed, getCurrentInstance, onBeforeMount, onMounted, ref, watch, watchEffect } from "vue"; |
| | | import { Local } from '../utils/storage'; |
| | | import * as echarts from "echarts"; |
| | | import { jgTime4 } from "../utils/formatTime"; |
| | |
| | | const readyState = ref({ key: 0, value: "正在链接中" }); |
| | | const deviceCode=ref('') |
| | | const shishiTime=ref(new Date()) |
| | | //有没有推送过血压如果有 就一直会显示血压数据 |
| | | const isinitXy=ref(false) |
| | | const 床旁血压计=ref({ |
| | | date_time:'', |
| | | sbp:'', |
| | |
| | | 血压高值列表: "152,133,116", |
| | | 设备分区类型: 0, |
| | | 设备号: "23", |
| | | 设备名称: "23", |
| | | 设备名称: "初始化。。。", |
| | | 设备序列号: "B97AP002", |
| | | 设备状态列表: [ |
| | | { |
| | | 是否为警告标记: 0, |
| | | 状态名称: "待机", |
| | | 状态类型: "待机", |
| | | 状态颜色: "#13CE66", |
| | | }, |
| | | ], |
| | | 设备编号: "DEVICE9195233509924hOHL", |
| | | 超滤速度过快: null, |
| | |
| | | const ls = ref(""); |
| | | const ddd = ref(""); |
| | | const isShowXY=computed(()=>{ |
| | | if(床旁血压计.value.zuihouTime>new Date()){ |
| | | if(床旁血压计.value.zuihouTime>shishiTime.value){ |
| | | return true |
| | | }else{ |
| | | return false |
| | | } |
| | | }) |
| | | watch(() =>isShowXY.value, |
| | | ()=>{ |
| | | if(床旁血压计.value.zuihouTime>shishiTime.value){ |
| | | |
| | | }else{ |
| | | setTimeout(()=>{ |
| | | initTupiao() |
| | | },500) |
| | | |
| | | |
| | | } |
| | | } |
| | | ) |
| | | const txzt: any = computed(() => { |
| | | return deviceData.value.透析状态; |
| | | }); |
| | |
| | | backgroundSize: "cover", // 根据需要调整 |
| | | backgroundPosition: "center", // 根据需要调整 |
| | | }; |
| | | |
| | | watch( |
| | | () => txzt.value, |
| | | () => { |
| | |
| | | centerDialogVisible.value=false |
| | | Local.set('devcieCode',deviceCode.value) |
| | | sourceInit() |
| | | window.location.reload(); |
| | | }else{ |
| | | ElMessage.warning('请先输入设备编号') |
| | | } |
| | |
| | | ); |
| | | //创建链接对象 |
| | | const creatSource = () => { |
| | | // http://testbs.ihemodialysis.com/sse/sseEvent |
| | | const stateArr = [ |
| | | { key: 0, value: "正在链接中" }, |
| | | { key: 1, value: "已经链接并且可以通讯" }, |
| | | { key: 2, value: "连接已关闭或者没有链接成功" }, |
| | | ]; |
| | | try { |
| | | source.value= new EventSourcePolyfill(`http://testbs.ihemodialysis.com/sse/sseEvent/${deviceCode.value}`,{ |
| | | source.value= new EventSourcePolyfill(`https://backend.ihemodialysis.com/sse/sseEvent/${deviceCode.value}`,{ |
| | | heartbeatTimeout:60000 |
| | | }); |
| | | source.value.onopen = (e) => { |
| | |
| | | console.log(dataBody) |
| | | console.log(dataBody) |
| | | if(dataBody.推送类型==='床旁血压计'){ |
| | | isinitXy.value=true |
| | | let date = new Date(); |
| | | date.setMinutes(date.getMinutes() + 1); |
| | | date.setMinutes(date.getMinutes() + 5); |
| | | 床旁血压计.value={ |
| | | date_time:dataBody?.床旁血压结果?.measureTime, |
| | | sbp:dataBody?.床旁血压结果?.sbp, |
| | |
| | | dbp:dataBody?.床旁血压结果?.dbp, |
| | | zuihouTime:date |
| | | } |
| | | setTimeout(()=>{ |
| | | initTupiao() |
| | | },500) |
| | | }else if(dataBody.推送类型==='中央监控大屏信息'){ |
| | | console.log(Date.now() + 'DEV') |
| | | deviceData.value=dataBody?.透析状态 |
| | | if(dataBody?.透析状态){ |
| | | deviceData.value=dataBody?.透析状态 |
| | | }else{ |
| | | deviceData.value.设备名称=dataBody.IOT信息.床号 |
| | | deviceData.value.患者姓名='' |
| | | } |
| | | |
| | | deviceData.value.设备变化=Date.now() + 'DEV' |
| | | console.log(1) |
| | | console.log(2) |
| | |
| | | console.log(4) |
| | | console.log(deviceData.value.设备变化) |
| | | deviceData.value.设备状态列表=dataBody.IOT信息.状态列表 |
| | | if(!dataBody.透析状态){ |
| | | deviceData.value.患者姓名='' |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | |
| | | console.log(error); |
| | | } |
| | | }; |
| | | const showxuye=()=>{ |
| | | let date = new Date(); |
| | | date.setMinutes(date.getMinutes() + 0.1); |
| | | 床旁血压计.value={ |
| | | date_time:'2023-32-3232', |
| | | sbp:'117', |
| | | pulseRate:'77', |
| | | dbp:'99', |
| | | zuihouTime:date |
| | | } |
| | | isinitXy.value=true |
| | | setTimeout(()=>{ |
| | | initTupiao() |
| | | },500) |
| | | } |
| | | //初始化 |
| | | const sourceInit = () => { |
| | | console.log('初始化see') |
| | |
| | | proxy.$refs["echartsDiv" + deviceData.value.设备编号] |
| | | ); |
| | | const option = { |
| | | backgroundColor: textcolor.value, |
| | | backgroundColor: 床旁血压计.value.zuihouTime>shishiTime.value?'#ffffff':textcolor.value, |
| | | // backgroundColor: textcolor.value, |
| | | tooltip: { |
| | | trigger: "axis", |
| | | }, |
| | |
| | | ); |
| | | |
| | | const option = { |
| | | backgroundColor: textcolor.value, |
| | | backgroundColor: 床旁血压计.value.zuihouTime>shishiTime.value?'#ffffff':textcolor.value, |
| | | tooltip: { |
| | | trigger: "axis", |
| | | }, |
| | |
| | | .fixed-bottom-right:hover { |
| | | background-color: #0056b3; |
| | | } |
| | | /* 定义闪现动画的关键帧 */ |
| | | @keyframes flash { |
| | | 0%, 100% { |
| | | opacity: 1; /* 开始和结束时完全可见 */ |
| | | } |
| | | 50% { |
| | | opacity: 0; /* 中间时刻完全透明 */ |
| | | } |
| | | } |
| | | // /* 定义闪现动画的关键帧 */ |
| | | // @keyframes flash { |
| | | // 0%, 100% { |
| | | // opacity: 1; /* 开始和结束时完全可见 */ |
| | | // } |
| | | // 50% { |
| | | // opacity: 0; /* 中间时刻完全透明 */ |
| | | // } |
| | | // } |
| | | |
| | | /* 应用动画到 div */ |
| | | .flash-text { |