package com.xiaopeng.api.model.account;
|
|
import com.baomidou.mybatisplus.annotation.*;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.xiaopeng.common.core.web.domain.BaseModel;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import lombok.EqualsAndHashCode;
|
import lombok.experimental.Accessors;
|
|
import javax.validation.constraints.DecimalMax;
|
import javax.validation.constraints.DecimalMin;
|
import javax.validation.constraints.Max;
|
import javax.validation.constraints.Min;
|
import java.math.BigDecimal;
|
import java.time.LocalDateTime;
|
|
/**
|
* <p>
|
* 用户优惠券
|
* </p>
|
*
|
* @author mitao
|
* @since 2026-02-03
|
*/
|
@Data
|
@EqualsAndHashCode(callSuper = false)
|
@Accessors(chain = true)
|
@TableName("xp_app_user_coupon")
|
@ApiModel(value="XpAppUserCoupon对象", description="用户优惠券")
|
public class XpAppUserCoupon extends BaseModel {
|
|
private static final long serialVersionUID = 1L;
|
|
@TableId(value = "id", type = IdType.ASSIGN_ID)
|
private Long id;
|
|
@ApiModelProperty(value = "满减金额")
|
@Min(0)@Max(9999)
|
private BigDecimal fullMoney;
|
|
@ApiModelProperty(value = "满减面额,对应couponType=1")
|
@Min(0)@Max(9999)
|
private BigDecimal money;
|
|
@ApiModelProperty(value = "抹零后金额,对应couponType=3")
|
@Min(0)@Max(9999)
|
@TableField(exist = false)
|
private BigDecimal money3;
|
|
@ApiModelProperty(value = "折扣,对应couponType=2")
|
@DecimalMin(value = "0.1", inclusive = true)
|
@DecimalMax(value = "10", inclusive = true)
|
@TableField(exist = false)
|
private BigDecimal money2;
|
|
@ApiModelProperty(value = "过期时间")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
private LocalDateTime expirationTime;
|
|
@ApiModelProperty(value = "使用时间")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
private LocalDateTime useTime;
|
|
@ApiModelProperty(value = "状态(1=未使用,2=已使用,3=已过期 0=待领取 4=占用中)")
|
private Integer status;
|
|
@ApiModelProperty(value = "优惠券类型(1=抵扣,2=满减,3=抹零)")
|
private Integer couponType;
|
|
@ApiModelProperty(value = "用户id")
|
private Long appUserId;
|
|
|
@ApiModelProperty(value = "手机号")
|
@TableField(exist = false)
|
private String phone;
|
|
@ApiModelProperty(value = "优惠券发放id")
|
private Long couponId;
|
|
@ApiModelProperty(value = "活动id")
|
private Long activityId;
|
|
@ApiModelProperty(value = "活动类型(1=注册,2=邀请,3=红包)")
|
private Integer activityType;
|
|
@ApiModelProperty(value = "优惠券名称(快照)")
|
private String couponName;
|
|
|
@ApiModelProperty(value = "城市id集合")
|
private String openCityId;
|
|
|
@ApiModelProperty(value = "使用时间规则")
|
private String timeJson;
|
}
|