From 233b2724f297cd52807eebfa3c547d6fe5187c70 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期一, 08 九月 2025 08:26:18 +0800
Subject: [PATCH] feat(zhitan-system): 修正数据项查询条件并添加环保视图

---
 zhitan-vue/public/huanbao_background.png                            |    1 
 zhitan-vue/src/views/huanbao/HuanBaoView.vue                        |   82 +++++++++++++++++++++++++++++++++++++++++
 zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml |    2 
 zhitan-vue/src/views/system/user/profile/userAvatar.vue             |    2 
 4 files changed, 85 insertions(+), 2 deletions(-)

diff --git a/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml b/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml
index a795148..6ba4533 100644
--- a/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml
+++ b/zhitan-system/src/main/resources/mapper/dataitem/DataItemMapper.xml
@@ -263,7 +263,7 @@
                 </foreach>
                 AND di.time_type = #{timeType}
                 AND di.begin_time between #{beginTime} AND #{endTime}
-                AND ei.index_type = 'STATISTIC'
+                AND ei.index_type = 'STATISTIC' AND ei.energy_id = 'electric'
             GROUP BY
                 mn.node_id,
                 mn."name",
diff --git a/zhitan-vue/public/huanbao_background.png b/zhitan-vue/public/huanbao_background.png
new file mode 100644
index 0000000..d01b04b
--- /dev/null
+++ b/zhitan-vue/public/huanbao_background.png
@@ -0,0 +1 @@
+iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10HPuAAAgAElEQVR4Xu3dC5Qc1X3A8d+Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e6Z6e
\ No newline at end of file
diff --git a/zhitan-vue/src/views/huanbao/HuanBaoView.vue b/zhitan-vue/src/views/huanbao/HuanBaoView.vue
new file mode 100644
index 0000000..0f7aa23
--- /dev/null
+++ b/zhitan-vue/src/views/huanbao/HuanBaoView.vue
@@ -0,0 +1,82 @@
+<template>
+  <div class="huanbao-container">
+    <img src="@/assets/images/huanbao3d.png" alt="Equipment Background" class="background-image" />
+    <div class="data-tag tag-1" style="top: 80%; left: 10%; width: 180px">鍏ュ彛鍘嬪姏锛歿{ entryPressure }} Pa</div>
+    <div class="data-tag tag-2" style="top: 15%; left: 50%; width: 180px">鍑哄彛鍘嬪姏锛歿{ exitPressure }} Pa</div>
+    <div class="data-tag tag-3" style="top: 85%; left: 10%; width: 180px">杩涢閫燂細{{ inletVelocity }} m/s</div>
+    <div class="data-tag tag-1" style="top: 20%; left: 50%;width: 180px">鍑洪閫燂細{{ outletVelocity }} m/s</div>
+    <div class="data-tag tag-2" style="top: 45%; left: 40%;width: 180px">娓╁害锛歿{ temperature }} 鈩�</div>
+    <div class="data-tag tag-3" style="top: 50%; left: 40%;width: 180px">婀垮害锛歿{ humidity }} %</div>
+    <div class="data-tag tag-1" style="top: 55%; left: 40%;width: 180px">椋庢満棰戠巼锛歿{ 35 }} Hz</div>
+    <div class="data-tag tag-2" style="top: 60%; left: 40%;width: 180px">璁惧鍘嬪樊锛歿{ pressureDifference }} Pa</div>
+  </div>
+</template>
+
+<script setup>
+import { ref, onMounted, onUnmounted } from 'vue';
+
+const entryPressure = ref(0);
+const exitPressure = ref(0);
+const inletVelocity = ref(0);
+const outletVelocity = ref(0);
+const temperature = ref(0);
+const humidity = ref(0);
+const fanFrequency = ref(0);
+const pressureDifference = ref(0);
+
+let intervalId;
+
+const getRandomValue = (min, max) => {
+  return (Math.random() * (max - min) + min).toFixed(2);
+};
+
+const updateData = () => {
+  entryPressure.value = getRandomValue(-2000, -1500);
+  exitPressure.value = getRandomValue(80, 120);
+  inletVelocity.value = getRandomValue(50, 80);
+  outletVelocity.value = getRandomValue(30, 60);
+  temperature.value = getRandomValue(70, 80);
+  humidity.value = getRandomValue(80, 90);
+  fanFrequency.value = getRandomValue(35, 40);
+  pressureDifference.value = getRandomValue(800, 1000);
+};
+
+onMounted(() => {
+  updateData(); // Initial data load
+  intervalId = setInterval(updateData, 3000); // Update every 3 seconds
+});
+
+onUnmounted(() => {
+  clearInterval(intervalId);
+});
+</script>
+
+<style scoped>
+.huanbao-container {
+  position: relative;
+  width: 99%;
+  height: 88vh; /* Adjust as needed */
+  overflow: hidden;
+}
+
+.background-image {
+  width: 100%;
+  height: 100%;
+  object-fit: contain; /* Ensures the image fits within the container */
+  position: absolute;
+  top: 0;
+  left: 0;
+}
+
+.data-tag {
+  position: absolute;
+  background-color: rgba(0, 0, 0, 0.7);
+  color: white;
+  padding: 8px 12px;
+  border-radius: 5px;
+  font-size: 14px;
+  white-space: nowrap;
+  transform: translate(-50%, -50%); /* Center the tag on its position */
+  z-index: 10; /* Ensure tags are above the image */
+}
+</style>
\ No newline at end of file
diff --git a/zhitan-vue/src/views/system/user/profile/userAvatar.vue b/zhitan-vue/src/views/system/user/profile/userAvatar.vue
index 94b898e..4d59d5c 100644
--- a/zhitan-vue/src/views/system/user/profile/userAvatar.vue
+++ b/zhitan-vue/src/views/system/user/profile/userAvatar.vue
@@ -46,7 +46,7 @@
           <el-button icon="RefreshRight" @click="rotateRight()"></el-button>
         </el-col>
         <el-col :lg="{ span: 2, offset: 6 }" :md="2">
-          <!-- <el-button type="primary" @click="uploadImg()">鎻� 浜�</el-button> -->
+           <el-button type="primary" @click="uploadImg()">鎻� 浜�</el-button>
         </el-col>
       </el-row>
     </el-dialog>

--
Gitblit v1.9.3