package com.sundot.airport.exam.logic.manage.model.params;

import com.sundot.airport.exam.logic.manage.model.params.sub.ExamCertRatingParam;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * <b>功能名：</b>ExamAddParam<br>
 * <b>说明：</b> 考试管理表添加请求参数 <br>
 * <b>著作权：</b> Copyright (C) 2021 HUIFANEDU  CORPORATION<br>
 * <b>修改履历：
 *
 * @author 2021-06-23 liangxiao
 */
public class ExamAddParam {

    /**
     * 考试名称
     */
    @NotBlank(message = "考试名称不能为空")
    private String exName;

    /**
     * 背景图片资源
     */
   // @NotBlank(message = "背景图片不能为空")
    private String exBgImg;

    /**
     * 详情介绍图片资源
     */
    //@NotBlank(message = "详情介绍图片不能为空")
    private String exDetailImg;

    /**
     * 考试时间，0表示不限制（单位：秒）
     */
    @NotNull(message = "考试时间不能为空")
    private Integer exExamTime;

    /**
     * 考试次数，0表示不限制
     */
    @NotNull(message = "考试次数不能为空")
    private Integer exExamCount;

    /**
     * 考试后是否可见答案
     */
    @NotNull(message = "考试后是否可见答案不能为空")
    private Boolean exEnableAns;

    /**
     * 是否启用证书
     */
    @NotNull(message = "是否启用证书不能为空")
    private Boolean exEnableCert;

    /**
     * 证书发放门槛分数
     */
    private Integer exCertTh;

    /**
     * 证书名称
     */
    private String exCertName;

    /**
     * 当前证书背景图业务id
     */
    private String piId;

    /**
     * 当前证书背景资源信息
     */
    private String exCertBgImg;

    /**
     * 证书的二维码图片
     */
    private String exCertQrCode;

    /**
     * 证书的分享语
     */
    private String exCertShareRemark;

    /**
     * 试卷表业务主键
     */
    @NotBlank(message = "考试业务id不能为空")
    private String tpId;

    /**
     * 证书点评列表
     */
    private List<ExamCertRatingParam> certRatingList;

    @Override
    public String toString() {
        return "ExamAddParam{" +
                "exName='" + exName + '\'' +
                ", exBgImg='" + exBgImg + '\'' +
                ", exDetailImg='" + exDetailImg + '\'' +
                ", exExamTime=" + exExamTime +
                ", exExamCount=" + exExamCount +
                ", exEnableAns=" + exEnableAns +
                ", exEnableCert=" + exEnableCert +
                ", exCertTh=" + exCertTh +
                ", exCertName='" + exCertName + '\'' +
                ", piId='" + piId + '\'' +
                ", exCertBgImg='" + exCertBgImg + '\'' +
                ", exCertQrCode='" + exCertQrCode + '\'' +
                ", exCertShareRemark='" + exCertShareRemark + '\'' +
                ", tpId='" + tpId + '\'' +
                ", certRatingList=" + certRatingList +
                '}';
    }

    public String getExName() {
        return exName;
    }

    public void setExName(String exName) {
        this.exName = exName;
    }

    public String getExBgImg() {
        return exBgImg;
    }

    public void setExBgImg(String exBgImg) {
        this.exBgImg = exBgImg;
    }

    public String getExDetailImg() {
        return exDetailImg;
    }

    public void setExDetailImg(String exDetailImg) {
        this.exDetailImg = exDetailImg;
    }

    public Integer getExExamTime() {
        return exExamTime;
    }

    public void setExExamTime(Integer exExamTime) {
        this.exExamTime = exExamTime;
    }

    public Integer getExExamCount() {
        return exExamCount;
    }

    public void setExExamCount(Integer exExamCount) {
        this.exExamCount = exExamCount;
    }

    public Boolean getExEnableAns() {
        return exEnableAns;
    }

    public void setExEnableAns(Boolean exEnableAns) {
        this.exEnableAns = exEnableAns;
    }

    public Boolean getExEnableCert() {
        return exEnableCert;
    }

    public void setExEnableCert(Boolean exEnableCert) {
        this.exEnableCert = exEnableCert;
    }

    public Integer getExCertTh() {
        return exCertTh;
    }

    public void setExCertTh(Integer exCertTh) {
        this.exCertTh = exCertTh;
    }

    public String getExCertName() {
        return exCertName;
    }

    public void setExCertName(String exCertName) {
        this.exCertName = exCertName;
    }

    public String getPiId() {
        return piId;
    }

    public void setPiId(String piId) {
        this.piId = piId;
    }

    public String getExCertBgImg() {
        return exCertBgImg;
    }

    public void setExCertBgImg(String exCertBgImg) {
        this.exCertBgImg = exCertBgImg;
    }

    public String getExCertQrCode() {
        return exCertQrCode;
    }

    public void setExCertQrCode(String exCertQrCode) {
        this.exCertQrCode = exCertQrCode;
    }

    public String getExCertShareRemark() {
        return exCertShareRemark;
    }

    public void setExCertShareRemark(String exCertShareRemark) {
        this.exCertShareRemark = exCertShareRemark;
    }

    public String getTpId() {
        return tpId;
    }

    public void setTpId(String tpId) {
        this.tpId = tpId;
    }

    public List<ExamCertRatingParam> getCertRatingList() {
        return certRatingList;
    }

    public void setCertRatingList(List<ExamCertRatingParam> certRatingList) {
        this.certRatingList = certRatingList;
    }
}
