From 0a384d93299aa97e988122aa7d3e992eede7be04 Mon Sep 17 00:00:00 2001
From: zhangchen <1652267879@qq.com>
Date: 星期五, 20 六月 2025 16:34:33 +0800
Subject: [PATCH] ID1643-副屏添加医嘱展示完成
---
src/views/deviceWindoes2.vue | 1982 +++++++++++++++++++++++----------------------
src/assets/turn.png | 0
src/components/doctorAdvice/type.ts | 375 ++++++++
src/components/doctorAdvice/index.vue | 186 ++++
src/main.ts | 5
5 files changed, 1,591 insertions(+), 957 deletions(-)
diff --git a/src/assets/turn.png b/src/assets/turn.png
new file mode 100644
index 0000000..47f1c79
--- /dev/null
+++ b/src/assets/turn.png
Binary files differ
diff --git a/src/components/doctorAdvice/index.vue b/src/components/doctorAdvice/index.vue
new file mode 100644
index 0000000..7568f9e
--- /dev/null
+++ b/src/components/doctorAdvice/index.vue
@@ -0,0 +1,186 @@
+<template>
+ <div class="doctor_advice_container" :style="{ height: height + 'px' }">
+ <div class="doctor_advice_list">
+ <div
+ v-for="(item, index) in drugOrders"
+ :key="index"
+ class="doctor_advice_item"
+ >
+ <div class="doctor_advice_item_name">{{ item.name }}</div>
+ <template v-if="item?.children && item.children.length > 0">
+ <div
+ v-for="(child, childIndex) in item.children"
+ :key="childIndex"
+ class="doctor_advice_item_sub"
+ >
+ <img :src="trunImgSrc" alt="" />
+ <span>{{ child }}</span>
+ </div>
+ </template>
+ </div>
+ </div>
+ </div>
+</template>
+
+<script lang="ts">
+import { PropType, computed } from "vue";
+import type { Order } from "./type";
+import trunImgSrc from "../../assets/turn.png";
+
+export default {
+ name: "DoctorAdvice",
+ props: {
+ // 容器的高度
+ height: {
+ type: Number,
+ default: 0,
+ },
+ // 医嘱列表
+ list: {
+ type: Array as PropType<Order[]>,
+ default: () => [],
+ },
+ },
+ setup(props) {
+ const drugOrders = computed(() => {
+ // 格式化主医嘱数据(浅拷贝)
+ const formatList = props.list
+ .filter((e) => e.orderIsSub !== 1)
+ .map((e) => ({ ...e }));
+
+ // 处理子医嘱并挂载到对应主医嘱上
+ props.list.forEach((e) => {
+ if (e.orderIsSub === 1) {
+ const i = formatList.findIndex((v) => v.code === e.orderMainCode);
+ if (i !== -1) {
+ if (!formatList[i].subDrugOrders) {
+ formatList[i].subDrugOrders = [];
+ }
+ formatList[i].subDrugOrders.push(e);
+ }
+ }
+ });
+
+ // 构建显示用的 name 和子医嘱 children
+ return formatList.map((order) => {
+ let name = "";
+
+ if (order.orderNameInfo) {
+ name = order.orderNameInfo.itemName || "";
+ const drugSpec = order.orderNameInfo.feeDrugInfo?.drugSpec;
+ if (drugSpec) {
+ name += ` (${drugSpec})`;
+ }
+ }
+
+ if (order.orderUsage && order.orderUsage !== 0) {
+ name += ` ${order.orderUsage}${
+ order.orderNameInfo?.feeDrugInfo?.drugUnitName || ""
+ }`;
+ }
+
+ if (order.orderCount) {
+ name += ` ${order.orderCount}`;
+ const pkgUnit = order.orderNameInfo?.feeDrugInfo?.drugPackageUnitName;
+ if (pkgUnit) {
+ name += pkgUnit;
+ }
+ }
+
+ if (order.orderFromInfo?.dictText) {
+ name += ` ${order.orderFromInfo.dictText}`;
+ }
+
+ if (order.orderFreqInfo?.dictText) {
+ name += ` ${order.orderFreqInfo.dictText}`;
+ }
+
+ const children: string[] = [];
+
+ if (order.subDrugOrders?.length) {
+ order.subDrugOrders.forEach((child: any) => {
+ let subName = child.orderNameInfo?.itemName || "";
+
+ const childSpec = child.orderNameInfo?.feeDrugInfo?.drugSpec;
+ if (childSpec) {
+ subName += ` (${childSpec})`;
+ }
+
+ if (child.orderUsage) {
+ const unit = child.orderNameInfo?.feeDrugInfo?.drugUnitName || "";
+ subName += ` ${child.orderUsage}${unit}`;
+ }
+
+ if (child.orderCount) {
+ const pkgUnit =
+ child.orderNameInfo?.feeDrugInfo?.drugPackageUnitName;
+ if (pkgUnit) {
+ subName += ` ${child.orderCount}${pkgUnit}`;
+ }
+ }
+
+ children.push(subName);
+ });
+ }
+
+ return {
+ name,
+ children,
+ };
+ });
+ });
+
+ return {
+ drugOrders,
+ trunImgSrc,
+ };
+ },
+};
+</script>
+
+<style scoped>
+.doctor_advice_container {
+ padding: 20px;
+ box-sizing: border-box;
+}
+.doctor_advice_container .doctor_advice_list {
+ box-sizing: border-box;
+ height: 100%;
+ background: #ffffff;
+ border-radius: 8px;
+ overflow: hidden;
+ overflow-y: auto;
+}
+.doctor_advice_container .doctor_advice_item {
+ box-sizing: border-box;
+ padding: 12px 24px;
+ border-bottom: 2px solid #e6e5e5;
+}
+.doctor_advice_container .doctor_advice_item:last-child {
+ box-sizing: border-box;
+ border-bottom: none;
+}
+.doctor_advice_container .doctor_advice_item .doctor_advice_item_name {
+ box-sizing: border-box;
+ font-weight: 400;
+ font-size: 26px;
+ color: #333333;
+ line-height: 35px;
+ text-align: left;
+ font-style: normal;
+}
+.doctor_advice_container .doctor_advice_item_sub {
+ padding-left: 15px;
+ font-weight: 400;
+ font-size: 26px;
+ color: #777777;
+ line-height: 35px;
+ text-align: left;
+ font-style: normal;
+}
+.doctor_advice_container .doctor_advice_item_sub img {
+ width: 24px;
+ height: 24px;
+ margin-right: 5px;
+}
+</style>
\ No newline at end of file
diff --git a/src/components/doctorAdvice/type.ts b/src/components/doctorAdvice/type.ts
new file mode 100644
index 0000000..7808a58
--- /dev/null
+++ b/src/components/doctorAdvice/type.ts
@@ -0,0 +1,375 @@
+export interface Order {
+ orderType: number;
+ code: string;
+ orderFreq: string;
+ orderDoctor: string;
+ confirmUserInfo: any | null;
+ remark: string | null;
+ isConfirm: number;
+ isDeleted: number;
+ orderExecuteCheckUser: any | null;
+ orderIsSub: number;
+ orderExecuteTime: any | null;
+ id: number;
+ recordCode: string;
+ deletedTime: any | null;
+ orderExecutePatient: any | null;
+ orderExecuteUser: any | null;
+ orderName: string;
+ orderExecuteCheckUserInfo: any | null;
+ subDrugOrders: any | null;
+ orderSort: number;
+ orderCount: number;
+ hisOrderNo: string | null;
+ updateUser: any | null;
+ confirmTime: any | null;
+ confirmUser: any | null;
+ updateTime: number;
+ orderDoctorInfo: UserDoctorInfo;
+ orderMainCode: string | null;
+ createTime: number;
+ orderFreqInfo: OrderFreqInfo;
+ orderNameInfo: OrderNameInfo;
+ createUser: any | null;
+ orderFrom: string;
+ orderUsage: number;
+ orderIsSpin: number;
+ orderExecuteUserInfo: any | null;
+ orderFromInfo: OrderFromInfo;
+ orderStartTime: number;
+}
+
+interface UserDoctorInfo {
+ isRecvAlarmEmail: number;
+ prepareWorkMedicineStat: any | null;
+ userDegree: any | null;
+ isRecvAlarmWechat: number;
+ listReadyRows: any | null;
+ selectedFieldsInInventory2OutPage: any | null;
+ currentClientInfo: any | null;
+ signedInCountByDa: any | null;
+ selectFieldsInShangjiCanshuPage: any | null;
+ relatedClients: any | null;
+ userWorkState: any | null;
+ userIdentityCode: any | null;
+ clientInfos: any | null;
+ userMobile: string;
+ id: number;
+ loginWechatMpId: any | null;
+ userIsTongluDoctor: number;
+ canModifyHistoryHms: boolean;
+ 是否自动出库至二级默认仓库: any | null;
+ userGoDepartment: any | null;
+ userRfid: any | null;
+ userGraduateTime: any | null;
+ 管理员能看到的客户列表: any | null;
+ userSortOrder: number;
+ userCustomSetting: string;
+ hisCode: any | null;
+ isRecvAlarm: any | null;
+ selectedFieldsInCleanStatPage: any | null;
+ 排班时段选择项: any | null;
+ userVsRoleList: any | null;
+ userPassword: string;
+ code: string;
+ userSignPicUrl: any | null;
+ userFromDepartment: any | null;
+ roles: any | null;
+ userAvatar: any | null;
+ userNo: string;
+ admin: boolean;
+ remark: string;
+ userAdmin: boolean;
+ checkVersionCode: string;
+ selectedFieldsInMedStat2: any | null;
+ userTitle: string;
+ isDeleted: number;
+ nurse: boolean;
+ canDeleteHistoryHms: boolean;
+ userEmail: string;
+ deletedTime: any | null;
+ userWorkTimeFrom: any | null;
+ prepareWorkMedicine: any | null;
+ clientVsUserList: any | null;
+ isValid: number;
+ teamState: any | null;
+ updateUser: number;
+ updateTime: number;
+ 隐藏自备药: any | null;
+ userName: string;
+ selectFieldsInTodayOrderPage: any | null;
+ isShow: number;
+ doctor: boolean;
+ isValidForClient: number;
+ loginWechatUnionId: any | null;
+ userGoDate: any | null;
+ createTime: number;
+ userInDate: any | null;
+ clientCode: any | null;
+ selectedFieldsInInventory2QueryPage: any | null;
+ signedInCountByStatistics: any | null;
+ createUser: number;
+ userGender: number;
+ userPinyin: string;
+ listStatInfo: any | null;
+}
+
+interface OrderFreqInfo {
+ code: string;
+ dictIsCustom: number;
+ updateUser: any | null;
+ remark: any | null;
+ updateTime: number;
+ dictNo: string;
+ dictType: string;
+ dictIsEnable: number;
+ isDeleted: number;
+ createTime: number;
+ hisCode: any | null;
+ sortOrder: number;
+ createUser: number;
+ id: number;
+ deletedTime: any | null;
+ dictText: string;
+}
+
+interface OrderNameInfo {
+ itemAgent: any | null;
+ itemPermissionCode: any | null;
+ inventoryItemTypeInfo: InventoryItemTypeInfo;
+ itemIsUse: number;
+ itemIsRestrictUse: number;
+ itemCode: string;
+ itemHisType: any | null;
+ itemUnit: any | null;
+ suntopItemCode: any | null;
+ itemOutPrice: number;
+ itemFactoryInfo: any | null;
+ itemName: string;
+ itemCommonUseInBothSide: any | null;
+ id: number;
+ 当前使用量: any | null;
+ 剩余总量: any | null;
+ storageCode: any | null;
+ 入库总量: any | null;
+ 透析器国网上报: DialyzerReport;
+ hisCode: any | null;
+ itemIsOutToPatient: number;
+ itemSalePrice: number;
+ itemIsReUse: number;
+ itemPackageUnit: any | null;
+ inStorageCountInfo: any | null;
+ itemPackageUnitName: string;
+ itemIsFavor: number;
+ itemSpec: string;
+ itemYibaoPrice: any | null;
+ inventoryTypeCode: string;
+ code: string;
+ itemLicenseCode: any | null;
+ itemAgentInfo: any | null;
+ itemOperator: any | null;
+ remark: any | null;
+ 批号对象列表: any | null;
+ isDeleted: number;
+ itemIsEnableManage: number;
+ deletedTime: any | null;
+ itemIsUseAsXt: number;
+ itemName2: string;
+ inventoryItemType: number;
+ itemMoMaterial: any | null;
+ itemMoArea: number;
+ itemPinyin: string;
+ itemTxqCleanRate: any | null;
+ inventoryTypeName: any | null;
+ itemSortOrder: number;
+ updateUser: any | null;
+ updateTime: number;
+ 结存: any | null;
+ isShow: number;
+ itemFactory: any | null;
+ feeDrugInfo: FeeDrugInfo;
+ itemOperatorInfo: any | null;
+ itemPackageCount: any | null;
+ createTime: number;
+ clientCode: string;
+ itemExtendJson: string;
+ itemPeriodAlarmDays: number;
+ itemRestrictUseRemark: any | null;
+ createUser: number;
+ itemUnitInfo: any | null;
+ itemInPrice: number;
+ itemInventoryAlarmCount: number;
+ itemYibaoCode: any | null;
+}
+
+interface InventoryItemTypeInfo {
+ code: string;
+ typeName: string;
+ updateUser: any | null;
+ remark: any | null;
+ updateTime: number;
+ typeCategory: number;
+ isShow: boolean;
+ isDeleted: number;
+ isEditable: number;
+ createTime: number;
+ clientCode: any | null;
+ sortOrder: number;
+ createUser: any | null;
+ id: number;
+ deletedTime: any | null;
+}
+
+interface DialyzerReport {
+ eSA_促红素种类: string;
+ 抗凝剂_低分子肝素首剂量_IU: string;
+ 抗凝剂_总剂量: string;
+ 透析器透析膜: string;
+ 铁剂_其它静脉种类: string;
+ eSA_用药方式: any[]; // 根据实际元素类型替换 any
+ eSA_静脉剂量单位: string;
+ 铁剂_静脉剂量周: string;
+ 抗凝剂_枸橼酸钠速率每小时_ml: string;
+ 抗凝剂_阿加曲班追加速率_IU每小时: string;
+ 抗凝剂_肝素追加速率_mg每小时: string;
+ 透析器使用: string;
+ 抗凝剂_低分子肝素单位: string;
+ 抗凝剂_肝素首剂量_mg: string;
+ 抗凝剂_枸橼酸钠_其它钠浓度: string;
+ 抗凝剂_追加剂量: string;
+ 抗凝剂_其它抗凝剂: string;
+ 透析器类型: string;
+ 抗凝剂_阿加曲班_追加时间小时: string;
+ 抗凝剂_阿加曲班追加速率_mg每小时: string;
+ 抗凝剂_低分子肝素首剂量_mg: string;
+ 抗凝剂_阿加曲班首剂量_mg: string;
+ 透析器通量: string;
+ 抗凝剂_肝素首剂量_IU: string;
+ 铁剂_静脉种类: string;
+ 药品类型: string;
+ eSA_皮下剂量: string;
+ 铁剂_口服剂量日: string;
+ eSA_静脉剂量: string;
+ 抗凝剂_种类: string;
+ 抗凝剂_阿加曲班_追加时间分钟: string;
+ eSA_促红素名称: string;
+ 抗凝剂_低分子肝素类型: string;
+ 铁剂_给药方式: string;
+ 抗凝剂_首剂量: string;
+ 抗凝剂_低分子肝素总剂量: string;
+ 抗凝剂_低分子肝素追加时间: string;
+ 抗凝剂_低分子肝素追加剂量_mg: string;
+ 抗凝剂_肝素_追加时间小时: string;
+ 铁剂_其它口服种类: string;
+ 抗凝剂_阿加曲班首剂量_IU: string;
+ 抗凝剂_枸橼酸钠_使用时间小时: string;
+ 抗凝剂_肝素_追加时间分钟: string;
+ 抗凝剂_枸橼酸钠浓度百分比: string;
+ 抗凝剂_肝素单位: string;
+ 抗凝剂_阿加曲班单位: string;
+ eSA_皮下剂量单位: string;
+ 抗高血压药_分类: any[];
+ 抗凝剂_枸橼酸钠_使用时间分钟: string;
+ 抗凝剂_肝素追加速率_IU每小时: string;
+ 铁剂_口服种类: string;
+ 透析器膜面积: string;
+ 抗凝剂_是否使用华法林: string;
+ 抗凝剂_低分子肝素追加剂量_IU: string;
+ eSA_其它促红素说明: string;
+ 铁剂_口服剂量单位: string;
+ 铁剂_静脉剂量单位: string;
+}
+
+interface FeeDrugInfo {
+ drugBarcode: string;
+ drugIsNeedTest: number;
+ drugUsePeriodName: string;
+ drugProduceLocation: string;
+ drugPriceYibao: number;
+ drugUseTypeName: string;
+ drugPermissionCode: string;
+ drugCategory: number;
+ drugPackageType: number;
+ drugPackageUnitAlias: string;
+ drugSpec: string;
+ drugAntibioticLevel: number;
+ drugJixing: string;
+ drugHisCode: any | null;
+ drugInventoryPackageTypeName: any | null;
+ drugBenweiCode: string;
+ id: number;
+ drugUseMethodName: string;
+ drugIsFavor: number;
+ drugPackageUnitName: string;
+ drugPackageSum: number;
+ drugSortOrder: number;
+ drugYibaoCode: string;
+ inventoryItemDetailCode: string;
+ drugName2: string;
+ drugUseUnitName: string;
+ drugUnit: string;
+ drugUsePeriod: string;
+ drugInventoryPackageCount: number;
+ drugUseMethod: string;
+ drugName: string;
+ drugUseUnit: string;
+ drugInventoryPackageType: string;
+ drugUseOnetime: string;
+ code: string;
+ drugCode: string;
+ drugPackageUnit: string;
+ drugProduceFactoryName: any | null;
+ drugYlCode: string;
+ remark: string;
+ drugLimitUseText: string;
+ drugProduceFactory: string;
+ drugUnitName: string;
+ isDeleted: number;
+ drugInventoryAlertDays: number;
+ drugPriceIn: number;
+ drugStatus: number;
+ drugPriceCategory: number;
+ drugVsDiagnoseName: any | null;
+ drugSyncPrice: number;
+ deletedTime: any | null;
+ drugPackageUnitAliasName: string;
+ drugPinyin: string;
+ drugVsDiagnose: string;
+ drugGansuUseLimit: any | null;
+ drugProperty: string;
+ drugJixingName: string;
+ drugPriceSale: number;
+ updateUser: any | null;
+ drugTransfer1: any | null;
+ updateTime: number;
+ drugTransfer2: any | null;
+ drugUseType: string;
+ drugLimitUseType: number;
+ drugInventoryAlertValidDays: number;
+ createTime: number;
+ createUser: any | null;
+ drugMonitorCode: string;
+ drugPlusPercent: number;
+ drugInHospitalUseType: number;
+ drugSpecialProperty: number;
+ drugBaseType: number;
+}
+
+interface OrderFromInfo {
+ code: string;
+ dictIsCustom: number;
+ updateUser: any | null;
+ remark: any | null;
+ updateTime: number;
+ dictNo: string;
+ dictType: string;
+ dictIsEnable: number;
+ isDeleted: number;
+ createTime: number;
+ hisCode: any | null;
+ sortOrder: number;
+ createUser: any | null;
+ id: number;
+ deletedTime: any | null;
+ dictText: string;
+}
\ No newline at end of file
diff --git a/src/main.ts b/src/main.ts
index 7bc77dd..a733e5c 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -6,4 +6,9 @@
import router from './router';
import App from './App.vue'
+// 如果需要在手机平板上打开控制台,安装一个这个
+// import VConsole from 'vconsole'
+// const vConsole = new VConsole()
+// console.log('vConsole is ready.')
+
createApp(App).use(router).use(ElementPlus).use(Vant).mount('#app')
diff --git a/src/views/deviceWindoes2.vue b/src/views/deviceWindoes2.vue
index 189bb11..0322e29 100644
--- a/src/views/deviceWindoes2.vue
+++ b/src/views/deviceWindoes2.vue
@@ -2,7 +2,7 @@
<div class="divice">
<!-- {{数据初始化}} -->
<div class="youzhiliao" style="height: 100%" v-if="deviceData.患者姓名">
- <div class="toubu" style="height: 11%">
+ <div id="toubu" class="toubu" style="height: 11%">
<el-row
v-if="deviceData.患者姓名 !== ''"
style="
@@ -79,280 +79,29 @@
</div>
</el-row>
</div>
- <div class="chongjian" style="height: 50%">
- <el-row :gutter="20" style="height: 100%; padding: 20px 20px 10px 20px">
- <el-col :span="6" style="height: 100%; padding-bottom: 10px">
- <div style="height: 100%">
- <div
- :style="{ backgroundImage: `url(${deviceData.患者头像})` }"
- style="
- background-size: 100% 100%;
- border-radius: 5px;
- /* margin-bottom: 1%; */
- height: 100%;
- width: 100%;
- "
- ></div>
- </div>
- </el-col>
- <!-- 床旁显示血压计有数据的时候 -->
- <template v-if="床旁血压计.zuihouTime > shishiTime">
- <el-col :span="18" style="height: 100%">
- <el-row style="height: 50%">
- <div style="width: 100%; height: 100%; border-radius: 8px">
+ <el-carousel v-if="contentHeight > 0" height="auto" :autoplay="false" motion-blur :initial-index="0">
+ <el-carousel-item :style="{ height: (contentHeight - 10) + 'px' }">
+ <div class="chongjian" style="height: 50%">
+ <el-row :gutter="20" style="height: 100%; padding: 20px 20px 10px 20px">
+ <el-col :span="6" style="height: 100%; padding-bottom: 10px">
+ <div style="height: 100%">
<div
- class="item"
- style="background-color: #ffffff; height: 97%"
- >
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">血压</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 65px;
- color: #70a3dd;
- "
- class="grid-container"
- >
- {{ 床旁血压计.sbp }} / {{ 床旁血压计.dbp }}
- </div>
- </div>
+ :style="{ backgroundImage: `url(${deviceData.患者头像})` }"
+ style="
+ background-size: 100% 100%;
+ border-radius: 5px;
+ /* margin-bottom: 1%; */
+ height: 100%;
+ width: 100%;
+ "
+ ></div>
</div>
- </el-row>
- <el-row style="height: 50%">
- <div style="width: 100%; height: 100%; border-radius: 8px">
- <div
- class="item"
- style="background-color: #ffffff; height: 97%"
- >
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="xinlv"
- />
- <span class="text-group_3">心率</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 65px;
- color: #70a3dd;
- "
- class="grid-container"
- >
- {{ 床旁血压计.pulseRate }}
- </div>
- </div>
- </div>
- </el-row>
- </el-col>
- </template>
- <!-- 未签到 -->
- <template v-else-if="Number(deviceData.透析状态) === 0">
- <el-col :span="18" style="height: 100%">
- <el-row :gutter="20" style="width: 100%; height: 100%">
- <el-col :span="14" style="height: 100%">
- <div class="container-weiqiandao">
- <div
- class="item-weiqiandao"
- style="background: #e5eeff; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">治疗模式</span>
- </div>
- <div
- class="container-body"
- style="height: calc(100% - 30px); width: 100%"
- >
- <div
- class="container-body-text"
- style="color: #3a75b8; font-size: 30px"
- >
- <span
- style="font-size: 30px"
- v-if="deviceData.透析方案 === 'HDF'"
- >
- {{
- deviceData?.置换方式 === "前置换" ? "前" : "后"
- }}</span
- >
- {{ deviceData.透析方案 }}
- </div>
- </div>
- </div>
- <div
- class="item-weiqiandao"
- style="background: #f9dede; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">人工肾</span>
- </div>
- <div
- class="grid-container"
- style="
- height: calc(100% - 30px);
- width: 100%;
- font-size: 28px;
- "
- >
- <div
- class="grid-container-text"
- style="color: #a78718"
- v-for="(item, index) in deviceData.透析器列表"
- :style="{
- fontSize:
- deviceData.透析器列表.length > 1
- ? '22px'
- : '28px',
- }"
- :key="index"
- >
- <div class="left-div">{{ item.name }}</div>
- <div class="right-div">
- {{ item.数量 }}{{ item.单位 }}
- </div>
- </div>
- </div>
- </div>
- <div
- class="item-weiqiandao"
- style="background: #d9f0e2; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">一次性循环管路</span>
- </div>
- <div
- class="grid-container"
- style="
- height: calc(100% - 30px);
- width: 100%;
- font-size: 28px;
- "
- >
- <div
- class="grid-container-text"
- style="color: #3ab859"
- v-for="(item, index) in deviceData.管路列表"
- :style="{
- fontSize:
- deviceData.管路列表.length > 1 ? '22px' : '28px',
- }"
- :key="index"
- >
- <div class="left-div">{{ item.name }}</div>
- <div class="right-div">{{ item.数量 }}支</div>
- </div>
- </div>
- </div>
- </div>
- </el-col>
- <el-col :span="10" style="height: 100%">
- <div class="container-weiqiandao">
- <div
- class="item-weiqiandao"
- style="background: #f6f5fa; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="txztimg"
- />
- <span class="text-group_3">治疗状态</span>
- </div>
- <div
- class="container-body"
- style="height: calc(100% - 30px); width: 100%"
- >
- <div
- class="container-body-text"
- style="color: #333333; font-size: 50px"
- >
- {{ txztText }}
- </div>
- </div>
- </div>
- <div
- class="item-weiqiandao"
- style="background: #efe5ff; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">透析液</span>
- </div>
- <div
- class="grid-container"
- style="
- height: calc(100% - 30px);
- width: 100%;
- font-size: 28px;
- "
- >
- <div
- class="grid-container-text"
- style="color: #3ab859"
- :style="{
- fontSize:
- deviceData.透析液列表.length > 1
- ? '22px'
- : '28px',
- }"
- v-for="(item, index) in deviceData.透析液列表"
- :key="index"
- >
- <div class="left-div">{{ item.name }}</div>
- <div class="right-div">
- {{ item.数量 }}{{ item.单位 }}
- </div>
- </div>
- </div>
- </div>
- </div>
- </el-col>
- </el-row>
- </el-col>
- </template>
- <!-- 治疗中 -->
- <template v-else>
- <el-col :span="18" style="height: 100%">
- <el-row style="height: 50%; padding-bottom: 10px">
- <div style="width: 100%; height: 100%; border-radius: 8px">
- <el-row style="height: 100%" :gutter="10">
- <el-col class="itemboy" style="height: 100%" :span="7">
+ </el-col>
+ <!-- 床旁显示血压计有数据的时候 -->
+ <template v-if="床旁血压计.zuihouTime > shishiTime">
+ <el-col :span="18" style="height: 100%">
+ <el-row style="height: 50%">
+ <div style="width: 100%; height: 100%; border-radius: 8px">
<div
class="item"
style="background-color: #ffffff; height: 97%"
@@ -362,9 +111,9 @@
<img
style="width: 25px"
referrerpolicy="no-referrer"
- :src="zlms"
+ :src="tsl"
/>
- <span class="text-group_3">治疗模式</span>
+ <span class="text-group_3">血压</span>
</div>
</div>
<div
@@ -372,32 +121,170 @@
height: 75%;
text-align: center;
font-weight: 600;
- font-size: 50px;
- color: #d58e56;
+ font-size: 65px;
+ color: #70a3dd;
"
class="grid-container"
>
- <div>
- <span
- style="font-size: 30px"
- v-if="deviceData.透析方案 === 'HDF'"
- >
- {{
- deviceData?.置换方式 === "前置换" ? "前" : "后"
- }}</span
- >
- {{ deviceData.透析方案 }}
- </div>
+ {{ 床旁血压计.sbp }} / {{ 床旁血压计.dbp }}
</div>
</div>
- </el-col>
- <el-col class="itemboy" style="height: 100%" :span="7">
+ </div>
+ </el-row>
+ <el-row style="height: 50%">
+ <div style="width: 100%; height: 100%; border-radius: 8px">
<div
class="item"
style="background-color: #ffffff; height: 97%"
>
<div style="height: 25%">
<div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="xinlv"
+ />
+ <span class="text-group_3">心率</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 65px;
+ color: #70a3dd;
+ "
+ class="grid-container"
+ >
+ {{ 床旁血压计.pulseRate }}
+ </div>
+ </div>
+ </div>
+ </el-row>
+ </el-col>
+ </template>
+ <!-- 未签到 -->
+ <template v-else-if="Number(deviceData.透析状态) === 0">
+ <el-col :span="18" style="height: 100%">
+ <el-row :gutter="20" style="width: 100%; height: 100%">
+ <el-col :span="14" style="height: 100%">
+ <div class="container-weiqiandao">
+ <div
+ class="item-weiqiandao"
+ style="background: #e5eeff; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">治疗模式</span>
+ </div>
+ <div
+ class="container-body"
+ style="height: calc(100% - 30px); width: 100%"
+ >
+ <div
+ class="container-body-text"
+ style="color: #3a75b8; font-size: 30px"
+ >
+ <span
+ style="font-size: 30px"
+ v-if="deviceData.透析方案 === 'HDF'"
+ >
+ {{
+ deviceData?.置换方式 === "前置换" ? "前" : "后"
+ }}</span
+ >
+ {{ deviceData.透析方案 }}
+ </div>
+ </div>
+ </div>
+ <div
+ class="item-weiqiandao"
+ style="background: #f9dede; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">人工肾</span>
+ </div>
+ <div
+ class="grid-container"
+ style="
+ height: calc(100% - 30px);
+ width: 100%;
+ font-size: 28px;
+ "
+ >
+ <div
+ class="grid-container-text"
+ style="color: #a78718"
+ v-for="(item, index) in deviceData.透析器列表"
+ :style="{
+ fontSize:
+ deviceData.透析器列表.length > 1
+ ? '22px'
+ : '28px',
+ }"
+ :key="index"
+ >
+ <div class="left-div">{{ item.name }}</div>
+ <div class="right-div">
+ {{ item.数量 }}{{ item.单位 }}
+ </div>
+ </div>
+ </div>
+ </div>
+ <div
+ class="item-weiqiandao"
+ style="background: #d9f0e2; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">一次性循环管路</span>
+ </div>
+ <div
+ class="grid-container"
+ style="
+ height: calc(100% - 30px);
+ width: 100%;
+ font-size: 28px;
+ "
+ >
+ <div
+ class="grid-container-text"
+ style="color: #3ab859"
+ v-for="(item, index) in deviceData.管路列表"
+ :style="{
+ fontSize:
+ deviceData.管路列表.length > 1 ? '22px' : '28px',
+ }"
+ :key="index"
+ >
+ <div class="left-div">{{ item.name }}</div>
+ <div class="right-div">{{ item.数量 }}支</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </el-col>
+ <el-col :span="10" style="height: 100%">
+ <div class="container-weiqiandao">
+ <div
+ class="item-weiqiandao"
+ style="background: #f6f5fa; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
<img
style="width: 25px"
referrerpolicy="no-referrer"
@@ -405,449 +292,362 @@
/>
<span class="text-group_3">治疗状态</span>
</div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #70a3dd;
- "
- class="grid-container"
- >
- {{ txztText }}
- </div>
- </div>
- </el-col>
- <el-col class="itemboy" style="height: 100%" :span="10">
- <div
- class="item"
- style="background-color: #ffffff; height: 97%"
- >
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="txq"
- />
- <span class="text-group_3">人工肾</span>
+ <div
+ class="container-body"
+ style="height: calc(100% - 30px); width: 100%"
+ >
+ <div
+ class="container-body-text"
+ style="color: #333333; font-size: 50px"
+ >
+ {{ txztText }}
+ </div>
</div>
</div>
<div
- style="
- height: 85%;
- font-weight: 600;
- font-size: 50px;
- color: #8079cb;
- "
- class="scrollable-text"
+ class="item-weiqiandao"
+ style="background: #efe5ff; border-radius: 8px"
>
- {{ deviceData.透析器 }}
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">透析液</span>
+ </div>
+ <div
+ class="grid-container"
+ style="
+ height: calc(100% - 30px);
+ width: 100%;
+ font-size: 28px;
+ "
+ >
+ <div
+ class="grid-container-text"
+ style="color: #3ab859"
+ :style="{
+ fontSize:
+ deviceData.透析液列表.length > 1
+ ? '22px'
+ : '28px',
+ }"
+ v-for="(item, index) in deviceData.透析液列表"
+ :key="index"
+ >
+ <div class="left-div">{{ item.name }}</div>
+ <div class="right-div">
+ {{ item.数量 }}{{ item.单位 }}
+ </div>
+ </div>
+ </div>
</div>
</div>
</el-col>
</el-row>
- </div>
- </el-row>
- <!-- 签到未签到状态 -->
- <div
- class="container"
- v-if="Number(deviceData.透析状态) < 1"
- style="height: 50%"
- >
- <div class="item" style="background-color: #ffffff">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="xinlv"
- />
- <span class="text-group_3">异常指标</span>
+ </el-col>
+ </template>
+ <!-- 治疗中 -->
+ <template v-else>
+ <el-col :span="18" style="height: 100%">
+ <el-row style="height: 50%; padding-bottom: 10px">
+ <div style="width: 100%; height: 100%; border-radius: 8px">
+ <el-row style="height: 100%" :gutter="10">
+ <el-col class="itemboy" style="height: 100%" :span="7">
+ <div
+ class="item"
+ style="background-color: #ffffff; height: 97%"
+ >
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="zlms"
+ />
+ <span class="text-group_3">治疗模式</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #d58e56;
+ "
+ class="grid-container"
+ >
+ <div>
+ <span
+ style="font-size: 30px"
+ v-if="deviceData.透析方案 === 'HDF'"
+ >
+ {{
+ deviceData?.置换方式 === "前置换" ? "前" : "后"
+ }}</span
+ >
+ {{ deviceData.透析方案 }}
+ </div>
+ </div>
+ </div>
+ </el-col>
+ <el-col class="itemboy" style="height: 100%" :span="7">
+ <div
+ class="item"
+ style="background-color: #ffffff; height: 97%"
+ >
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="txztimg"
+ />
+ <span class="text-group_3">治疗状态</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #70a3dd;
+ "
+ class="grid-container"
+ >
+ {{ txztText }}
+ </div>
+ </div>
+ </el-col>
+ <el-col class="itemboy" style="height: 100%" :span="10">
+ <div
+ class="item"
+ style="background-color: #ffffff; height: 97%"
+ >
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="txq"
+ />
+ <span class="text-group_3">人工肾</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 85%;
+ font-weight: 600;
+ font-size: 50px;
+ color: #8079cb;
+ "
+ class="scrollable-text"
+ >
+ {{ deviceData.透析器 }}
+ </div>
+ </div>
+ </el-col>
+ </el-row>
</div>
- </div>
+ </el-row>
+ <!-- 签到未签到状态 -->
<div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #333333;
- color: #ca7070;
- "
+ class="container"
+ v-if="Number(deviceData.透析状态) < 1"
+ style="height: 50%"
>
- <el-row style="font-size: 30px">
- <el-col
- v-for="(row, index) in deviceData.异常检验指标"
- :span="8"
- style="font-weight: 700"
- :key="index"
+ <div class="item" style="background-color: #ffffff">
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="xinlv"
+ />
+ <span class="text-group_3">异常指标</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #333333;
+ color: #ca7070;
+ "
>
- {{ getItemName(row?.项目名称) }}
- <b
- v-if="row?.结果标记 === 'g'"
- style="font-weight: bold"
- >⬆</b
+ <el-row style="font-size: 30px">
+ <el-col
+ v-for="(row, index) in deviceData.异常检验指标"
+ :span="8"
+ style="font-weight: 700"
+ :key="index"
+ >
+ {{ getItemName(row?.项目名称) }}
+ <b
+ v-if="row?.结果标记 === 'g'"
+ style="font-weight: bold"
+ >⬆</b
+ >
+ <b v-else style="font-weight: bold">⬇</b>
+ </el-col>
+ </el-row>
+ </div>
+ </div>
+ <div class="item" style="background-color: #ffffff">
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">处方脱水量</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #8079cb;
+ "
+ class="grid-container"
+ >
+ <span v-if="deviceData.处方脱水量">
+ {{ deviceData.处方脱水量 }} L</span
>
- <b v-else style="font-weight: bold">⬇</b>
- </el-col>
- </el-row>
- </div>
- </div>
- <div class="item" style="background-color: #ffffff">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">处方脱水量</span>
+ </div>
</div>
</div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #8079cb;
- "
- class="grid-container"
- >
- <span v-if="deviceData.处方脱水量">
- {{ deviceData.处方脱水量 }} L</span
- >
- </div>
- </div>
- </div>
- <!-- 透析中状态 -->
- <div class="container" v-else style="height: 50%">
- <div class="item" style="background-color: #ffffff">
- <div style="height: 10%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="sjjd"
- />
- <span class="text-group_3">时间进度</span>
- </div>
- </div>
- <div
- style="
- height: 90%;
- text-align: center;
- font-weight: 600;
- font-size: 38px;
- color: #333333;
- "
- class="grid-container"
- >
- <div>
- <span style="color: #303133">{{
- jgTime4(deviceData.iot_透析时间)
- }}</span
- >/<span
- >{{ deviceData.透析处方的时长_小时 }}:{{
- deviceData.透析处方的时长_分钟
- }}</span
- >
- </div>
- <div>
- <el-progress
- :text-inside="true"
- :stroke-width="15"
- :show-text="false"
- color="#70A3DD"
- :percentage="
- (Number(deviceData.iot_透析时间) /
- (Number(deviceData.透析处方的时长) * 60)) *
- 100
+ <!-- 透析中状态 -->
+ <div class="container" v-else style="height: 50%">
+ <div class="item" style="background-color: #ffffff">
+ <div style="height: 10%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="sjjd"
+ />
+ <span class="text-group_3">时间进度</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 90%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 38px;
+ color: #333333;
"
- status="success"
- />
- </div>
- </div>
- </div>
- <div class="item" style="background-color: #ffffff">
- <div style="height: 10%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="cljd"
- />
- <span class="text-group_3">超滤进度</span>
- </div>
- </div>
- <div
- style="
- height: 90%;
- text-align: center;
- font-weight: 600;
- font-size: 38px;
- color: #8079cb;
- "
- class="grid-container"
- >
- <div>
- <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
+ class="grid-container"
>
+ <div>
+ <span style="color: #303133">{{
+ jgTime4(deviceData.iot_透析时间)
+ }}</span
+ >/<span
+ >{{ deviceData.透析处方的时长_小时 }}:{{
+ deviceData.透析处方的时长_分钟
+ }}</span
+ >
+ </div>
+ <div>
+ <el-progress
+ :text-inside="true"
+ :stroke-width="15"
+ :show-text="false"
+ color="#70A3DD"
+ :percentage="
+ (Number(deviceData.iot_透析时间) /
+ (Number(deviceData.透析处方的时长) * 60)) *
+ 100
+ "
+ status="success"
+ />
+ </div>
+ </div>
</div>
- <div>
- <el-progress
- :text-inside="true"
- :stroke-width="15"
- :show-text="false"
- color="#70CAAE"
- :percentage="
- (Number(deviceData.iot_当前脱水量) /
- Number(deviceData.处方脱水量)) *
- 100
+ <div class="item" style="background-color: #ffffff">
+ <div style="height: 10%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="cljd"
+ />
+ <span class="text-group_3">超滤进度</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 90%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 38px;
+ color: #8079cb;
"
- />
+ class="grid-container"
+ >
+ <div>
+ <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
+ >
+ </div>
+ <div>
+ <el-progress
+ :text-inside="true"
+ :stroke-width="15"
+ :show-text="false"
+ color="#70CAAE"
+ :percentage="
+ (Number(deviceData.iot_当前脱水量) /
+ Number(deviceData.处方脱水量)) *
+ 100
+ "
+ />
+ </div>
+ </div>
</div>
</div>
- </div>
- </div>
- </el-col>
- </template>
- </el-row>
- </div>
- <!-- 治疗中 -->
- <div
- class="mowei"
- style="height: 39%"
- v-if="Number(deviceData.透析状态) > 0"
- >
- <el-row style="height: 100%; padding: 0px 20px 10px 20px">
- <!-- 未签到 -->
- <div
- v-if="Number(deviceData.透析状态) < 1"
- style="height: 70%; width: 100%"
- >
- <div class="container">
- <div class="item">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tizhong"
- />
- <span class="text-group_3">干体重</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #333333;
- "
- class="grid-container"
- >
- {{ Number(deviceData.干体重).toFixed(1) }}
- </div>
- </div>
- <div class="item">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tizhong"
- />
- <span class="text-group_3">透前称重</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #333333;
- "
- class="grid-container"
- >
- {{ Number(deviceData.透前称重).toFixed(1) }}
- </div>
- </div>
- <div class="item">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tizhong"
- />
- <span class="text-group_3">上次透后体重</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #333333;
- "
- class="grid-container"
- >
- {{ Number(deviceData.上次透后称重).toFixed(1) }}
- </div>
- </div>
- <div class="item">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tizhong"
- />
- <span class="text-group_3">体重增长</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #333333;
- "
- class="grid-container"
- >
- <template
- v-if="
- deviceData.透前称重 &&
- deviceData.干体重 &&
- Number(deviceData.透前称重) > 0
- "
- >
- +{{
- Number(deviceData.透前称重 - deviceData.干体重).toFixed(1)
- }}
- </template>
- </div>
- </div>
- <div class="item">
- <div style="height: 25%">
- <div class="container-cord" style="height: 100%">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tizhong"
- />
- <span class="text-group_3">增长率</span>
- </div>
- </div>
- <div
- style="
- height: 75%;
- text-align: center;
- font-weight: 600;
- font-size: 50px;
- color: #333333;
- "
- class="grid-container"
- >
- <template v-if="deviceData.透前称重 && deviceData.干体重">
- {{ deviceData.体重增长率 }}%
- </template>
- </div>
- </div>
- </div>
+ </el-col>
+ </template>
+ </el-row>
</div>
- <!-- 已签到 -->
- <div v-else style="height: 80%; width: 100%; padding-right: 0px">
- <div style="height: 100%">
- <el-row
- style="height: 30%; padding: 0px 0px 10px 0px"
- :gutter="20"
+ <!-- 治疗中 -->
+ <div
+ class="mowei"
+ style="height: 39%"
+ v-if="Number(deviceData.透析状态) > 0"
+ >
+ <el-row style="height: 100%; padding: 0px 20px 10px 20px">
+ <!-- 未签到 -->
+ <div
+ v-if="Number(deviceData.透析状态) < 1"
+ style="height: 70%; width: 100%"
>
- <el-col :span="12">
- <div
- class="container-cord"
- style="
- height: 100%;
- padding-left: 20px;
- background-color: #ffffff;
- border-radius: 8px;
- "
- >
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">平均脱水量:</span>
- <span
- style="color: #333333; font-weight: 600; font-size: 25px"
- >{{ deviceData.最近平均脱水量 }}L</span
- >
- <span style="color: #777777; font-size: 25px"> </span>
- </div>
- </el-col>
- <el-col :span="12">
- <div
- class="container-cord"
- style="
- height: 100%;
- padding-left: 20px;
- background-color: #ffffff;
- border-radius: 8px;
- "
- >
- <img
- style="width: 25px; margin-right: 10px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">最大脱水量: </span>
- <span
- style="color: #333333; font-weight: 600; font-size: 25px"
- >{{ deviceData.最近最大脱水量 }}L</span
- >
- <span style="color: #777777; font-size: 25px"
- >({{ deviceData.最近最大脱水量日期 }})</span
- >
- </div>
- </el-col>
- </el-row>
- <el-row
- style="height: 70%; padding: 0px 0px 10px 0px"
- :gutter="20"
- >
- <el-col :span="6" style="height: 100%">
- <div
- class="item"
- style="
- height: 100%;
- padding-bottom: 10px;
- gap: 10px; /* 设置所有方向的间距为10px */
- "
- >
+ <div class="container">
+ <div class="item">
<div style="height: 25%">
<div class="container-cord" style="height: 100%">
<img
style="width: 25px"
referrerpolicy="no-referrer"
- :src="xinlv"
+ :src="tizhong"
/>
- <span class="text-group_3">异常指标</span>
+ <span class="text-group_3">干体重</span>
</div>
</div>
<div
@@ -857,237 +657,444 @@
font-weight: 600;
font-size: 50px;
color: #333333;
- color: #ca7070;
+ "
+ class="grid-container"
+ >
+ {{ Number(deviceData.干体重).toFixed(1) }}
+ </div>
+ </div>
+ <div class="item">
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tizhong"
+ />
+ <span class="text-group_3">透前称重</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #333333;
+ "
+ class="grid-container"
+ >
+ {{ Number(deviceData.透前称重).toFixed(1) }}
+ </div>
+ </div>
+ <div class="item">
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tizhong"
+ />
+ <span class="text-group_3">上次透后体重</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #333333;
+ "
+ class="grid-container"
+ >
+ {{ Number(deviceData.上次透后称重).toFixed(1) }}
+ </div>
+ </div>
+ <div class="item">
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tizhong"
+ />
+ <span class="text-group_3">体重增长</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #333333;
+ "
+ class="grid-container"
+ >
+ <template
+ v-if="
+ deviceData.透前称重 &&
+ deviceData.干体重 &&
+ Number(deviceData.透前称重) > 0
+ "
+ >
+ +{{
+ Number(deviceData.透前称重 - deviceData.干体重).toFixed(1)
+ }}
+ </template>
+ </div>
+ </div>
+ <div class="item">
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tizhong"
+ />
+ <span class="text-group_3">增长率</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #333333;
+ "
+ class="grid-container"
+ >
+ <template v-if="deviceData.透前称重 && deviceData.干体重">
+ {{ deviceData.体重增长率 }}%
+ </template>
+ </div>
+ </div>
+ </div>
+ </div>
+ <!-- 已签到 -->
+ <div v-else style="height: 80%; width: 100%; padding-right: 0px">
+ <div style="height: 100%">
+ <el-row
+ style="height: 30%; padding: 0px 0px 10px 0px"
+ :gutter="20"
+ >
+ <el-col :span="12">
+ <div
+ class="container-cord"
+ style="
+ height: 100%;
+ padding-left: 20px;
+ background-color: #ffffff;
+ border-radius: 8px;
+ "
+ >
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">平均脱水量:</span>
+ <span
+ style="color: #333333; font-weight: 600; font-size: 25px"
+ >{{ deviceData.最近平均脱水量 }}L</span
+ >
+ <span style="color: #777777; font-size: 25px"> </span>
+ </div>
+ </el-col>
+ <el-col :span="12">
+ <div
+ class="container-cord"
+ style="
+ height: 100%;
+ padding-left: 20px;
+ background-color: #ffffff;
+ border-radius: 8px;
+ "
+ >
+ <img
+ style="width: 25px; margin-right: 10px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">最大脱水量: </span>
+ <span
+ style="color: #333333; font-weight: 600; font-size: 25px"
+ >{{ deviceData.最近最大脱水量 }}L</span
+ >
+ <span style="color: #777777; font-size: 25px"
+ >({{ deviceData.最近最大脱水量日期 }})</span
+ >
+ </div>
+ </el-col>
+ </el-row>
+ <el-row
+ style="height: 70%; padding: 0px 0px 10px 0px"
+ :gutter="20"
+ >
+ <el-col :span="6" style="height: 100%">
+ <div
+ class="item"
+ style="
+ height: 100%;
+ padding-bottom: 10px;
+ gap: 10px; /* 设置所有方向的间距为10px */
+ "
+ >
+ <div style="height: 25%">
+ <div class="container-cord" style="height: 100%">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="xinlv"
+ />
+ <span class="text-group_3">异常指标</span>
+ </div>
+ </div>
+ <div
+ style="
+ height: 75%;
+ text-align: center;
+ font-weight: 600;
+ font-size: 50px;
+ color: #333333;
+ color: #ca7070;
+ "
+ >
+ <el-row style="font-size: 30px">
+ <el-col
+ v-for="(row, index) in deviceData.异常检验指标"
+ :span="12"
+ style="font-weight: 700"
+ :key="index"
+ >
+ {{ getItemName(row?.项目名称) }}
+ <b
+ v-if="row?.结果标记 === 'g'"
+ style="font-weight: bold"
+ >⬆</b
+ >
+ <b v-else style="font-weight: bold">⬇</b>
+ </el-col>
+ </el-row>
+ </div>
+ </div>
+ </el-col>
+ <el-col :span="18" style="height: 100%; width: 100%">
+ <div
+ class="item"
+ style="
+ height: 100%;
+ padding-bottom: 10px; /* 设置所有方向的间距为10px */
+ "
+ >
+ <div style="height: 100%">
+ <div
+ v-if="Number(deviceData.透析状态) > 1"
+ :ref="'echartsDiv' + deviceData.设备编号"
+ style="height: 97%"
+ ></div>
+ </div>
+ </div>
+ </el-col>
+ </el-row>
+ </div>
+ </div>
+ <!-- 消息提示一直显示最新的消息 -->
+ <div
+ style="
+ height: 20%;
+ width: 100%;
+ background: #fef0e1;
+ border-radius: 8px;
+ font-size: 30px;
+ "
+ >
+ <div style="height: 100%">
+ <div
+ class="container-cord"
+ style="height: 100%; padding-left: 20px"
+ >
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ src="https://lanhu-oss.lanhuapp.com/SketchPng7d7c4e66d2f3fb56cb7c93cf3b359782ee05a12117f39e9b1836bff686aca428"
+ />
+
+ <span
+ class="text-group_3"
+ v-if="isinitXy && Number(deviceData.透析状态) >= 1"
+ >
+ 最近一次, 高压:{{ 床旁血压计.sbp }},低压:
+ {{ 床旁血压计.dbp }}, 心率: {{ 床旁血压计.pulseRate }}
+ </span>
+ <span class="text-group_3" v-else>暂无通知消息哦</span>
+ </div>
+ </div>
+ </div>
+ </el-row>
+ </div>
+ <!-- 未签到 -->
+ <div
+ class="mowei"
+ style="height: 39%"
+ v-if="Number(deviceData.透析状态) === 0"
+ >
+ <el-row gutter="20" style="height: 100%; padding: 10px 20px 20px 20px">
+ <el-col :span="12" style="height: 100%">
+ <div class="container-weiqiandao" style="height: 100%">
+ <div
+ class="item-weiqiandao"
+ style="background: #ffedd2; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">抗凝剂</span>
+ </div>
+ <div
+ class="grid-container"
+ style="height: calc(100% - 30px); width: 100%"
+ >
+ <div
+ class="grid-container-text"
+ style="color: #a78718"
+ v-for="(item, index) in deviceData.抗凝剂列表"
+ :style="{
+ fontSize:
+ deviceData.抗凝剂列表.length > 1 ? '22px' : '28px',
+ }"
+ :key="index"
+ >
+ <div class="left-div">{{ item.name }}</div>
+ <div class="right-div">{{ item.数量 }}{{ item.单位 }}</div>
+ </div>
+ </div>
+ </div>
+ <div
+ class="item-weiqiandao"
+ style="background: #ffedd2; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">穿刺针</span>
+ </div>
+ <div
+ class="grid-container"
+ style="
+ height: calc(100% - 30px);
+ width: 100%;
+ font-size: 25px;
"
>
- <el-row style="font-size: 30px">
- <el-col
- v-for="(row, index) in deviceData.异常检验指标"
- :span="12"
- style="font-weight: 700"
- :key="index"
- >
- {{ getItemName(row?.项目名称) }}
- <b
- v-if="row?.结果标记 === 'g'"
- style="font-weight: bold"
- >⬆</b
- >
- <b v-else style="font-weight: bold">⬇</b>
- </el-col>
- </el-row>
- </div>
- </div>
- </el-col>
- <el-col :span="18" style="height: 100%; width: 100%">
- <div
- class="item"
- style="
- height: 100%;
- padding-bottom: 10px; /* 设置所有方向的间距为10px */
- "
- >
- <div style="height: 100%">
<div
- v-if="Number(deviceData.透析状态) > 1"
- :ref="'echartsDiv' + deviceData.设备编号"
- style="height: 97%"
- ></div>
- </div>
- </div>
- </el-col>
- </el-row>
- </div>
- </div>
- <!-- 消息提示一直显示最新的消息 -->
- <div
- style="
- height: 20%;
- width: 100%;
- background: #fef0e1;
- border-radius: 8px;
- font-size: 30px;
- "
- >
- <div style="height: 100%">
- <div
- class="container-cord"
- style="height: 100%; padding-left: 20px"
- >
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- src="https://lanhu-oss.lanhuapp.com/SketchPng7d7c4e66d2f3fb56cb7c93cf3b359782ee05a12117f39e9b1836bff686aca428"
- />
-
- <span
- class="text-group_3"
- v-if="isinitXy && Number(deviceData.透析状态) >= 1"
- >
- 最近一次, 高压:{{ 床旁血压计.sbp }},低压:
- {{ 床旁血压计.dbp }}, 心率: {{ 床旁血压计.pulseRate }}
- </span>
- <span class="text-group_3" v-else>暂无通知消息哦</span>
- </div>
- </div>
- </div>
- </el-row>
- </div>
- <!-- 未签到 -->
- <div
- class="mowei"
- style="height: 39%"
- v-if="Number(deviceData.透析状态) === 0"
- >
- <el-row gutter="20" style="height: 100%; padding: 10px 20px 20px 20px">
- <el-col :span="12" style="height: 100%">
- <div class="container-weiqiandao" style="height: 100%">
- <div
- class="item-weiqiandao"
- style="background: #ffedd2; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">抗凝剂</span>
- </div>
- <div
- class="grid-container"
- style="height: calc(100% - 30px); width: 100%"
- >
- <div
- class="grid-container-text"
- style="color: #a78718"
- v-for="(item, index) in deviceData.抗凝剂列表"
- :style="{
- fontSize:
- deviceData.抗凝剂列表.length > 1 ? '22px' : '28px',
- }"
- :key="index"
- >
- <div class="left-div">{{ item.name }}</div>
- <div class="right-div">{{ item.数量 }}{{ item.单位 }}</div>
- </div>
- </div>
- </div>
- <div
- class="item-weiqiandao"
- style="background: #ffedd2; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">穿刺针</span>
- </div>
- <div
- class="grid-container"
- style="
- height: calc(100% - 30px);
- width: 100%;
- font-size: 25px;
- "
- >
- <div
- class="grid-container-text"
- style="color: #a78718"
- v-for="(item, index) in deviceData.穿刺针列表"
- :style="{
- fontSize:
- deviceData.穿刺针列表.length > 1 ? '22px' : '28px',
- }"
- :key="index"
- >
- <div class="left-div">{{ item.name }}</div>
- <div class="right-div">{{ item.数量 }}支</div>
- </div>
- </div>
- </div>
- </div>
- </el-col>
- <el-col :span="12">
- <div class="container-weiqiandao" style="height: 100%">
- <div
- class="item-weiqiandao"
- style="background: #e5eeff; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">一次性使用透析护理包</span>
- </div>
- <div
- class="grid-container"
- style="
- height: calc(100% - 30px);
- width: 100%;
- font-size: 28px;
- "
- >
- <div
- class="grid-container-text"
- style="color: #1d77bd"
- v-for="(item, index) in deviceData.护理包列表"
- :style="{
- fontSize:
- deviceData.护理包列表.length > 1 ? '22px' : '28px',
- }"
- :key="index"
- >
- <div class="left-div">{{ item.name }}</div>
- <div class="right-div">{{ item.数量 }}{{ item.单位 }}</div>
- </div>
- </div>
- </div>
- <div
- class="item-weiqiandao"
- style="background: #e5eeff; border-radius: 8px"
- >
- <div class="container-cord" style="height: 30px">
- <img
- style="width: 25px"
- referrerpolicy="no-referrer"
- :src="tsl"
- />
- <span class="text-group_3">血管通路</span>
- </div>
- <div
- class="grid-container"
- style="
- height: calc(100% - 30px);
- width: 100%;
- font-size: 28px;
- "
- >
- <div
- class="grid-container-text"
- style="color: #1d77bd"
- v-for="(item, index) in deviceData.血管通路列表"
- :style="{
- fontSize:
- deviceData.血管通路列表.length > 1 ? '22px' : '28px',
- }"
- :key="index"
- >
- <div class="left-div">{{ item.类型 }}</div>
- <div class="right-div" style="width: 200px">
- {{ item.位置 }}
+ class="grid-container-text"
+ style="color: #a78718"
+ v-for="(item, index) in deviceData.穿刺针列表"
+ :style="{
+ fontSize:
+ deviceData.穿刺针列表.length > 1 ? '22px' : '28px',
+ }"
+ :key="index"
+ >
+ <div class="left-div">{{ item.name }}</div>
+ <div class="right-div">{{ item.数量 }}支</div>
+ </div>
</div>
</div>
</div>
- </div>
- </div>
- </el-col>
- </el-row>
- </div>
+ </el-col>
+ <el-col :span="12">
+ <div class="container-weiqiandao" style="height: 100%">
+ <div
+ class="item-weiqiandao"
+ style="background: #e5eeff; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">一次性使用透析护理包</span>
+ </div>
+ <div
+ class="grid-container"
+ style="
+ height: calc(100% - 30px);
+ width: 100%;
+ font-size: 28px;
+ "
+ >
+ <div
+ class="grid-container-text"
+ style="color: #1d77bd"
+ v-for="(item, index) in deviceData.护理包列表"
+ :style="{
+ fontSize:
+ deviceData.护理包列表.length > 1 ? '22px' : '28px',
+ }"
+ :key="index"
+ >
+ <div class="left-div">{{ item.name }}</div>
+ <div class="right-div">{{ item.数量 }}{{ item.单位 }}</div>
+ </div>
+ </div>
+ </div>
+ <div
+ class="item-weiqiandao"
+ style="background: #e5eeff; border-radius: 8px"
+ >
+ <div class="container-cord" style="height: 30px">
+ <img
+ style="width: 25px"
+ referrerpolicy="no-referrer"
+ :src="tsl"
+ />
+ <span class="text-group_3">血管通路</span>
+ </div>
+ <div
+ class="grid-container"
+ style="
+ height: calc(100% - 30px);
+ width: 100%;
+ font-size: 28px;
+ "
+ >
+ <div
+ class="grid-container-text"
+ style="color: #1d77bd"
+ v-for="(item, index) in deviceData.血管通路列表"
+ :style="{
+ fontSize:
+ deviceData.血管通路列表.length > 1 ? '22px' : '28px',
+ }"
+ :key="index"
+ >
+ <div class="left-div">{{ item.类型 }}</div>
+ <div class="right-div" style="width: 200px">
+ {{ item.位置 }}
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </el-col>
+ </el-row>
+ </div>
+ </el-carousel-item>
+ <el-carousel-item :style="{ height: (contentHeight - 10) + 'px' }">
+ <DoctorAdvice :height="(contentHeight - 10)" :list="deviceData.透析单医嘱列表" />
+ </el-carousel-item>
+ </el-carousel>
</div>
<div v-else style="height: 100%">
<div class="toubu" style="height: 11%">
@@ -1676,11 +1683,13 @@
watch,
onUnmounted,
onBeforeUnmount,
+ nextTick
} from "vue";
import { Local } from "../utils/storage";
import * as echarts from "echarts";
import { jgTime4 } from "../utils/formatTime";
import { setTimeoutAlert } from "../utils/httpApi";
+import DoctorAdvice from '../components/doctorAdvice/index.vue';
// 创建 Audio 对象,指向 public 目录下的音频文件
const alarmSound = new Audio(alertbaojin)
@@ -1734,6 +1743,7 @@
const 当前客户耗材集合 = ref({});
const deviceData = ref({
+ 透析单医嘱列表: [],
iot_传输时间: "2025-01-10 19:15:24",
iot_当前脱水量: 2.04,
iot_脱水目标量: 3.3,
@@ -1908,6 +1918,7 @@
const wd = ref("");
const ls = ref("");
const ddd = ref("");
+const contentHeight = ref(0); // 中间内容的高度
const isShowXY = computed(() => {
if (床旁血压计.value.zuihouTime > shishiTime.value) {
return true;
@@ -1920,9 +1931,11 @@
() => {
if (床旁血压计.value.zuihouTime > shishiTime.value) {
} else {
- setTimeout(() => {
- initTupiao();
- }, 500);
+ nextTick(() => {
+ setTimeout(() => {
+ initTupiao();
+ }, 500);
+ });
}
}
);
@@ -2240,9 +2253,24 @@
if (!xiaoduzhuangti.value) {
initTupiao();
}
- }, 500);
+ }, 1000);
}
);
+
+watch(() => deviceData.value.患者姓名, (newVal: string) => {
+ console.log("患者姓名变化:", newVal);
+ if (newVal) {
+ contentHeight.value = 0; // 重置高度
+ setTimeout(() => {
+ const windowHeight = window.innerHeight
+ const toubu = document.getElementById('toubu')
+ const toubuHeight = toubu ? toubu.offsetHeight : 0
+ contentHeight.value = windowHeight - toubuHeight
+ console.log("contentHeight.value: ", contentHeight.value)
+ }, 500);
+ }
+})
+
const 数据初始化 = ref(false);
//创建链接对象
const creatSource = () => {
@@ -2307,9 +2335,13 @@
dbp: dataBody?.床旁血压结果?.dbp,
zuihouTime: date,
};
- setTimeout(() => {
- initTupiao();
- }, 500);
+
+ nextTick(() => {
+ setTimeout(() => {
+ initTupiao();
+ }, 500);
+ });
+
} else if (dataBody.推送类型 === "中央监控大屏信息") {
数据初始化.value = false;
// loading.close()
@@ -2329,6 +2361,9 @@
deviceData.value.属性历史列表 = dataBody?.IOT信息?.属性历史列表;
console.log(deviceData.value.设备变化);
deviceData.value.设备状态列表 = dataBody.IOT信息.状态列表;
+ if ('透析单医嘱列表' in dataBody.透析状态) {
+ deviceData.value.透析单医嘱列表 = dataBody.透析状态.透析单医嘱列表;
+ }
}
}
}
@@ -2580,9 +2615,14 @@
xAxisData.push(1);
}
try {
- const myChart = echarts.init(
- proxy.$refs["echartsDiv" + deviceData.value.设备编号]
- );
+ let myChart = null;
+
+ if (proxy.$refs["echartsDiv" + deviceData.value.设备编号]) {
+ myChart = echarts.init(
+ proxy.$refs["echartsDiv" + deviceData.value.设备编号]
+ );
+ }
+
const option = {
// backgroundColor: 床旁血压计.value.zuihouTime>shishiTime.value?'#ffffff':textcolor.value,
backgroundColor: "#ffffff",
@@ -2619,15 +2659,22 @@
},
series: seriesData,
};
- myChart.setOption(option);
+ if (myChart) {
+ myChart.setOption(option);
+ }
} catch (e) {
console.log("图标渲染异常异常");
}
} else {
try {
- const myChart = echarts.init(
- proxy.$refs["echartsDiv" + deviceData.value.设备编号]
- );
+ let myChart = null;
+
+ if (proxy.$refs["echartsDiv" + deviceData.value.设备编号]) {
+ myChart = echarts.init(
+ proxy.$refs["echartsDiv" + deviceData.value.设备编号]
+ );
+ }
+
const option = {
backgroundColor:
@@ -2662,8 +2709,11 @@
},
series: [],
};
- myChart.setOption(option);
+ if (myChart) {
+ myChart.setOption(option);
+ }
} catch (e) {
+ console.log("图表渲染异常异常: ", e);
console.log(
"异常",
proxy.$refs["echartsDiv" + deviceData.value.设备编号]
@@ -2671,7 +2721,6 @@
}
}
} else if (deviceData.value.患者姓名 === "") {
- console.log("2222");
const tbdata1 = [];
const tbdata2 = [];
const tbdata3 = [];
@@ -2707,15 +2756,28 @@
}
try {
console.log("渲染设备");
- const myChart1 = echarts.init(
- proxy.$refs["echartsDivwd" + deviceData.value.设备编号]
- );
- const myChart2 = echarts.init(
- proxy.$refs["echartsDivls" + deviceData.value.设备编号]
- );
- const myChart3 = echarts.init(
- proxy.$refs["echartsDivddd" + deviceData.value.设备编号]
- );
+ let myChart1 = null;
+ let myChart2 = null;
+ let myChart3 = null;
+
+ if (proxy.$refs["echartsDivwd" + deviceData.value.设备编号]) {
+ myChart1 = echarts.init(
+ proxy.$refs["echartsDivwd" + deviceData.value.设备编号]
+ );
+ }
+
+ if (proxy.$refs["echartsDivls" + deviceData.value.设备编号]) {
+ myChart2 = echarts.init(
+ proxy.$refs["echartsDivls" + deviceData.value.设备编号]
+ );
+ }
+
+ if (proxy.$refs["echartsDivddd" + deviceData.value.设备编号]) {
+ myChart3 = echarts.init(
+ proxy.$refs["echartsDivddd" + deviceData.value.设备编号]
+ );
+ }
+
const option1 = {
// backgroundColor: textcolor.value,
tooltip: {
@@ -2838,9 +2900,15 @@
},
],
};
- myChart1.setOption(option1);
- myChart2.setOption(option2);
- myChart3.setOption(option3);
+ if (myChart1) {
+ myChart1.setOption(option1);
+ }
+ if (myChart2) {
+ myChart2.setOption(option2);
+ }
+ if (myChart3) {
+ myChart3.setOption(option3);
+ }
} catch (e) {
console.log("图标渲染异常异常");
}
--
Gitblit v1.8.0