import request from '@/utils/request'; import type { ApiResult, PageResult } from '@/api/index'; import type { UserCoupon, UserCouponParam } from './model'; /** * 分页查询用户优惠券 */ export async function pageUserCoupon(params: UserCouponParam) { const res = await request.get>>( '/sys/user-coupon/page', params ); if (res.code === 0) { return res.data; } return Promise.reject(new Error(res.message)); } /** * 查询用户优惠券列表 */ export async function listUserCoupon(params?: UserCouponParam) { const res = await request.get>( '/sys/user-coupon', params ); if (res.code === 0 && res.data) { return res.data; } return Promise.reject(new Error(res.message)); } /** * 获取用户优惠券统计 */ export async function getUserCouponCount(userId: number) { const res = await request.get>( '/sys/user-coupon/count', { userId } ); if (res.code === 0 && res.data) { return res.data; } return Promise.reject(new Error(res.message)); } /** * 根据id查询用户优惠券 */ export async function getUserCoupon(id: number) { const res = await request.get>( '/sys/user-coupon/' + id ); if (res.code === 0 && res.data) { return res.data; } return Promise.reject(new Error(res.message)); } /** * 使用优惠券 */ export async function useCoupon(couponId: number, orderId: number) { const res = await request.put>( '/sys/user-coupon/use', { couponId, orderId } ); if (res.code === 0) { return res.message; } return Promise.reject(new Error(res.message)); }