package com.xiaopeng.api.model.operation; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; 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; /** *
* 优惠券管理 *
* * @author mitao * @since 2026-02-03 */ @Data @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @TableName("xp_coupon") @ApiModel(value="XpCoupon对象", description="优惠券管理") public class XpCoupon extends BaseModel { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.ASSIGN_ID) @JsonFormat(shape = JsonFormat.Shape.STRING) private Long id; @ApiModelProperty(value = "优惠券") private String couponName; @ApiModelProperty(value = "类型 1=抵扣 2=满减 3=抹零") private Integer couponType; @ApiModelProperty(value = "条件金额") private BigDecimal conditionalAmount; @ApiModelProperty(value = "金额") private BigDecimal amount; @ApiModelProperty(value = "抹零后金额,对应couponType=3") @Min(0)@Max(9999) private BigDecimal amount2; @ApiModelProperty(value = "折扣,对应couponType=2") @DecimalMin(value = "0.1", inclusive = true) @DecimalMax(value = "10", inclusive = true) private BigDecimal amount3; @ApiModelProperty(value = "描述") private String couponDescription; }