package com.qs.mp.user.domain; import com.alibaba.fastjson.annotation.JSONField; import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.Version; import com.qs.mp.common.enums.UserCouponStatusEnum; import java.io.Serializable; import java.util.Date; import lombok.Data; /** * @describe 用户的优惠券实体类 * @auther quanshu * @create 2022-03-07 20:45:43 */ @TableName("mp_user_coupon") @Data public class UserCoupon implements Serializable { private static final long serialVersionUID = 1L; /** * 主键 */ @TableId(value = "id", type = IdType.INPUT) private String id; /** * 用户ID */ @TableField("user_id") private Long userId; /** * 核销码 */ @TableField("verify_code") private String verifyCode; /** * 优惠券ID */ @TableField("coupon_id") private String couponId; /** * 生效日 */ @TableField("valid_start") private Date validStart; /** * 到期日 */ @TableField("valid_end") private Date validEnd; /** * 适用范围说明 */ @TableField("use_area_desc") private String useAreaDesc; /** * 使用订单ID */ @TableField("order_id") private String orderId; /** * 核销时间 */ @TableField("verify_time") private Date verifyTime; /** * 状态;1未使用 2已使用 3已过期 */ @TableField("status") @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString) private UserCouponStatusEnum status; /** * 创建时间 */ @TableField("created_time") private Date createdTime; /** * 更新时间 */ @TableField("updated_time") @Version private Date updatedTime; }