diff --git a/src/api/order.ts b/src/api/order.ts deleted file mode 100644 index 424ab8b..0000000 --- a/src/api/order.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { USE_MOCK } from '@/mock' -import type { OrderItem } from '@/mock/order' -import { orderStore } from '@/mock/store' -import type { CreateOrderParams } from './types' -import { get, post } from './request' - -/** 获取订单列表 */ -export function getOrderList(): Promise { - if (USE_MOCK) return Promise.resolve(orderStore.value) - return get('/mp-api/order/list') -} - -/** 获取订单详情 */ -export function getOrderDetail(id: string): Promise { - if (USE_MOCK) { - return Promise.resolve(orderStore.value.find(o => o.id === id)) - } - return get(`/mp-api/order/detail?id=${id}`) -} - -/** 创建订单 */ -export function createOrder(params: CreateOrderParams): Promise<{ orderId: string }> { - if (USE_MOCK) { - return Promise.resolve({ orderId: `mock_${Date.now()}` }) - } - return post<{ orderId: string }>('/mp-api/order/create', params) -} diff --git a/src/api/reserve.ts b/src/api/reserve.ts deleted file mode 100644 index 8151bb5..0000000 --- a/src/api/reserve.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { USE_MOCK } from '@/mock' -import { reserveStore } from '@/mock/store' -import type { ReserveRecordItem } from '@/mock/reserve' -import { get, post } from './request' - -/** 获取预约记录列表 */ -export function getReserveList(): Promise { - if (USE_MOCK) return Promise.resolve(reserveStore.value) - return get('/mp-api/reserve/list') -} - -/** 创建预约 */ -export function createReserve(params: Omit): Promise<{ id: string }> { - if (USE_MOCK) { - const id = `YP${Date.now().toString(36).toUpperCase()}` - reserveStore.value.push({ ...params, id }) - return Promise.resolve({ id }) - } - return post<{ id: string }>('/mp-api/reserve/create', params) -} diff --git a/src/api/scenic.ts b/src/api/scenic.ts deleted file mode 100644 index ad79daf..0000000 --- a/src/api/scenic.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { USE_MOCK } from '@/mock' -import { mockScenicList, type ScenicItem } from '@/mock/scenic' -import { mockScenicDetails, type ScenicDetail } from '@/mock/scenic-detail' -import { get } from './request' - -/** 获取景区列表 */ -export function getScenicList(): Promise { - if (USE_MOCK) return Promise.resolve(mockScenicList) - return get('/mp-api/scenic/list') -} - -/** 获取景区详情 */ -export function getScenicDetail(id: number): Promise { - if (USE_MOCK) { - return Promise.resolve(mockScenicDetails.find(s => s.id === id)) - } - return get(`/mp-api/scenic/detail?id=${id}`) -} diff --git a/src/mock/reserve.ts b/src/mock/reserve.ts deleted file mode 100644 index d6e3cea..0000000 --- a/src/mock/reserve.ts +++ /dev/null @@ -1,30 +0,0 @@ -/** - * 预约记录 mock 数据 — 从 reserve-list.vue 提取 - */ -import { IMG_AVATAR_DEFAULT, IMG_AVATAR_MALE, IMG_AVATAR_FEMALE } from './images' - -type RecordStatus = 'pending' | 'used' | 'cancelled' | 'auto_used' - -export interface ReserveRecordItem { - id: string - scenicName: string - date: string - status: RecordStatus - userName: string - maskedId: string - cardType: string - cardNo: string - applyTime: string - cancelTime?: string - verifyTime?: string - verifyPhoto?: string -} - -export const mockReserves: ReserveRecordItem[] = [ - { 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: IMG_AVATAR_DEFAULT }, - { 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: IMG_AVATAR_MALE }, - { 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: IMG_AVATAR_FEMALE }, -] diff --git a/src/mock/store.ts b/src/mock/store.ts deleted file mode 100644 index 117a588..0000000 --- a/src/mock/store.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { ref } from 'vue' -import type { OrderItem } from './order' -import type { ReserveRecordItem } from './reserve' -import { mockOrders } from './order' -import { mockReserves } from './reserve' - -export const orderStore = ref([...mockOrders]) -export const reserveStore = ref([...mockReserves]) - -export function updateOrderStatus(orderId: string, status: OrderItem['status']) { - const order = orderStore.value.find(o => o.id === orderId) - if (order) order.status = status -} - -export function addReserve(record: Omit) { - const id = `YP${Date.now().toString(36).toUpperCase()}` - reserveStore.value.push({ ...record, id }) -} diff --git a/src/mock/order.ts b/src/packages/user/mock/order.ts similarity index 100% rename from src/mock/order.ts rename to src/packages/user/mock/order.ts diff --git a/src/packages/user/pages/order/list.vue b/src/packages/user/pages/order/list.vue index d764079..0acff8f 100644 --- a/src/packages/user/pages/order/list.vue +++ b/src/packages/user/pages/order/list.vue @@ -117,7 +117,7 @@