From 276209035343a0b009fb528df50b5f6fb83f469c Mon Sep 17 00:00:00 2001
From: zhangchen <1652267879@qq.com>
Date: 星期五, 29 八月 2025 14:20:16 +0800
Subject: [PATCH] Merge branch 'ID1956-已签到页面改版' into test
---
src/views/mobile/bedsideAuxiliaryScreen/pages/SignedIn.vue | 51 ++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 42 insertions(+), 9 deletions(-)
diff --git a/src/views/mobile/bedsideAuxiliaryScreen/pages/SignedIn.vue b/src/views/mobile/bedsideAuxiliaryScreen/pages/SignedIn.vue
index fd40c78..a30da51 100644
--- a/src/views/mobile/bedsideAuxiliaryScreen/pages/SignedIn.vue
+++ b/src/views/mobile/bedsideAuxiliaryScreen/pages/SignedIn.vue
@@ -312,7 +312,7 @@
</div>
</template>
<script lang="ts" setup name="SignedIn">
-import { computed, defineAsyncComponent, onMounted, ref } from "vue";
+import { computed, defineAsyncComponent, onMounted, ref, watch } from "vue";
import dayjs from "dayjs";
import "dayjs/locale/zh-cn";
dayjs.locale("zh-cn");
@@ -412,6 +412,13 @@
? value
: Number(value.toFixed(1));
return formattedValue;
+});
+
+
+watch(
+ () => pageData.value.四点血压图数据,
+ (newVal) => {
+ genderBloodPressureRectangularChart(newVal);
});
/** 点击定时任务 */
@@ -569,6 +576,8 @@
const cylinderY = chartHeight;
const cylinderRadius = 6;
const cylinderHeight = 计算脱水量刻度 * (datas?.[0]?.超滤总量 || 0);
+ const 体重增长_透前减干体重 = weightGain2.value;
+ const 透前减干体重减超滤总量差值 = 体重增长_透前减干体重 - (datas?.[0]?.超滤总量 || 0);
drawCylinder(
ctx,
@@ -580,7 +589,9 @@
cylinderHeight,
datas?.[0]?.超滤总量?.toString() ?? "0 L",
datas?.[0]?.脱水百分比 ?? 0,
- datas?.[0]?.透后体重减干体重的差值 ?? 0
+ datas?.[0]?.透后体重减干体重的差值 ?? 0,
+ 体重增长_透前减干体重,
+ 透前减干体重减超滤总量差值,
);
ctx.restore(); // 恢复
@@ -598,7 +609,9 @@
height: number,
超滤总量: string, // 超滤总量
脱水百分比: number, // 脱水百分比
- 透后体重减干体重的差值: number // 透后体重减干体重的差值
+ 透后体重减干体重的差值: number, // 透后体重减干体重的差值
+ 体重增长_透前减干体重: number, // 体重增长_透前减干体重
+ 透前减干体重减超滤总量差值: number, // 透前减干体重减超滤总量差值
) => {
ctx.beginPath();
ctx.arc(x, y + height, radius, 0, Math.PI * 2);
@@ -624,19 +637,39 @@
ctx.fill();
ctx.stroke();
+ const cylinderWidth = radius;
+ const textX = x + cylinderWidth + 20; // 文本位置在圆柱体右侧
+
const baseFontSize = 16;
// 添加文本说明
- ctx.font = `${baseFontSize * scale}px Arial`;
- ctx.textAlign = "center";
- ctx.fillStyle = "#409EFF";
- ctx.fillText(超滤总量, x, canvasHeight - height - 5); // 文本位于圆柱上方一点
- if (透后体重减干体重的差值 > 0) {
+ // 如果超滤总量 与 体重增长_透前减干体重 相等,则显示 "/超滤总量"
+ if (Number(超滤总量) && 体重增长_透前减干体重 === Number(超滤总量)) {
+ ctx.font = `${baseFontSize * scale}px Arial`;
+ ctx.textAlign = "center";
+ ctx.fillStyle = "#07c160";
+ ctx.fillText('/' + 超滤总量, textX, canvasHeight - height + height * 0.3 + 10);
+ } else {
+ // 透析前-干体重
+ ctx.font = `${baseFontSize * scale}px Arial`;
+ ctx.textAlign = "center";
+ ctx.fillStyle = "#409EFF";
+ ctx.fillText(体重增长_透前减干体重 + '', textX, canvasHeight - height + 10);
+ // 超滤总量
+ ctx.font = `${baseFontSize * scale}px Arial`;
+ ctx.textAlign = "center";
+ ctx.fillStyle = "#07c160";
+ ctx.fillText(超滤总量, textX, canvasHeight - height + height * 0.3 + 10);
+ }
+
+
+
+ if (透前减干体重减超滤总量差值 > 0) {
ctx.font = `${baseFontSize * scale}px Arial`;
ctx.textAlign = "center";
ctx.fillStyle = "#000000";
- ctx.fillText(透后体重减干体重的差值 + "", x, canvasHeight - 5); // 文本位于圆柱上方一点
+ ctx.fillText(透前减干体重减超滤总量差值 + "", textX, canvasHeight - 10); // 文本位于圆柱上方一点
}
};
onMounted(() => {
--
Gitblit v1.8.0