From 7d8dd3c5a1f9e2ea06177b6612f7eec62ce2d16e Mon Sep 17 00:00:00 2001
From: zhangchen <1652267879@qq.com>
Date: 星期一, 15 九月 2025 16:47:48 +0800
Subject: [PATCH] ID1766-隐藏检测记录/叫号按钮
---
src/views/mobile/bedsideAuxiliaryScreen/pages/UnderTreatment.vue | 318 +++++++++++++++++++++++++++++++++-------------------
1 files changed, 203 insertions(+), 115 deletions(-)
diff --git a/src/views/mobile/bedsideAuxiliaryScreen/pages/UnderTreatment.vue b/src/views/mobile/bedsideAuxiliaryScreen/pages/UnderTreatment.vue
index f9c8129..31457c2 100644
--- a/src/views/mobile/bedsideAuxiliaryScreen/pages/UnderTreatment.vue
+++ b/src/views/mobile/bedsideAuxiliaryScreen/pages/UnderTreatment.vue
@@ -133,7 +133,7 @@
</div>
</Card>
<Card
- title="KTV监测"
+ title="Kt/V监测"
:icon="xinLv2Img"
background-color="#ffffff"
class="mini-card left-row3-col2"
@@ -144,7 +144,7 @@
</div>
</Card>
<Card
- title="KTV趋势图"
+ title="Kt/V趋势图"
:icon="xinLv2Img"
background-color="#ffffff"
class="mini-card ktv-card left-row3-col3"
@@ -160,25 +160,25 @@
</div>
<div class="left-row4">
<Card
- title="血流量"
+ title="静脉压/跨膜压"
:icon="txqImg"
background-color="#ffffff"
class="mini-card left-row4-col"
header-class-name="mini-header"
>
<div class="item-box current-lood0emperature">
- <span class="text">{{ pageData.bloodFlow }}</span>
+ <span class="text">{{ pageData.venousPressure2 }}/{{ pageData.transmembranePressure2 }}</span>
</div>
</Card>
<Card
- title="透析液流量"
+ title="血流量/透析液流量"
:icon="txqImg"
background-color="#ffffff"
class="mini-card left-row4-col"
header-class-name="mini-header"
>
<div class="item-box current-lood0emperature">
- <span class="text">{{ pageData.dialysisFluidFlowRate }}</span>
+ <span class="text">{{ pageData.bloodFlow }}/{{ pageData.dialysisFluidFlowRate }}</span>
</div>
</Card>
</div>
@@ -208,7 +208,7 @@
<span class="item-left"
>平均脱水量:{{ pageData.averageDehydrationRate }} L</span
>
- <span class="item-right">(最近3周9次)</span>
+ <span class="item-right">(最近9次)</span>
</div>
<div class="dehydrated-level-item">
<div class="item-left">
@@ -243,7 +243,7 @@
<div class="progress-box">
<div class="item-num">
{{ jgTime4(pageData.dialysisDuration) }}/{{
- pageData.prescriptionDialysisDuration
+ pageData.prescriptionDialysisDurationHour
}}:{{ pageData.prescriptionDialysisDurationMin }}
</div>
<ProgressBar
@@ -268,7 +268,7 @@
<div class="progress-box">
<div class="item-num">
{{ pageData.currentDehydrationVolume }}/{{
- pageData.currentDehydrationVolume
+ pageData.prescriptionDehydrationVolume
}}({{ pageData.currentUltrafiltrationRate }})
</div>
<ProgressBar
@@ -303,20 +303,20 @@
@click="() => onScheduledTasksClick()"
class="btn"
/>
- <BlockBotttom
+ <!-- <BlockBotttom
:icon="jiaoHaoImg"
text="叫号"
backgroundColor="#20C6B6"
@click="() => onCallBumberClick()"
class="btn"
- />
- <BlockBotttom
+ /> -->
+ <!-- <BlockBotttom
:icon="addImg"
text="添加记录"
backgroundColor="#409EFF"
@click="() => onAddRecordClick()"
class="btn"
- />
+ /> -->
<BlockBotttom
v-if="!whetherDialysisHasBeenEnded"
:icon="kaiShiImg"
@@ -505,6 +505,26 @@
return "#FE6500"; // 橙色
};
+const formatMarkPoint = (
+ name: string,
+ value: number,
+ yAxis: number,
+ xAxis: number,
+ symbolSize: number,
+ symbolOffset: number[],
+ color: string
+) => {
+ return {
+ name,
+ value,
+ yAxis,
+ xAxis,
+ symbolSize,
+ symbolOffset,
+ label: { fontSize: 8, color },
+ };
+};
+
/** 生成血压脉搏趋势图 */
const generatBloodPressureAndPulseEchart = (
bloodPressureAndPulses: MonitoringRecord[]
@@ -519,136 +539,204 @@
const telescopicPressureDatas: number[] = []; // 伸缩压
const diastolicPressureDatas: number[] = []; // 舒张压
const pulseDatas: number[] = []; // 脉搏
- const xAxisData: string[] = []; // 横坐标
+ const xAxisData: number[] = []; // 横坐标
+
+ const markPointTelescopicPressureDatas: any[] = []; // 伸缩压的markPoint
+ const markPointDiastolicPressureDatas: any[] = []; // 舒张压的markPoint
+ const markPointPulseDatas: any[] = []; // 脉搏的markPoint
bloodPressureAndPulses.forEach((item, index) => {
telescopicPressureDatas.push(+item.伸缩压);
diastolicPressureDatas.push(+item.舒张压);
pulseDatas.push(+item.脉搏);
- xAxisData.push(String(index + 1));
+ xAxisData.push(index);
+ if (index === 0) {
+ markPointTelescopicPressureDatas.push(
+ formatMarkPoint(
+ "伸缩压",
+ +item.伸缩压,
+ +item.伸缩压,
+ 0,
+ 0,
+ [0, 10],
+ "red"
+ )
+ );
+ markPointDiastolicPressureDatas.push(
+ formatMarkPoint(
+ "舒张压",
+ +item.舒张压,
+ +item.舒张压,
+ 0,
+ 0,
+ [15, 5],
+ "#409EFF"
+ )
+ );
+ markPointPulseDatas.push(
+ formatMarkPoint(
+ "脉搏",
+ +item.脉搏,
+ +item.脉搏,
+ 0,
+ 0,
+ [10, -15],
+ "#D940FF"
+ )
+ );
+ } else if (
+ bloodPressureAndPulses.length > 1 &&
+ index === bloodPressureAndPulses.length - 1
+ ) {
+ markPointTelescopicPressureDatas.push(
+ formatMarkPoint(
+ "伸缩压",
+ +item.伸缩压,
+ +item.伸缩压,
+ index,
+ 0,
+ [-15, -20],
+ "red"
+ )
+ );
+ markPointDiastolicPressureDatas.push(
+ formatMarkPoint(
+ "舒张压",
+ +item.舒张压,
+ +item.舒张压,
+ index,
+ 0,
+ [-15, 0],
+ "#409EFF"
+ )
+ );
+ markPointPulseDatas.push(
+ formatMarkPoint(
+ "脉搏",
+ +item.脉搏,
+ +item.脉搏,
+ index,
+ 0,
+ [0, 0],
+ "#D940FF"
+ )
+ );
+ }
});
+ if (bloodPressureAndPulses.length === 1) {
+ xAxisData.push(1);
+ }
+
const option = {
- grid: [
- { top: "5%", height: "28%", left: 40, right: 20, containLabel: true },
- { top: "35%", height: "28%", left: 40, right: 20, containLabel: true },
- { top: "65%", height: "28%", left: 40, right: 20, containLabel: true },
- ],
+ backgroundColor: "#ffffff",
tooltip: {
trigger: "axis",
},
- xAxis: [
- {
- type: "category",
- data: xAxisData,
- boundaryGap: false,
- axisLine: { show: false },
- axisTick: { show: false },
- axisLabel: { show: false },
- splitLine: { show: false },
- gridIndex: 0,
+ toolbox: {
+ show: false,
+ },
+ grid: {
+ left: 20,
+ top: 0,
+ bottom: 0,
+ },
+ xAxis: {
+ type: "category",
+ // 标记做右往左排列
+ boundaryGap: false,
+ data: xAxisData,
+ axisTick: {
+ show: true, // 显示 X 轴刻度
+ },
+ },
+ yAxis: {
+ show: false,
+ name: "",
+ type: "value",
+ min: 40,
+ max: 220,
+ interval: 10, // 指定刻度间隔,
+ splitLine: {
show: false,
},
- {
- type: "category",
- data: xAxisData,
- boundaryGap: false,
- axisLine: { show: false },
- axisTick: { show: false },
- axisLabel: { show: false },
- splitLine: { show: false },
- gridIndex: 1,
- show: false,
- },
- {
- type: "category",
- data: xAxisData,
- boundaryGap: false,
- axisLine: { show: false },
- axisTick: { show: false },
- axisLabel: { show: true }, // 最下面一层显示时间轴
- splitLine: { show: false },
- gridIndex: 2,
- show: false,
- },
- ],
- yAxis: [
- {
- type: "value",
- show: false,
- axisLine: { show: false },
- axisTick: { show: false },
- axisLabel: { show: false },
- splitLine: { show: false },
- min: 0,
- max: 300,
- interval: 2,
- gridIndex: 0,
- },
- {
- type: "value",
- show: false,
- axisLine: { show: false },
- axisTick: { show: false },
- axisLabel: { show: false },
- splitLine: { show: false },
- min: 0,
- max: 300,
- interval: 2,
- gridIndex: 1,
- },
- {
- type: "value",
- show: false,
- axisLine: { show: false },
- axisTick: { show: false },
- axisLabel: { show: false },
- splitLine: { show: false },
- min: 0,
- max: 300,
- interval: 2,
- gridIndex: 2,
- },
- ],
+ },
series: [
{
name: "伸缩压",
- xAxisIndex: 0,
- yAxisIndex: 0,
- data: wrapData(telescopicPressureDatas),
type: "line",
- smooth: false,
- symbol: "circle",
+ symbol: "triangle",
symbolSize: 6,
- lineStyle: { width: 2, color: "#FE0201" },
- itemStyle: { color: "#FE0201" },
- label: { color: "#FE0201" },
+ symbolRotate: 180,
+ data: telescopicPressureDatas,
+ lineStyle: {
+ width: 2, // 设置线条宽度为5
+ color: "red",
+ },
+ itemStyle: {
+ borderWidth: 2,
+ borderColor: "red",
+ color: "red",
+ },
+ markPoint: {
+ data: markPointTelescopicPressureDatas,
+ },
+ markLine: {
+ symbol: "none",
+ lineStyle: { color: "#409EFF", width: 2 },
+ data: [
+ { name: "y90", yAxis: 90, label: { show: false }, symbol: "none" },
+ ],
+ },
},
{
name: "舒张压",
- xAxisIndex: 1,
- yAxisIndex: 1,
- data: wrapData(diastolicPressureDatas),
type: "line",
- smooth: false,
- symbol: "circle",
+ symbol: "triangle",
symbolSize: 6,
- lineStyle: { width: 2, color: "#70A3DD" },
- itemStyle: { color: "#70A3DD" },
- label: { color: "#70A3DD" },
+ data: diastolicPressureDatas,
+ lineStyle: {
+ color: "#409EFF",
+ width: 2, // 设置线条宽度为5
+ },
+ itemStyle: {
+ borderWidth: 2,
+ borderColor: "#409EFF",
+ color: "#409EFF",
+ },
+ markPoint: {
+ data: markPointDiastolicPressureDatas,
+ },
+ markLine: {
+ symbol: "none",
+ lineStyle: { color: "#F56C6C", width: 2 },
+ data: [
+ {
+ name: "y140",
+ yAxis: 140,
+ label: { show: false },
+ symbol: "none",
+ },
+ ],
+ },
},
{
name: "脉搏",
- xAxisIndex: 2,
- yAxisIndex: 2,
- data: wrapData(pulseDatas),
type: "line",
- smooth: false,
- symbol: "circle",
symbolSize: 6,
- lineStyle: { width: 2, color: "#8079CB" },
- itemStyle: { color: "#8079CB" },
- label: { color: "#8079CB" },
+ data: pulseDatas,
+ lineStyle: {
+ color: "#D940FF",
+ width: 2, // 设置线条宽度为5
+ },
+ itemStyle: {
+ borderWidth: 2,
+ borderColor: "#D940FF",
+ color: "#D940FF",
+ },
+ markPoint: {
+ data: markPointPulseDatas,
+ },
},
],
};
--
Gitblit v1.8.0