| import request from '@/config/axios' | 
| import { Sku, Spu } from '@/api/mall/product/spu' | 
|   | 
| export interface SeckillActivityVO { | 
|   id?: number | 
|   spuId?: number | 
|   name?: string | 
|   status?: number | 
|   remark?: string | 
|   startTime?: Date | 
|   endTime?: Date | 
|   sort?: number | 
|   configIds?: string | 
|   orderCount?: number | 
|   userCount?: number | 
|   totalPrice?: number | 
|   totalLimitCount?: number | 
|   singleLimitCount?: number | 
|   stock?: number | 
|   totalStock?: number | 
|   products?: SeckillProductVO[] | 
| } | 
|   | 
| // 秒杀活动所需属性 | 
| export interface SeckillProductVO { | 
|   skuId: number | 
|   seckillPrice: number | 
|   stock: number | 
| } | 
|   | 
| // 扩展 Sku 配置 | 
| export type SkuExtension = Sku & { | 
|   productConfig: SeckillProductVO | 
| } | 
|   | 
| export interface SpuExtension extends Spu { | 
|   skus: SkuExtension[] // 重写类型 | 
| } | 
|   | 
| // 查询秒杀活动列表 | 
| export const getSeckillActivityPage = async (params) => { | 
|   return await request.get({ url: '/promotion/seckill-activity/page', params }) | 
| } | 
|   | 
| // 查询秒杀活动详情 | 
| export const getSeckillActivity = async (id: number) => { | 
|   return await request.get({ url: '/promotion/seckill-activity/get?id=' + id }) | 
| } | 
|   | 
| // 新增秒杀活动 | 
| export const createSeckillActivity = async (data: SeckillActivityVO) => { | 
|   return await request.post({ url: '/promotion/seckill-activity/create', data }) | 
| } | 
|   | 
| // 修改秒杀活动 | 
| export const updateSeckillActivity = async (data: SeckillActivityVO) => { | 
|   return await request.put({ url: '/promotion/seckill-activity/update', data }) | 
| } | 
|   | 
| // 关闭秒杀活动 | 
| export const closeSeckillActivity = async (id: number) => { | 
|   return await request.put({ url: '/promotion/seckill-activity/close?id=' + id }) | 
| } | 
|   | 
| // 删除秒杀活动 | 
| export const deleteSeckillActivity = async (id: number) => { | 
|   return await request.delete({ url: '/promotion/seckill-activity/delete?id=' + id }) | 
| } |