diff --git a/src/admin/components/UserCard.tsx b/src/admin/components/UserCard.tsx index a83f124..fb3a433 100644 --- a/src/admin/components/UserCard.tsx +++ b/src/admin/components/UserCard.tsx @@ -237,7 +237,7 @@ function UserCard() {
navTo('/user/gift/index', true)}> - 礼品卡 + 水票 {giftCount}
{/*
*/} diff --git a/src/api/shop/shopGift/model/index.ts b/src/api/shop/shopGift/model/index.ts index 93713a6..f3c7450 100644 --- a/src/api/shop/shopGift/model/index.ts +++ b/src/api/shop/shopGift/model/index.ts @@ -1,7 +1,7 @@ import type { PageParam } from '@/api'; /** - * 礼品卡 + * 水票 */ export interface ShopGift { // 礼品卡ID diff --git a/src/api/user/index.ts b/src/api/user/index.ts index 6a5da2d..8f8b3c6 100644 --- a/src/api/user/index.ts +++ b/src/api/user/index.ts @@ -43,7 +43,7 @@ export interface UserOrderStats { total: number } -// 用户卡片统计(个人中心头部:余额/积分/优惠券/礼品卡) +// 用户卡片统计(个人中心头部:余额/积分/优惠券/水票) export interface UserCardStats { balance: string points: number diff --git a/src/app.config.ts b/src/app.config.ts index 776676e..7a1c168 100644 --- a/src/app.config.ts +++ b/src/app.config.ts @@ -56,6 +56,7 @@ export default { "gift/index", "gift/redeem", "gift/detail", + "gift/add", "store/verification", "theme/index", "poster/poster", diff --git a/src/components/GiftCard.tsx b/src/components/GiftCard.tsx index b6f89e6..55a9824 100644 --- a/src/components/GiftCard.tsx +++ b/src/components/GiftCard.tsx @@ -24,7 +24,7 @@ export interface GiftCardProps { faceValue?: string /** 商品原价 */ originalPrice?: string - /** 礼品卡类型:10-实物礼品卡 20-虚拟礼品卡 30-服务礼品卡 */ + /** 礼品卡类型:10-礼品劵 20-虚拟礼品卡 30-服务礼品卡 */ type?: number /** 状态:0-未使用 1-已使用 2-失效 */ status?: number @@ -112,10 +112,10 @@ const GiftCard: React.FC = ({ // 获取礼品卡类型文本 const getTypeText = () => { switch (type) { - case 10: return '实物礼品卡' + case 10: return '礼品劵' case 20: return '虚拟礼品卡' case 30: return '服务礼品卡' - default: return '礼品卡' + default: return '水票' } } diff --git a/src/components/GiftCardGuide.tsx b/src/components/GiftCardGuide.tsx index 6b1db57..b1e7eb1 100644 --- a/src/components/GiftCardGuide.tsx +++ b/src/components/GiftCardGuide.tsx @@ -51,7 +51,7 @@ const GiftCardGuide: React.FC = ({ title: '礼品卡类型说明', icon: , content: [ - '🎁 实物礼品卡:需到指定地址领取商品', + '🎁 礼品劵:需到指定地址领取商品', '💻 虚拟礼品卡:自动发放到账户余额', '🛎️ 服务礼品卡:联系客服预约服务', '⏰ 注意查看有效期,过期无法使用' diff --git a/src/components/GiftCardShare.tsx b/src/components/GiftCardShare.tsx index ea4e217..0d29302 100644 --- a/src/components/GiftCardShare.tsx +++ b/src/components/GiftCardShare.tsx @@ -28,10 +28,10 @@ const GiftCardShare: React.FC = ({ // 获取礼品卡类型文本 const getTypeText = () => { switch (giftCard.type) { - case 10: return '实物礼品卡' + case 10: return '礼品劵' case 20: return '虚拟礼品卡' case 30: return '服务礼品卡' - default: return '礼品卡' + default: return '水票' } } diff --git a/src/pages/index/index.tsx b/src/pages/index/index.tsx index 6ccf785..1fa973a 100644 --- a/src/pages/index/index.tsx +++ b/src/pages/index/index.tsx @@ -161,15 +161,15 @@ function Home() { () => [ { key: 'ticket', - title: '充值水票', + title: '我的水票', icon: , - onClick: () => Taro.navigateTo({ url: '/user/wallet/wallet' }), + onClick: () => Taro.navigateTo({ url: '/user/gift/index' }), }, { key: 'order', title: '立即订水', icon: , - onClick: () => Taro.switchTab({ url: '/pages/category/index' }), + onClick: () => Taro.navigateTo({ url: '/shop/goodsDetail/index?id=10072' }), }, { key: 'invite', diff --git a/src/pages/user/components/UserCard.tsx b/src/pages/user/components/UserCard.tsx index e2f940c..497fe78 100644 --- a/src/pages/user/components/UserCard.tsx +++ b/src/pages/user/components/UserCard.tsx @@ -65,7 +65,7 @@ const UserCard = forwardRef((_, ref) => { setUserInfo(data) setIsLogin(true); Taro.setStorageSync('UserId', data.userId) - // 登录态已就绪后刷新卡片统计(余额/积分/券/礼品卡) + // 登录态已就绪后刷新卡片统计(余额/积分/券/水票) refresh().then() // 获取openId @@ -164,7 +164,7 @@ const UserCard = forwardRef((_, ref) => { Taro.setStorageSync('UserId', res.data.data.user.userId) setUserInfo(res.data.data.user) setIsLogin(true) - // 登录态已就绪后刷新卡片统计(余额/积分/券/礼品卡) + // 登录态已就绪后刷新卡片统计(余额/积分/券/水票) refresh().then() } }) @@ -228,7 +228,7 @@ const UserCard = forwardRef((_, ref) => { // 核销成功,可以显示更多信息或跳转到详情页 Taro.showModal({ title: '核销成功', - content: `已成功核销的品类:${result.data.goodsName || '礼品卡'},面值¥${result.data.faceValue}` + content: `已成功核销的品类:${result.data.goodsName || '水票'},面值¥${result.data.faceValue}` }); } }} @@ -256,7 +256,7 @@ const UserCard = forwardRef((_, ref) => { navTo('/user/gift/index', true)}> - 礼品卡 + 水票 {data?.giftCards || 0} diff --git a/src/passport/unified-qr/index.tsx b/src/passport/unified-qr/index.tsx index 9e87c7f..c229ad6 100644 --- a/src/passport/unified-qr/index.tsx +++ b/src/passport/unified-qr/index.tsx @@ -193,7 +193,7 @@ const UnifiedQRPage: React.FC = () => { {result.type === ScanType.VERIFICATION && result.data && ( - 礼品卡:{result.data.goodsName || '未知商品'} + 水票:{result.data.goodsName || '未知商品'} 面值:¥{result.data.faceValue} diff --git a/src/types/giftCard.ts b/src/types/giftCard.ts index 9178651..3736e25 100644 --- a/src/types/giftCard.ts +++ b/src/types/giftCard.ts @@ -4,7 +4,7 @@ /** 礼品卡类型枚举 */ export enum GiftCardType { - /** 实物礼品卡 */ + /** 礼品劵 */ PHYSICAL = 10, /** 虚拟礼品卡 */ VIRTUAL = 20, diff --git a/src/user/gift/detail.tsx b/src/user/gift/detail.tsx index e2ab775..b94841e 100644 --- a/src/user/gift/detail.tsx +++ b/src/user/gift/detail.tsx @@ -43,10 +43,10 @@ const GiftCardDetail = () => { // 获取礼品卡类型文本 const getGiftTypeText = (type?: number) => { switch (type) { - case 10: return '实物礼品卡' + case 10: return '礼品劵' case 20: return '虚拟礼品卡' case 30: return '服务礼品卡' - default: return '礼品卡' + default: return '水票' } } diff --git a/src/user/gift/index.config.ts b/src/user/gift/index.config.ts index c3474f2..521bff3 100644 --- a/src/user/gift/index.config.ts +++ b/src/user/gift/index.config.ts @@ -1,5 +1,5 @@ export default definePageConfig({ - navigationBarTitleText: '我的礼品卡', + navigationBarTitleText: '我的水票', navigationBarTextStyle: 'black', navigationBarBackgroundColor: '#ffffff' }) diff --git a/src/user/gift/index.tsx b/src/user/gift/index.tsx index aaae782..d7f5fab 100644 --- a/src/user/gift/index.tsx +++ b/src/user/gift/index.tsx @@ -1,7 +1,7 @@ import {useState} from "react"; import Taro, {useDidShow} from '@tarojs/taro' import {Button, Empty, ConfigProvider,SearchBar, InfiniteLoading, Loading, PullToRefresh, Tabs, TabPane} from '@nutui/nutui-react-taro' -import {Gift, Retweet, Board, QrCode} from '@nutui/icons-react-taro' +import {Gift, Retweet, QrCode} from '@nutui/icons-react-taro' import {View} from '@tarojs/components' import {ShopGift} from "@/api/shop/shopGift/model"; import {getUserGifts} from "@/api/shop/shopGift"; @@ -24,7 +24,7 @@ const GiftCardManage = () => { // sortOrder: 'desc' as 'asc' | 'desc' // }) - // 获取礼品卡状态过滤条件 + // 获取水票状态过滤条件 const getStatusFilter = () => { switch (String(activeTab)) { case '0': // 未使用 @@ -52,7 +52,7 @@ const GiftCardManage = () => { } } - // 根据状态过滤条件加载礼品卡 + // 根据状态过滤条件加载水票 const loadGiftsByStatus = async (statusFilter: any) => { setLoading(true) try { @@ -72,9 +72,9 @@ const GiftCardManage = () => { setHasMore(false) } } catch (error) { - console.error('获取礼品卡失败:', error) + console.error('获取水票失败:', error) Taro.showToast({ - title: '获取礼品卡失败', + title: '获取水票失败', icon: 'error' }) } finally { @@ -125,9 +125,9 @@ const GiftCardManage = () => { // setTotal(0) } } catch (error) { - console.error('获取礼品卡失败:', error) + console.error('获取水票失败:', error) Taro.showToast({ - title: '获取礼品卡失败', + title: '获取水票失败', icon: 'error' }); } finally { @@ -162,11 +162,11 @@ const GiftCardManage = () => { loadGiftsByStatus(statusFilter) } - // 转换礼品卡数据为GiftCard组件所需格式 + // 转换水票数据为GiftCard组件所需格式 const transformGiftData = (gift: ShopGift): GiftCardProps => { return { id: gift.id || 0, - name: gift.name || '礼品卡', // 礼品卡名称 + name: gift.name || '水票', // 水票名称 goodsName: gift.goodsName, // 商品名称(新增字段) description: gift.description || gift.instructions, // 使用说明作为描述 code: gift.code, @@ -180,23 +180,23 @@ const GiftCardManage = () => { contactInfo: gift.contactInfo, // 添加商品信息 goodsInfo: { - // 如果有商品名称或商品ID,说明是关联商品的礼品卡 + // 如果有商品名称或商品ID,说明是关联商品的水票 ...((gift.goodsName || gift.goodsId) && { - specification: `礼品卡面值:¥${gift.faceValue}`, + specification: `水票面值:¥${gift.faceValue}`, category: getTypeText(gift.type), tags: [ getTypeText(gift.type), gift.status === 0 ? '未使用' : gift.status === 1 ? '已使用' : '失效', - ...(gift.goodsName ? ['商品礼品卡'] : []) + ...(gift.goodsName ? ['商品水票'] : []) ].filter(Boolean), instructions: gift.instructions ? [gift.instructions] : [ '请在有效期内使用', '出示兑换码即可使用', '不可兑换现金', - ...(gift.goodsName ? ['此礼品卡关联具体商品'] : []) + ...(gift.goodsName ? ['此水票关联具体商品'] : []) ], notices: [ - '礼品卡一经使用不可退换', + '水票一经使用不可退换', '请妥善保管兑换码', '如有疑问请联系客服', ...(gift.goodsName ? ['商品以实际为准'] : []) @@ -213,34 +213,34 @@ const GiftCardManage = () => { } } - // 获取礼品卡类型文本 + // 获取水票类型文本 const getTypeText = (type?: number): string => { switch (type) { - case 10: return '实物礼品卡' - case 20: return '虚拟礼品卡' - case 30: return '服务礼品卡' - default: return '礼品卡' + case 10: return '实物水票' + case 20: return '虚拟水票' + case 30: return '服务水票' + default: return '水票' } } - // 根据礼品卡类型获取主题色 + // 根据水票类型获取主题色 const getThemeByType = (type?: number): 'gold' | 'silver' | 'bronze' | 'blue' | 'green' | 'purple' => { switch (type) { - case 10: return 'gold' // 实物礼品卡 - 金色 - case 20: return 'blue' // 虚拟礼品卡 - 蓝色 - case 30: return 'green' // 服务礼品卡 - 绿色 + case 10: return 'gold' // 实物水票 - 金色 + case 20: return 'blue' // 虚拟水票 - 蓝色 + case 30: return 'green' // 服务水票 - 绿色 default: return 'purple' // 默认使用紫色主题,更美观 } } - // 使用礼品卡 + // 使用水票 const handleUseGift = (gift: ShopGift) => { Taro.showModal({ - title: '使用礼品卡', + title: '使用水票', content: `确定要使用"${gift.name}"吗?`, success: (res) => { if (res.confirm) { - // 跳转到礼品卡使用页面 + // 跳转到水票使用页面 Taro.navigateTo({ url: `/user/gift/use?id=${gift.id}` }) @@ -249,35 +249,35 @@ const GiftCardManage = () => { }) } - // 礼品卡点击事件 + // 水票点击事件 const handleGiftClick = (gift: GiftCardProps, index: number) => { console.log(gift.code) const originalGift = list[index] if (originalGift) { - // 显示礼品卡详情 + // 显示水票详情 handleGiftDetail(originalGift) } } - // 显示礼品卡详情 + // 显示水票详情 const handleGiftDetail = (gift: ShopGift) => { - // 跳转到礼品卡详情页 + // 跳转到水票详情页 Taro.navigateTo({ url: `/user/gift/detail?id=${gift.id}` }) } - // 加载礼品卡统计数据 + // 加载水票统计数据 // const loadGiftStats = async () => { // try { - // // 并行获取各状态的礼品卡数量 + // // 并行获取各状态的水票数量 // const [availableRes, usedRes, expiredRes] = await Promise.all([ // getUserGifts({ page: 1, limit: 1, useStatus: 0 }), // getUserGifts({ page: 1, limit: 1, useStatus: 1 }), // getUserGifts({ page: 1, limit: 1, useStatus: 2 }) // ]) // - // // 计算总价值(仅可用礼品卡) + // // 计算总价值(仅可用水票) // const availableGifts = await getUserGifts({ page: 1, limit: 100, useStatus: 0 }) // const totalValue = availableGifts?.list?.reduce((sum, gift) => { // return sum + parseFloat(gift.faceValue || '0') @@ -290,7 +290,7 @@ const GiftCardManage = () => { // totalValue // }) // } catch (error) { - // console.error('获取礼品卡统计失败:', error) + // console.error('获取水票统计失败:', error) // } // } @@ -300,21 +300,21 @@ const GiftCardManage = () => { // available: '0', // used: '1', // expired: '2', - // total: '0' // 总价值点击跳转到可用礼品卡 + // total: '0' // 总价值点击跳转到可用水票 // } // if (tabMap[type]) { // handleTabChange(tabMap[type]) // } // } - // 兑换礼品卡 + // 兑换水票 const handleRedeemGift = () => { Taro.navigateTo({ url: '/user/gift/redeem' }) } - // 扫码兑换礼品卡 + // 扫码兑换水票 const handleScanRedeem = () => { Taro.scanCode({ success: (res) => { @@ -377,14 +377,14 @@ const GiftCardManage = () => { > 扫码 - + {/*}*/} + {/* onClick={() => setShowGuide(true)}*/} + {/*>*/} + {/* 帮助*/} + {/**/} @@ -400,7 +400,7 @@ const GiftCardManage = () => { - {/* 礼品卡列表 */} + {/* 水票列表 */} { @@ -450,14 +450,14 @@ const GiftCardManage = () => { - 暂无未使用礼品卡 + 暂无未使用水票