From 08e2f6888b7f3a0d9bacedac2f725efe911dd23c Mon Sep 17 00:00:00 2001 From: jacobxu666 Date: Fri, 7 Aug 2026 18:29:12 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=A2=E6=9C=8D=E7=83=AD=E7=BA=BF?= =?UTF-8?q?=E5=BC=B9=E7=AA=97=E3=80=81=E5=8F=96=E6=B6=88=E9=A2=84=E7=BA=A6?= =?UTF-8?q?=E6=96=87=E6=A1=88=E4=B8=8E=E6=97=85=E6=B8=B8=E5=8D=A1=E9=A1=B5?= =?UTF-8?q?=E5=B8=83=E5=B1=80=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 客服热线改为弹窗拉取 mpContent/queryList 客服信息(SERVICE_INFO),富文本电话可点击拨号 - 取消预约确认弹窗展示具体预约日期与景区名称,取消后隐藏取消按钮 - makePhoneCall 用户取消时静默处理,不再上报异常 - 景区列表搜索图标改为 OSS 图片 - 旅游卡页:人脸头像方形竖版、信息单行靠右、入园提示移至持卡人信息下方等布局优化 - project.config.json appid 同步为 wxae3b39ac443fedc3 Co-Authored-By: Claude Opus 4.8 (1M context) --- project.config.json | 2 +- src/api/types.ts | 1 + src/packages/content/pages/scenic-detail.vue | 2 +- src/packages/content/pages/scenic-list.vue | 30 +-- src/packages/user/pages/douyin-verify.vue | 2 +- src/packages/user/pages/reserve/list.vue | 11 +- src/pages/profile/index.vue | 265 ++++++++++++++++++- src/pages/qrcode/index.vue | 89 +++---- 8 files changed, 312 insertions(+), 90 deletions(-) diff --git a/project.config.json b/project.config.json index 8faa6c0..85391b4 100644 --- a/project.config.json +++ b/project.config.json @@ -36,6 +36,6 @@ "tabIndent": "auto", "tabSize": 2 }, - "appid": "wx636bc46a6570e9fd", + "appid": "wxae3b39ac443fedc3", "simulatorPluginLibVersion": {} } \ No newline at end of file diff --git a/src/api/types.ts b/src/api/types.ts index 7531cf5..30c8b88 100644 --- a/src/api/types.ts +++ b/src/api/types.ts @@ -216,6 +216,7 @@ export interface BannerItem { title: string content: string | null imageUrl: string + videoUrl?: string | null linkUrl: string sortOrder: number category: string | null diff --git a/src/packages/content/pages/scenic-detail.vue b/src/packages/content/pages/scenic-detail.vue index aebfe86..ab58a58 100644 --- a/src/packages/content/pages/scenic-detail.vue +++ b/src/packages/content/pages/scenic-detail.vue @@ -296,7 +296,7 @@ function onHoursClick() { uni.showToast({ title: '营业时间仅供参考', icon: 'none' }) } function onPhoneClick() { - uni.makePhoneCall({ phoneNumber: scenic.value.phone }) + uni.makePhoneCall({ phoneNumber: scenic.value.phone, fail: () => {} }) } function onCopyAddress() { uni.setClipboardData({ diff --git a/src/packages/content/pages/scenic-list.vue b/src/packages/content/pages/scenic-list.vue index 63b06fe..b91c865 100644 --- a/src/packages/content/pages/scenic-list.vue +++ b/src/packages/content/pages/scenic-list.vue @@ -6,10 +6,11 @@ - - - - + ({ } .search-icon { - position: relative; width: 32rpx; height: 32rpx; margin-right: $spacing-2; } -.icon-circle { - width: 20rpx; - height: 20rpx; - border: 3rpx solid $uv-tips-color; - border-radius: 50%; - position: absolute; - top: 0; - left: 0; -} - -.icon-handle { - width: 10rpx; - height: 3rpx; - background: $uv-tips-color; - position: absolute; - bottom: 4rpx; - right: 0; - transform: rotate(45deg); -} - .search-input { flex: 1; font-size: $font-size-base; diff --git a/src/packages/user/pages/douyin-verify.vue b/src/packages/user/pages/douyin-verify.vue index bb750b2..30e75d5 100644 --- a/src/packages/user/pages/douyin-verify.vue +++ b/src/packages/user/pages/douyin-verify.vue @@ -640,7 +640,7 @@ function removePhoto() { } function callService() { - uni.makePhoneCall({ phoneNumber: '0731-88912301' }) + uni.makePhoneCall({ phoneNumber: '0731-88912301', fail: () => {} }) } function closeNoVoucher() { diff --git a/src/packages/user/pages/reserve/list.vue b/src/packages/user/pages/reserve/list.vue index fe52712..0a82036 100644 --- a/src/packages/user/pages/reserve/list.vue +++ b/src/packages/user/pages/reserve/list.vue @@ -63,7 +63,7 @@ @@ -110,7 +110,7 @@ 取消预约 - 确定取消该预约吗?未提前取消且未入园将扣除1次年卡使用次数,权益不可恢复。 + 确定取消 {{ formatReserveDate(cancelRecord?.date) }}{{ cancelRecord?.scenicName }} 的预约吗? @@ -325,6 +325,13 @@ watch(activeTab, () => { fetchRecords() }) +/** 将预约日期(如 2026-08-05)格式化为「2026 年 8 月 5 日」 */ +function formatReserveDate(date?: string): string { + const m = (date || '').match(/(\d{4})[-/年.](\d{1,2})[-/月.](\d{1,2})/) + if (!m) return date || '' + return `${m[1]} 年 ${Number(m[2])} 月 ${Number(m[3])} 日` +} + function showCancelModal(r: ReserveRecord) { cancelRecord.value = r cancelPopup.value?.open() diff --git a/src/pages/profile/index.vue b/src/pages/profile/index.vue index 7ea882f..2ac5f39 100644 --- a/src/pages/profile/index.vue +++ b/src/pages/profile/index.vue @@ -45,7 +45,7 @@ 常见问题 - + @@ -61,11 +61,65 @@ 退出登录 + + + + + 客服热线 + + + 加载中... + + + 暂无客服信息 + + + + + 关闭 + + +