package com.dsh.activity.entity;
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.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
*
* 玩湃惠民卡
*
*
* @author jqs
* @since 2023-07-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_huimin_card")
public class THuiminCard extends Model {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 玩湃惠民卡名称
*/
@TableField("huiMinName")
@ApiModelProperty(value = "玩湃惠民卡名称")
private String huiMinName;
/**
*玩湃惠民卡类型1年度2年内
*/
@ApiModelProperty(value = "玩湃惠民卡类型1年度2年内")
@TableField("huiMinType")
private Integer huiMinType;
/**
*售卖金额
*/
@ApiModelProperty(value = "售卖金额")
@TableField("salesMoney")
private BigDecimal salesMoney;
/**
*已购买封面
*/
@ApiModelProperty(value = "已购买封面")
@TableField("buyCover")
private String buyCover;
/**
*未购买封面
*/
@ApiModelProperty(value = "未购买封面")
@TableField("unBuyCover")
private String unBuyCover;
/**
*已购买使用说明
*/
@TableField("buyRemark")
@ApiModelProperty(value = "已购买使用说明")
private String buyRemark;
/**
*使用期限说明
*/
@ApiModelProperty(value = "使用期限说明")
@TableField("unBuyRemark")
private String unBuyRemark;
/**
*发放数量 为空表示不限
*/
@ApiModelProperty(value = "发放数量 为空表示不限")
@TableField("grantCount")
private Integer grantCount;
/**
* 限购数量 为空表示不限
*/
@ApiModelProperty(value = "限购数量 为空表示不限")
@TableField("limitCount")
private Integer limitCount;
/**
*轮播图 逗号分隔
*/
@ApiModelProperty(value = "轮播图 逗号分隔")
@TableField("banner")
private String banner;
/**
*有效期结束时间 不填表示永久
*/
@TableField("endTime")
@ApiModelProperty(value = "有效期结束时间 不填表示永久")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;
/**
*有效期开始时间 不填表示永久
*/
@TableField("startTime")
@ApiModelProperty(value = "有效期开始时间 不填表示永久")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
/**
*可使用时间段,周,多个逗号分隔
*/
@ApiModelProperty(value = "可使用时间段,周,多个逗号分隔")
@TableField("useWeeks")
private String useWeeks;
/**
*可使用时间段,时分秒,多个逗号分隔
*/
@ApiModelProperty(value = "可使用时间段,时分秒,多个逗号分隔,跨周分号分隔")
@TableField("useTimes")
private String useTimes;
/**
*不可用时间段,yyyy-MM-dd HH:mm:ss,多个逗号分隔
*/
@TableField("unUseTimes")
@ApiModelProperty(value = "不可用时间段,yyyy-MM-dd HH:mm:ss,多个逗号分隔")
private String unUseTimes;
/**
*使用范围1门店2场地
*/
@TableField("useScope")
@ApiModelProperty(value = "使用范围1门店2场地")
private Integer useScope;
/**
*根据适用范围,存储门店id或场地id,多个逗号分隔
*/
@ApiModelProperty(value = "根据适用范围,存储门店id或场地id,多个逗号分隔")
@TableField("useIds")
private String useIds;
/**
*玩湃惠民卡介绍
*/
@ApiModelProperty(value = "玩湃惠民卡介绍")
@TableField("introduce")
private String introduce;
/**
*排序
*/
@ApiModelProperty(value = "排序")
@TableField("sort")
private Integer sort;
/**
*门店id 当使用范围为场地的时候存储门店id
*/
@TableField("storeIds")
private String storeIds;
/**
*运营商id
*/
@ApiModelProperty(value = "运营商id")
@TableField("operatorId")
private Integer operatorId;
/**
*状态 1已上架 2已下架 3已删除
*/
@ApiModelProperty(value = "状态 1已上架 2已下架 3已删除 ")
@TableField("status")
private Integer status;
@ApiModelProperty("是否购买 0否1是")
@TableField(exist = false)
private Integer isBuy;
@ApiModelProperty("立即购买页面的协议列表")
@TableField(exist = false)
private List agreementSettings;
/**
* 状态: 1-未开始 2-已开始 3-已结束
*/
@TableField(exist = false)
private Integer flag;
/**
* 已购数量
*/
@TableField(exist = false)
private Integer buyCount;
@TableField(exist = false)
private Long current;
@TableField(exist = false)
private Long size;
/**
* 玩湃惠民卡状态:1未开始 2已开始 3已结束
*/
@TableField(exist = false)
private Integer huiMinStatus;
/**
* 1=平台,2=城市管理员,3=门店
*/
@TableField(exist = false)
private Integer objectType;
@TableField(exist = false)
private Integer objectId;
@Override
protected Serializable pkVal() {
return this.id;
}
}