feat(reserve): add session/场次 info to success page and usage detail
- reserve-index: pass selected session time to success page via query param - reserve-success: receive and display session conditionally - reserve-list: add session field to ReserveRecord model and detail sheet - 4 of 6 mock records now include session data Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -215,8 +215,12 @@ function handleSubmit() {
|
||||
|
||||
// Mock 预约成功
|
||||
const reserveId = 'YP' + Date.now().toString().slice(-8)
|
||||
// 获取选中场次的时间段
|
||||
const session = selectedSessions.value.find(s => s.id === selectedSession.value)
|
||||
const sessionTime = session ? session.time : ''
|
||||
const sessionParam = sessionTime ? `&session=${encodeURIComponent(sessionTime)}` : ''
|
||||
uni.navigateTo({
|
||||
url: `/pages/reserve/reserve-success?reserveId=${reserveId}&date=${selectedDate.value}&scenic=${scenic.value.name}`
|
||||
url: `/pages/reserve/reserve-success?reserveId=${reserveId}&date=${selectedDate.value}&scenic=${encodeURIComponent(scenic.value.name)}${sessionParam}`
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -148,6 +148,10 @@
|
||||
<text class="sheet-label">预约入园日期</text>
|
||||
<text class="sheet-value">{{ detailRecord?.date }}</text>
|
||||
</view>
|
||||
<view v-if="detailRecord?.session" class="sheet-row">
|
||||
<text class="sheet-label">预约场次</text>
|
||||
<text class="sheet-value">{{ detailRecord.session }}</text>
|
||||
</view>
|
||||
<view class="sheet-row">
|
||||
<text class="sheet-label">预约人</text>
|
||||
<text class="sheet-value">{{ detailRecord?.userName }}</text>
|
||||
@@ -195,6 +199,7 @@ interface ReserveRecord {
|
||||
id: string
|
||||
scenicName: string
|
||||
date: string
|
||||
session?: string
|
||||
status: RecordStatus
|
||||
userName: string
|
||||
maskedId: string
|
||||
@@ -226,12 +231,12 @@ const detailRecord = ref<ReserveRecord | null>(null)
|
||||
const cancelRecord = ref<ReserveRecord | null>(null)
|
||||
|
||||
const records = ref<ReserveRecord[]>([
|
||||
{ id: 'YP26062601', scenicName: '武功山金顶景区', date: '2026-06-27', status: 'pending', userName: '张三', maskedId: '360302****1234', cardType: '超级玩家卡', cardNo: 'CJ0000012398', applyTime: '2026-06-25 14:30' },
|
||||
{ id: 'YP26062502', scenicName: '杨岐山孽龙洞景区', date: '2026-06-26', status: 'pending', userName: '张三', maskedId: '360302****1234', cardType: '赣湘全域旅游年卡', cardNo: 'CJ0000012399', applyTime: '2026-06-24 10:15' },
|
||||
{ id: 'YP26062003', scenicName: '仙凤三宝景区', date: '2026-06-20', status: 'used', userName: '张三', maskedId: '360302****1234', cardType: '超级玩家卡', cardNo: 'CJ0000012400', applyTime: '2026-06-18 09:20', verifyTime: '2026-06-20 09:45', verifyPhoto: 'https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?fm=jpg&q=80&w=200&h=200&fit=crop' },
|
||||
{ id: 'YP26062601', scenicName: '武功山金顶景区', date: '2026-06-27', session: '08:00-10:00', status: 'pending', userName: '张三', maskedId: '360302****1234', cardType: '超级玩家卡', cardNo: 'CJ0000012398', applyTime: '2026-06-25 14:30' },
|
||||
{ id: 'YP26062502', scenicName: '杨岐山孽龙洞景区', date: '2026-06-26', session: '10:00-12:00', status: 'pending', userName: '张三', maskedId: '360302****1234', cardType: '赣湘全域旅游年卡', cardNo: 'CJ0000012399', applyTime: '2026-06-24 10:15' },
|
||||
{ id: 'YP26062003', scenicName: '仙凤三宝景区', date: '2026-06-20', session: '14:00-16:00', status: 'used', userName: '张三', maskedId: '360302****1234', cardType: '超级玩家卡', cardNo: 'CJ0000012400', applyTime: '2026-06-18 09:20', verifyTime: '2026-06-20 09:45', verifyPhoto: 'https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?fm=jpg&q=80&w=200&h=200&fit=crop' },
|
||||
{ id: 'YP26061804', scenicName: '武功山君澜温泉', date: '2026-06-18', status: 'cancelled', userName: '张三', maskedId: '360302****1234', cardType: '赣湘全域旅游年卡', cardNo: 'CJ0000012401', applyTime: '2026-06-16 16:40', cancelTime: '2026-06-17 20:30' },
|
||||
{ id: 'YP26061505', scenicName: '凯光新天地生态旅游区', date: '2026-06-15', status: 'auto_used', userName: '张三', maskedId: '360302****1234', cardType: '超级玩家卡', cardNo: 'CJ0000012402', applyTime: '2026-06-13 11:05', verifyTime: '2026-06-16 00:00', verifyPhoto: 'https://images.unsplash.com/photo-1527980965255-d3b416303d12?fm=jpg&q=80&w=200&h=200&fit=crop' },
|
||||
{ id: 'YP26061006', scenicName: '和平农场·哎马乐园', date: '2026-06-10', status: 'used', userName: '张三', maskedId: '360302****1234', cardType: '赣湘全域旅游年卡', cardNo: 'CJ0000012403', applyTime: '2026-06-08 08:50', verifyTime: '2026-06-10 10:22', verifyPhoto: 'https://images.unsplash.com/photo-1494790108377-be9c29b29330?fm=jpg&q=80&w=200&h=200&fit=crop' },
|
||||
{ id: 'YP26061006', scenicName: '和平农场·哎马乐园', date: '2026-06-10', session: '08:00-12:00', status: 'used', userName: '张三', maskedId: '360302****1234', cardType: '赣湘全域旅游年卡', cardNo: 'CJ0000012403', applyTime: '2026-06-08 08:50', verifyTime: '2026-06-10 10:22', verifyPhoto: 'https://images.unsplash.com/photo-1494790108377-be9c29b29330?fm=jpg&q=80&w=200&h=200&fit=crop' },
|
||||
])
|
||||
|
||||
const filteredRecords = computed(() => {
|
||||
|
||||
@@ -20,6 +20,10 @@
|
||||
<text class="info-label">预约日期</text>
|
||||
<text class="info-value">{{ reserveDate }}</text>
|
||||
</view>
|
||||
<view v-if="reserveSession" class="info-row">
|
||||
<text class="info-label">预约场次</text>
|
||||
<text class="info-value">{{ reserveSession }}</text>
|
||||
</view>
|
||||
<view class="info-row">
|
||||
<text class="info-label">预约人</text>
|
||||
<text class="info-value">{{ userName }}</text>
|
||||
@@ -85,6 +89,7 @@ import { onLoad, onBackPress } from '@dcloudio/uni-app'
|
||||
const reserveId = ref('YP26062601')
|
||||
const scenicName = ref('武功山金顶景区')
|
||||
const reserveDate = ref('2026-06-27(周六)')
|
||||
const reserveSession = ref('')
|
||||
const userName = ref('张三')
|
||||
const maskedId = ref('360302****1234')
|
||||
const codePopup = ref<any>(null)
|
||||
@@ -97,6 +102,7 @@ onLoad((query: any) => {
|
||||
reserveDate.value = `${query.date}(${weekNames[d.getDay()]})`
|
||||
}
|
||||
if (query?.scenic) scenicName.value = decodeURIComponent(query.scenic)
|
||||
if (query?.session) reserveSession.value = decodeURIComponent(query.session)
|
||||
})
|
||||
|
||||
// 拦截返回,跳转预约记录页
|
||||
|
||||
Reference in New Issue
Block a user