From 80af8f718bcef7f2688ab45ff607a64c608ad4b3 Mon Sep 17 00:00:00 2001
From: WindowBird <13870814+windows-bird@user.noreply.gitee.com>
Date: Fri, 15 Aug 2025 16:16:04 +0800
Subject: [PATCH] =?UTF-8?q?=E6=88=91=E7=9A=84=E9=A2=84=E7=BA=A60.1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
api/personalCenter/index.js | 124 +++++
pages.json | 7 +
pages/personalCenter/myAppointment.vue | 581 ++++++++++++++++++++++++
pages/personalCenter/personalCenter.vue | 23 +-
4 files changed, 727 insertions(+), 8 deletions(-)
create mode 100644 api/personalCenter/index.js
create mode 100644 pages/personalCenter/myAppointment.vue
diff --git a/api/personalCenter/index.js b/api/personalCenter/index.js
new file mode 100644
index 0000000..6f909c4
--- /dev/null
+++ b/api/personalCenter/index.js
@@ -0,0 +1,124 @@
+// 个人中心相关API
+import { get, request } from '@/utils/request'
+
+/**
+ * 获取预约列表
+ * @param {Object} params - 查询参数
+ * @param {number} params.pageNum - 页码
+ * @param {number} params.pageSize - 每页数量
+ * @param {number} params.type - 预约类型 1: 活动预约, 2: 斋饭预约
+ * @returns {Promise} 返回预约列表数据
+ */
+export function getAppointmentList(params) {
+ return get('/app/subscribe/list', params, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
+
+/**
+ * 取消预约
+ * @param {string} subscribeId - 预约ID
+ * @returns {Promise} 返回取消结果
+ */
+export function cancelAppointment(subscribeId) {
+ return request({
+ url: '/app/subscribe/cancelSub',
+ method: 'PUT',
+ params: {
+ subscribeId: subscribeId
+ }
+ })
+}
+
+/**
+ * 获取预约二维码
+ * @param {string} id - 预约ID
+ * @returns {Promise} 返回二维码数据
+ */
+export function getAppointmentQRCode(id) {
+ return get(`/app/subscribe/qrcode/${id}`, {}, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
+
+/**
+ * 获取用户信息
+ * @returns {Promise} 返回用户信息
+ */
+export function getUserInfo() {
+ return get('/app/user/info', {}, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
+
+/**
+ * 更新用户信息
+ * @param {Object} data - 用户信息数据
+ * @returns {Promise} 返回更新结果
+ */
+export function updateUserInfo(data) {
+ return request({
+ url: '/app/user/info',
+ method: 'PUT',
+ data,
+ })
+}
+
+/**
+ * 获取我的收藏列表
+ * @param {Object} params - 查询参数
+ * @param {number} params.pageNum - 页码
+ * @param {number} params.pageSize - 每页数量
+ * @returns {Promise} 返回收藏列表数据
+ */
+export function getMyCollection(params) {
+ return get('/app/collection/list', params, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
+
+/**
+ * 获取捐赠历史记录
+ * @param {Object} params - 查询参数
+ * @param {number} params.pageNum - 页码
+ * @param {number} params.pageSize - 每页数量
+ * @returns {Promise} 返回捐赠历史数据
+ */
+export function getDonationHistory(params) {
+ return get('/app/donation/history', params, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
+
+/**
+ * 获取祈福记录
+ * @param {Object} params - 查询参数
+ * @param {number} params.pageNum - 页码
+ * @param {number} params.pageSize - 每页数量
+ * @returns {Promise} 返回祈福记录数据
+ */
+export function getPrayerRecords(params) {
+ return get('/app/prayer/records', params, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
+
+/**
+ * 获取寺庙活动列表
+ * @param {Object} params - 查询参数
+ * @param {number} params.pageNum - 页码
+ * @param {number} params.pageSize - 每页数量
+ * @returns {Promise} 返回寺庙活动数据
+ */
+export function getTempleActivities(params) {
+ return get('/app/temple/activities', params, {
+ timeout: 10000,
+ showLoading: false,
+ })
+}
\ No newline at end of file
diff --git a/pages.json b/pages.json
index 8024395..a48515f 100644
--- a/pages.json
+++ b/pages.json
@@ -208,6 +208,13 @@
"style": {
"navigationStyle": "custom"
}
+ },
+ {
+ "path" : "pages/personalCenter/myAppointment",
+ "style" :
+ {
+ "navigationStyle": "custom"
+ }
}
],
"subPackages": [
diff --git a/pages/personalCenter/myAppointment.vue b/pages/personalCenter/myAppointment.vue
new file mode 100644
index 0000000..1749fd4
--- /dev/null
+++ b/pages/personalCenter/myAppointment.vue
@@ -0,0 +1,581 @@
+
+
+
+
+
+
+
+
+
+ 活动预约
+
+
+ 斋饭预约
+
+
+
+
+
+
+
+
+
+
+
+
+ 活动时间:
+ {{ formatTime(item.slotStarteTime, item.slotEndTime) }}
+
+
+
+ 活动地点:
+ {{ item.address }}
+
+
+ 参与人数:
+ {{ item.number }}人
+
+
+
+
+
+
+
+
+ 出示码券
+
+
+
+
+ 取消预约
+
+
+
+
+ 已完成
+
+
+
+
+ 已取消
+
+
+
+
+
+
+
+ 暂无预约记录
+
+
+
+
+ 加载中...
+
+
+
+
+
+
+
+
diff --git a/pages/personalCenter/personalCenter.vue b/pages/personalCenter/personalCenter.vue
index a9bf419..4ee2e52 100644
--- a/pages/personalCenter/personalCenter.vue
+++ b/pages/personalCenter/personalCenter.vue
@@ -44,6 +44,7 @@