package cn.pluss.platform.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 用户角色表
 * </p>
 *
 * @author bzg
 * @since 2022-01-13
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tb_pluss_user_role")
public class UserRole implements Serializable {

    private static final long serialVersionUID = 1L;

    public static int DEFAULT_VALID_OPEN = 1;

    public static int DEFAULT_VALID_CLOSE = -1;

    /**
     * id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;


    /**
     * 角色名称
     */
    @TableField(value = "roleName",whereStrategy = FieldStrategy.NOT_EMPTY,condition = SqlCondition.LIKE)
    private String roleName;


    /**
     * 角色Code
     */
    @TableField("roleCode")
    private String roleCode;


    /**
     * 创建时间
     */
    @TableField(value = "createTime", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 创建时间 开始时间
     */
    @TableField(exist = false, condition = "createTime &gt; #{%s}")
    private Date createTimeStart;

    /**
     * 创建时间 截止时间
     */
    @TableField(exist = false, condition = "createTime &lt; #{%s}")
    private Date createTimeEnd;

    /**
     * 有效商户开关配置 1：开启 -1：关闭
     */
    @TableField("validFlag")
    private Integer validFlag;

    /**
     * 有效交易金额
     */
    @TableField("validTransAmt")
    private BigDecimal validTransAmt;

    /**
     * 有效交易笔数
     */
    @TableField("validTransNum")
    private Integer validTransNum;

    /**
     * 最少数量
     */
    @TableField("minNum")
    private Integer minNum;

    /**
     * 开启时间
     */
    @TableField("openTime")
    private Date openTime;

    /**
     * 保护天数 新进商户默认保护天数
     */
    @TableField("protectDayNum")
    private Integer protectDayNum;

}