From 407ccea15bf30deaf26eaa6c7176e939d0dfadac Mon Sep 17 00:00:00 2001 From: luoyuehang <2830398107@qq.com> Date: Fri, 26 Dec 2025 21:07:36 +0800 Subject: [PATCH] =?UTF-8?q?app2=E7=9A=84=E5=AD=A6=E7=94=9F=E9=A5=AE?= =?UTF-8?q?=E6=B0=B4=E9=87=8F=E7=BB=9F=E8=AE=A1=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/services/studentDrinkStatsService.js | 49 ++++ .../resources/app2/src/views/ProfilePage.vue | 269 +++++++++++++++--- .../resources/app2/src/views/ScanPage.vue | 107 ++++--- 3 files changed, 344 insertions(+), 81 deletions(-) create mode 100644 src/main/resources/app2/src/services/studentDrinkStatsService.js diff --git a/src/main/resources/app2/src/services/studentDrinkStatsService.js b/src/main/resources/app2/src/services/studentDrinkStatsService.js new file mode 100644 index 0000000..027be23 --- /dev/null +++ b/src/main/resources/app2/src/services/studentDrinkStatsService.js @@ -0,0 +1,49 @@ +// src/services/studentDrinkStatsService.js +import apiClient from '@/services/api' + +export const studentDrinkStatsService = { + /** + * 获取今日饮水统计 + */ + async getTodayStats(studentId) { + try { + const response = await apiClient.post('/api/student/drink-stats/today', { + studentId: studentId + }) + return response.data + } catch (error) { + console.error('获取今日饮水统计失败:', error) + throw error + } + }, + + /** + * 获取本周饮水统计 + */ + async getThisWeekStats(studentId) { + try { + const response = await apiClient.post('/api/student/drink-stats/this-week', { + studentId: studentId + }) + return response.data + } catch (error) { + console.error('获取本周饮水统计失败:', error) + throw error + } + }, + + /** + * 获取本月饮水统计 + */ + async getThisMonthStats(studentId) { + try { + const response = await apiClient.post('/api/student/drink-stats/this-month', { + studentId: studentId + }) + return response.data + } catch (error) { + console.error('获取本月饮水统计失败:', error) + throw error + } + } +} diff --git a/src/main/resources/app2/src/views/ProfilePage.vue b/src/main/resources/app2/src/views/ProfilePage.vue index 0669cfb..29fb07e 100644 --- a/src/main/resources/app2/src/views/ProfilePage.vue +++ b/src/main/resources/app2/src/views/ProfilePage.vue @@ -39,18 +39,36 @@
-
{{ userStats.days }}
-
累计用水天数
+
{{ userStats.totalConsumption }}ml
+
累计饮水量
-
{{ userStats.todayWater }}
-
今日饮水量
+
{{ userStats.drinkCount }}
+
饮水次数
+
+
+ +
+
+
{{ userStats.avgDaily }}ml
+
日均饮水量
+
+
+
{{ userStats.days }}天
+
饮水天数
+
+ 今日 +
-
800ml
-
600ml
-
400ml
-
200ml
+
{{ maxChartValue }}ml
+
{{ Math.round(maxChartValue * 0.75) }}ml
+
{{ Math.round(maxChartValue * 0.5) }}ml
+
{{ Math.round(maxChartValue * 0.25) }}ml
0ml
@@ -97,7 +115,7 @@ >
{{ item.value }}ml
@@ -110,6 +128,26 @@
+ +
+
每日详情
+
+
+
{{ formatDate(detail.date) }}
+
{{ detail.consumption }}ml
+
{{ detail.count }}次
+
+ +
+ 暂无饮水记录 +
+
+
+