Просмотр исходного кода

feat(backend): Coupon实体扩展会员券字段+新增CouponGrantLog实体与Mapper

Xiaogang Liao 1 месяц назад
Родитель
Сommit
5c965154f2

+ 21 - 0
cfc-backend/src/main/java/com/etotem/cfc/entity/Coupon.java

@@ -25,6 +25,27 @@ public class Coupon implements Serializable {
     /** 最低消费,单位:分 */
     private Integer minSpend;
 
+    /** 折扣券折扣率,千分比 (9000 = 9折) */
+    private Integer discountRate;
+
+    /** 绑定商品ID,NULL=全场通用 */
+    private Long productId;
+
+    /** 积分兑换价,0=不可积分兑换 */
+    private Integer pointsPrice;
+
+    /** 发放规则: JOIN/PERIODIC/POPULATION,NULL=不自动发放 */
+    private String grantType;
+
+    /** 发放规则对应会员等级 (FREE/FAMILY/PREMIUM) */
+    private String grantLevelCode;
+
+    /** PERIODIC周期: MONTHLY/QUARTERLY */
+    private String grantPeriod;
+
+    /** 每次发放数量 */
+    private Integer grantQuantity;
+
     /** 适用范围: ALL / MEMBERSHIP 等 */
     private String applicableTo;
 

+ 34 - 0
cfc-backend/src/main/java/com/etotem/cfc/entity/CouponGrantLog.java

@@ -0,0 +1,34 @@
+package com.etotem.cfc.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("coupon_grant_log")
+public class CouponGrantLog implements Serializable {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    private Long userId;
+
+    private Long couponId;
+
+    /** JOIN/PERIODIC/POPULATION/EXCHANGE */
+    private String grantType;
+
+    /** 周期标识(YYYY-MM或YYYY-Qn), PERIODIC防重用 */
+    private String period;
+
+    private Integer quantity;
+
+    /** 触发来源(订单号/成员ID等) */
+    private String source;
+
+    private Date createdAt;
+}

+ 7 - 0
cfc-backend/src/main/java/com/etotem/cfc/mapper/CouponGrantLogMapper.java

@@ -0,0 +1,7 @@
+package com.etotem.cfc.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.etotem.cfc.entity.CouponGrantLog;
+
+public interface CouponGrantLogMapper extends BaseMapper<CouponGrantLog> {
+}