Coupon.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. package com.qs.mp.admin.domain;
  2. import com.alibaba.fastjson.annotation.JSONField;
  3. import com.alibaba.fastjson.serializer.SerializerFeature;
  4. import com.baomidou.mybatisplus.annotation.IdType;
  5. import com.baomidou.mybatisplus.annotation.TableField;
  6. import com.baomidou.mybatisplus.annotation.TableId;
  7. import com.baomidou.mybatisplus.annotation.TableName;
  8. import com.qs.mp.common.enums.CouponDiscountTypeEnum;
  9. import com.qs.mp.common.enums.CouponDistributeTypeEnum;
  10. import com.qs.mp.common.enums.CouponStatusEnum;
  11. import com.qs.mp.common.enums.CouponTypeEnum;
  12. import com.qs.mp.common.enums.CouponUseAreaEnum;
  13. import java.io.Serializable;
  14. import java.util.Date;
  15. import lombok.Data;
  16. /**
  17. * @describe 优惠券实体类
  18. * @auther quanshu
  19. * @create 2022-03-07 20:43:44
  20. */
  21. @TableName("mp_coupon")
  22. @Data
  23. public class Coupon implements Serializable {
  24. private static final long serialVersionUID = 1L;
  25. /**
  26. * 主键
  27. */
  28. @TableId(value = "coupon_id", type = IdType.INPUT)
  29. private String couponId;
  30. /**
  31. * 标题
  32. */
  33. @TableField("title")
  34. private String title;
  35. /**
  36. * 类型;1用户盲票购买优惠券、2用户门店消费优惠券、3经销商盲票采购优惠券
  37. */
  38. @TableField("type")
  39. @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
  40. private CouponTypeEnum type;
  41. /**
  42. * 图片
  43. */
  44. @TableField("pic_url")
  45. private String picUrl;
  46. /**
  47. * 使用说明
  48. */
  49. @TableField("description")
  50. private String description;
  51. /**
  52. * 优惠类型;1代金券、2折扣券、3兑换券
  53. */
  54. @TableField("discount_type")
  55. @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
  56. private CouponDiscountTypeEnum discountType;
  57. /**
  58. * 优惠金额(比例)
  59. */
  60. @TableField("discount")
  61. private Integer discount;
  62. /**
  63. * 最低消费金额
  64. */
  65. @TableField("min_order_amt")
  66. private Integer minOrderAmt;
  67. /**
  68. * 状态;off下架 on正常
  69. */
  70. @TableField("status")
  71. @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
  72. private CouponStatusEnum status;
  73. /**
  74. * 使用范围;0通用 1生成券时指定范围 2发放时动态指定范围
  75. */
  76. @TableField("use_area")
  77. @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
  78. private CouponUseAreaEnum useArea;
  79. /**
  80. * 发放方式;1系统发放 2用户主动领取
  81. */
  82. @TableField("distribute_type")
  83. @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
  84. private CouponDistributeTypeEnum distributeType;
  85. /**
  86. * 叠加使用;0不允许 1允许
  87. */
  88. @TableField("composite_use")
  89. private Integer compositeUse;
  90. /**
  91. * 有效期天数;从领券后开始多少天有效,0则使用绝对有效期
  92. */
  93. @TableField("due_days")
  94. private Integer dueDays;
  95. /**
  96. * 有效期开始日
  97. */
  98. @TableField("valid_start")
  99. private Date validStart;
  100. /**
  101. * 有效期结束日
  102. */
  103. @TableField("valid_end")
  104. private Date validEnd;
  105. /**
  106. * 总量;总量为0代表不限量
  107. */
  108. @TableField("quantity")
  109. private Integer quantity;
  110. /**
  111. * 已发放量
  112. */
  113. @TableField("distribute_qty")
  114. private Integer distributeQty;
  115. /**
  116. * 创建时间
  117. */
  118. @TableField("created_time")
  119. private Date createdTime;
  120. /**
  121. * 更新时间
  122. */
  123. @TableField("updated_time")
  124. private Date updatedTime;
  125. }