package com.xiaopeng.account.service;
|
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.xiaopeng.account.model.dto.ReceiveCouponDto;
|
import com.xiaopeng.account.model.dto.SendCouponDto;
|
import com.xiaopeng.account.model.query.XpUserCouponListQuery;
|
import com.xiaopeng.account.model.vo.XpAppUserCouponTotalVo;
|
import com.xiaopeng.account.model.vo.XpAppUserCouponVo;
|
import com.xiaopeng.api.model.account.XpAppUserCoupon;
|
import com.xiaopeng.common.core.domain.R;
|
|
import java.util.List;
|
import java.util.concurrent.CompletableFuture;
|
|
/**
|
* <p>
|
* 用户优惠券 服务类
|
* </p>
|
*
|
* @author mitao
|
* @since 2026-02-03
|
*/
|
public interface IXpAppUserCouponService extends IService<XpAppUserCoupon> {
|
|
/**
|
* 获取用户优惠券列表
|
* @param query
|
* @param uid
|
* @return
|
*/
|
XpAppUserCouponVo userCouponList(XpUserCouponListQuery query, String uid);
|
|
/**+
|
* 获取用户优惠券数量total
|
* @param uid
|
* @return
|
*/
|
XpAppUserCouponTotalVo userCouponTotal(String uid);
|
|
/**
|
* 领取优惠券
|
* @param dto
|
* @param uid
|
* @return
|
*/
|
boolean receive(ReceiveCouponDto dto, String uid);
|
|
/**
|
* 根据时间规则筛选出优惠券
|
* @param couponList
|
* @return
|
*/
|
List<XpAppUserCoupon> timeRule(List<XpAppUserCoupon> couponList);
|
|
|
/**
|
* 发送优惠券
|
*
|
* @param dto
|
* @return
|
*/
|
CompletableFuture<R<String>> send(SendCouponDto dto);
|
|
}
|