coupon.ts 1.2 KB

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