import { get, post, put, del } from '@/utils/request'; export interface CouponQueryParams { page?: number; pageSize?: number; name?: string; type?: number; status?: number; } export interface CouponListResponse { list: any[]; total: number; pageSize: number; currentPage: number; } export function getCouponList(params: CouponQueryParams): Promise { return get('/marketing/coupon/list', params); } export function getCouponById(id: number): Promise { return get('/marketing/coupon/' + id); } export function createCoupon(data: any): Promise { return post('/marketing/coupon', data); } export function updateCouponStatus(id: number, status: number): Promise { return put('/marketing/coupon/' + id + '/status?status=' + status); } export function deleteCoupon(id: number): Promise { return del('/marketing/coupon/' + id); } export function distributeCoupon(data: { templateId: number; targetType: number; userIds?: number[] }): Promise { return post('/marketing/coupon/distribute', data); } export function getCouponStatistics(id: number): Promise { return get('/marketing/coupon/' + id + '/statistics'); } export function getAvailableCoupons(): Promise { return get('/marketing/coupon/available'); }