
package com.tmerclub.cloud.user.vo;

import com.tmerclub.cloud.common.vo.BaseVO;
import io.swagger.v3.oas.annotations.media.Schema;

import java.io.Serial;
import java.io.Serializable;

/**
 * 用户等级记录VO
 *
 * @author tmerclub
 * @date 2021-05-14 11:04:52
 */
public class UserLevelLogVO extends BaseVO implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;
    @Schema(description = "等级记录表")
    private Long levelLogId;

    @Schema(description = "用户id")
    private String userId;

    @Schema(description = "用户头像")
    private String nickName;

    @Schema(description = "用户头像")
    private String pic;

    @Schema(description = "变更类型 -1降级 0不变 1升级")
    private Integer levelIoType;

    @Schema(description = "等级变更原因1.成长值不足 2.成长值足够 3.购买会员 4.续费会员 5.会员到期")
    private Integer levelChangeReason;

    @Schema(description = "变更之前等级")
    private Integer beforeLevel;

    @Schema(description = "变更之前的等级类型  0:普通会员 1:付费会员")
    private Integer beforeLevelType;

    @Schema(description = "变更之后的等级")
    private Integer afterLevel;

    @Schema(description = "变更之后的等级类型 0:普通会员 1:付费会员")
    private Integer afterLevelType;

    @Schema(description = "付费会员等级名称")
    private String levelName;

    @Schema(description = "期数类型(0:月,1:季,2:年)")
    private Integer termType;

    @Schema(description = "支付单号")
    private Long payId;

    @Schema(description = "支付类型")
    private Integer isPayed;

    @Schema(description = "是否支付1已支付0未支付")
    private Integer payType;


    @Schema(description = "支付金额")
    private Long payAmount;

    public String getLevelName() {
        return levelName;
    }

    public void setLevelName(String levelName) {
        this.levelName = levelName;
    }

    public Integer getTermType() {
        return termType;
    }

    public void setTermType(Integer termType) {
        this.termType = termType;
    }

    public Long getLevelLogId() {
        return levelLogId;
    }

    public void setLevelLogId(Long levelLogId) {
        this.levelLogId = levelLogId;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public Integer getLevelIoType() {
        return levelIoType;
    }

    public void setLevelIoType(Integer levelIoType) {
        this.levelIoType = levelIoType;
    }

    public Integer getLevelChangeReason() {
        return levelChangeReason;
    }

    public void setLevelChangeReason(Integer levelChangeReason) {
        this.levelChangeReason = levelChangeReason;
    }

    public Integer getBeforeLevel() {
        return beforeLevel;
    }

    public void setBeforeLevel(Integer beforeLevel) {
        this.beforeLevel = beforeLevel;
    }

    public Integer getBeforeLevelType() {
        return beforeLevelType;
    }

    public void setBeforeLevelType(Integer beforeLevelType) {
        this.beforeLevelType = beforeLevelType;
    }

    public Integer getAfterLevel() {
        return afterLevel;
    }

    public void setAfterLevel(Integer afterLevel) {
        this.afterLevel = afterLevel;
    }

    public Integer getAfterLevelType() {
        return afterLevelType;
    }

    public void setAfterLevelType(Integer afterLevelType) {
        this.afterLevelType = afterLevelType;
    }

    public Long getPayId() {
        return payId;
    }

    public void setPayId(Long payId) {
        this.payId = payId;
    }

    public Integer getIsPayed() {
        return isPayed;
    }

    public void setIsPayed(Integer isPayed) {
        this.isPayed = isPayed;
    }

    public Long getPayAmount() {
        return payAmount;
    }

    public void setPayAmount(Long payAmount) {
        this.payAmount = payAmount;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getPic() {
        return pic;
    }

    public void setPic(String pic) {
        this.pic = pic;
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Integer getPayType() {
        return payType;
    }

    public void setPayType(Integer payType) {
        this.payType = payType;
    }

    @Override
    public String toString() {
        return "UserLevelLogVO{" +
                "levelLogId=" + levelLogId +
                ", userId='" + userId + '\'' +
                ", nickName='" + nickName + '\'' +
                ", pic='" + pic + '\'' +
                ", levelIoType=" + levelIoType +
                ", levelChangeReason=" + levelChangeReason +
                ", beforeLevel=" + beforeLevel +
                ", beforeLevelType=" + beforeLevelType +
                ", afterLevel=" + afterLevel +
                ", afterLevelType=" + afterLevelType +
                ", levelName='" + levelName + '\'' +
                ", termType=" + termType +
                ", payId=" + payId +
                ", isPayed=" + isPayed +
                ", payType=" + payType +
                ", payAmount=" + payAmount +
                '}';
    }
}
