feat(admin): 从文章详情页面改为文章管理页面

- 修改页面配置,设置新的导航栏标题和样式
- 重新设计页面布局,增加搜索栏、文章列表和操作按钮
- 添加文章搜索、分页加载和删除功能
- 优化文章列表项的样式和交互
- 新增礼品卡相关API和组件
- 更新优惠券组件,增加到期提醒和筛选功能
This commit is contained in:
2025-08-13 10:11:57 +08:00
parent 0e457f66d8
commit a1cacc04e8
67 changed files with 6278 additions and 2816 deletions

View File

@@ -0,0 +1,115 @@
import type { PageParam } from '@/api/index';
/**
* 礼品卡
*/
export interface ShopGift {
// 礼品卡ID
id?: number;
// 礼品卡名称
name?: string;
// 礼品卡描述
description?: string;
// 礼品卡兑换码
code?: string;
// 关联商品ID
goodsId?: number;
// 商品名称
goodsName?: string;
// 商品图片
goodsImage?: string;
// 礼品卡面值
faceValue?: string;
// 礼品卡类型 (10实物礼品卡 20虚拟礼品卡 30服务礼品卡)
type?: number;
// 领取时间
takeTime?: string;
// 使用时间
useTime?: string;
// 过期时间
expireTime?: string;
// 有效期天数
validDays?: number;
// 操作人
operatorUserId?: number;
// 是否展示
isShow?: string;
// 状态 (0未使用 1已使用 2已过期 3已失效)
status?: number;
// 使用状态 (0可用 1已使用 2已过期)
useStatus?: number;
// 备注
comments?: string;
// 使用说明
instructions?: string;
// 排序号
sortNumber?: number;
// 拥有者用户ID
userId?: number;
// 发放者用户ID
issuerUserId?: number;
// 是否删除, 0否, 1是
deleted?: number;
// 租户id
tenantId?: number;
// 创建时间
createTime?: string;
// 修改时间
updateTime?: string;
// 数量
num?: number;
// 已发放数量
issuedCount?: number;
// 总发放数量
totalCount?: number;
// 使用门店/地址
useLocation?: string;
// 客服联系方式
contactInfo?: string;
}
/**
* 礼品卡搜索条件
*/
export interface ShopGiftParam extends PageParam {
id?: number;
keywords?: string;
// 礼品卡类型筛选
type?: number;
// 状态筛选
status?: number;
// 使用状态筛选
useStatus?: number;
// 用户ID筛选
userId?: number;
// 商品ID筛选
goodsId?: number;
// 是否过期筛选
isExpired?: boolean;
// 排序字段
sortBy?: 'createTime' | 'expireTime' | 'faceValue' | 'useTime';
// 排序方向
sortOrder?: 'asc' | 'desc';
}
/**
* 礼品卡兑换参数
*/
export interface GiftRedeemParam {
// 兑换码
code: string;
// 用户ID
userId?: number;
}
/**
* 礼品卡使用参数
*/
export interface GiftUseParam {
// 礼品卡ID
giftId: number;
// 使用地址/门店
useLocation?: string;
// 使用备注
useNote?: string;
}