【代码优化】商城: 满减送活动优惠券相关

This commit is contained in:
puhui999
2024-08-30 14:58:22 +08:00
parent d60374d646
commit 806c828bb5
16 changed files with 136 additions and 89 deletions

View File

@@ -5,7 +5,7 @@ import cn.iocoder.yudao.module.promotion.api.coupon.dto.CouponUseReqDTO;
import cn.iocoder.yudao.module.promotion.api.coupon.dto.CouponValidReqDTO;
import jakarta.validation.Valid;
import java.util.List;
import java.util.Map;
/**
* 优惠劵 API 接口
@@ -36,14 +36,20 @@ public interface CouponApi {
*/
CouponRespDTO validateCoupon(@Valid CouponValidReqDTO validReqDTO);
// TODO @puhui999Map<Long, Integer> 优惠劵 会不会好点。
/**
* 【管理员】给指定用户批量发送优惠券
*
* @param templateIds 优惠劵编号的数组
* @param counts 优惠券数量的数组
* @param giveCouponsMap key: 优惠劵编号value对应的优惠券数量
* @param userId 用户编号
*/
void takeCouponsByAdmin(List<Long> templateIds, List<Integer> counts, Long userId);
void takeCouponsByAdmin(Map<Long, Integer> giveCouponsMap, Long userId);
/**
* 【管理员】收回给指定用户批量发送优惠券
*
* @param giveCouponsMap key: 优惠劵编号value对应的优惠券数量
* @param userId 用户编号
*/
void takeBackCouponsByAdmin(Map<Long, Integer> giveCouponsMap, Long userId);
}

View File

@@ -8,6 +8,7 @@ import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
/**
* 满减送活动的匹配 Response DTO
@@ -98,13 +99,11 @@ public class RewardActivityMatchRespDTO {
*/
private Boolean giveCoupon;
/**
* 赠送的优惠劵编号的数组
* 赠送的优惠劵
*
* key: 优惠劵编号value对应的优惠券数量
*/
private List<Long> couponIds;
/**
* 赠送的优惠券数量的数组
*/
private List<Integer> couponCounts;
private Map<Long, Integer> giveCouponsMap;
}

View File

@@ -18,7 +18,7 @@ public enum CouponStatusEnum implements IntArrayValuable {
UNUSED(1, "未使用"),
USED(2, "已使用"),
EXPIRE(3, "已过期"),
;
INVALID(4, "已作废");
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(CouponStatusEnum::getStatus).toArray();