package com.miaxis.question.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.miaxis.common.annotation.Excel;
import com.miaxis.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.miaxis.common.core.domain.BaseBusinessEntity;
import lombok.Data;
/**
 * 题库对象 question_info
 *
 * @author miaxis
 * @date 2021-10-12
 */
@Data
@TableName("question_info")
@ApiModel(value = "QuestionInfo", description = "题库对象 question_info")
public class QuestionInfo extends BaseBusinessEntity{
    private static final long serialVersionUID = 1L;

    /**  主键 */
    @TableId(value = "id")
    @ApiModelProperty(value = " 主键")
    private Long id;

    /** 在所有题目中的序号 */
    @Excel(name = "在所有题目中的序号")
    @TableField("number")
    @ApiModelProperty(value = "在所有题目中的序号")
    private Long number;

    /** 正确答案 */
    @Excel(name = "正确答案")
    @TableField("answer")
    @ApiModelProperty(value = "正确答案")
    private String answer;

    /** 答案关键词 */
    @Excel(name = "答案关键词")
    @TableField("answerkeyword")
    @ApiModelProperty(value = "答案关键词")
    private String answerkeyword;

    /** 技巧讲解图片URL */
    @Excel(name = "技巧讲解图片URL")
    @TableField("explain_gif")
    @ApiModelProperty(value = "技巧讲解图片URL")
    private String explainGif;

    /** 技巧讲解说明 */
    @Excel(name = "技巧讲解说明")
    @TableField("explain_jq")
    @ApiModelProperty(value = "技巧讲解说明")
    private String explainJq;

    /** 官方解释 */
    @Excel(name = "官方解释")
    @TableField("explain_js")
    @ApiModelProperty(value = "官方解释")
    private String explainJs;

    /** 技巧讲解语音URL */
    @Excel(name = "技巧讲解语音URL")
    @TableField("explain_mp3")
    @ApiModelProperty(value = "技巧讲解语音URL")
    private String explainMp3;

    /** 题目图片URL */
    @Excel(name = "题目图片URL")
    @TableField("image")
    @ApiModelProperty(value = "题目图片URL")
    private String image;

    /** 题目图片URL2 */
    @Excel(name = "题目图片URL2")
    @TableField("image_ydt")
    @ApiModelProperty(value = "题目图片URL2")
    private String imageYdt;

    /** 题目 */
    @Excel(name = "题目")
    @TableField("issue")
    @ApiModelProperty(value = "题目")
    private String issue;

    /** 答案选项 */
    @Excel(name = "答案选项")
    @TableField("opts")
    @ApiModelProperty(value = "答案选项")
    private String opts;

    /** 答题技巧关键词 */
    @Excel(name = "答题技巧关键词")
    @TableField("skillkeyword")
    @ApiModelProperty(value = "答题技巧关键词")
    private String skillkeyword;

    /** 题目关键词 */
    @Excel(name = "题目关键词")
    @TableField("titlekeyword")
    @ApiModelProperty(value = "题目关键词")
    private String titlekeyword;

    /** 读题语音URL */
    @Excel(name = "读题语音URL")
    @TableField("issuemp3")
    @ApiModelProperty(value = "读题语音URL")
    private String issuemp3;

    /** 答案语音URL */
    @Excel(name = "答案语音URL")
    @TableField("answermp3")
    @ApiModelProperty(value = "答案语音URL")
    private String answermp3;

    /** 读题+答案语音URL */
    @Excel(name = "读题+答案语音URL")
    @TableField("explainjsmp3")
    @ApiModelProperty(value = "读题+答案语音URL")
    private String explainjsmp3;

    /** 是否是科目一题目 */
    @Excel(name = "是否是科目一题目")
    @TableField("subject_1")
    @ApiModelProperty(value = "是否是科目一题目")
    private String subject1;

    /** 是否是科目二题目 */
    @Excel(name = "是否是科目二题目")
    @TableField("subject_2")
    @ApiModelProperty(value = "是否是科目二题目")
    private String subject2;

    /** 是否是科目三题目 */
    @Excel(name = "是否是科目三题目")
    @TableField("subject_3")
    @ApiModelProperty(value = "是否是科目三题目")
    private String subject3;

    /** 是否是科目四题目 */
    @Excel(name = "是否是科目四题目")
    @TableField("subject_4")
    @ApiModelProperty(value = "是否是科目四题目")
    private String subject4;

    /** 是否是C1\C2\C3驾驶证题目 */
    @Excel(name = "是否是C1，C2，C3驾驶证题目")
    @TableField("lice_car")
    @ApiModelProperty(value = "是否是C1，C2，C3驾驶证题目")
    private String liceCar;

    /** 是否是A1\A3\B1驾驶证题目 */
    @Excel(name = "是否是A1，A3，B1驾驶证题目")
    @TableField("lice_bus")
    @ApiModelProperty(value = "是否是A1，A3，B1驾驶证题目")
    private String liceBus;

    /** 是否是A2\B2驾驶证题目 */
    @Excel(name = "是否是A2，B2驾驶证题目")
    @TableField("lice_truck")
    @ApiModelProperty(value = "是否是A2，B2驾驶证题目")
    private String liceTruck;

    /** 是否是D\E\F驾驶证题目 */
    @Excel(name = "是否是D，E，F驾驶证题目")
    @TableField("lice_moto")
    @ApiModelProperty(value = "是否是D，E，F驾驶证题目")
    private String liceMoto;

    /** 顺序练习分类（包含科一到科四） */
    @Excel(name = "顺序练习分类（包含科一到科四）", readConverterExp = "包=含科一到科四")
    @TableField("seque_issue")
    @ApiModelProperty(value = "顺序练习分类（包含科一到科四）")
    private String sequeIssue;

    /** 分类练习（包含科一到科四） */
    @Excel(name = "分类练习（包含科一到科四）", readConverterExp = "包=含科一到科四")
    @TableField("class_issue")
    @ApiModelProperty(value = "分类练习（包含科一到科四）")
    private String classIssue;

    /** 地方专题（包含科一到科四） */
    @Excel(name = "地方专题（包含科一到科四）", readConverterExp = "包=含科一到科四")
    @TableField("place_issue")
    @ApiModelProperty(value = "地方专题（包含科一到科四）")
    private String placeIssue;

    /** 精选题（包含科一到科四） */
    @Excel(name = "精选题（包含科一到科四）", readConverterExp = "包=含科一到科四")
    @TableField("excell_issue")
    @ApiModelProperty(value = "精选题（包含科一到科四）")
    private String excellIssue;

    /** 是否是仿真考试题目 */
    @Excel(name = "是否是仿真考试题目")
    @TableField("copy_issue")
    @ApiModelProperty(value = "是否是仿真考试题目")
    private String copyIssue;

    /** 是否是真实考场模拟题目 */
    @Excel(name = "是否是真实考场模拟题目")
    @TableField("mock_issue")
    @ApiModelProperty(value = "是否是真实考场模拟题目")
    private String mockIssue;

    /** 题目在顺序练习中所属的模块名称 */
    @Excel(name = "题目在顺序练习中所属的模块名称")
    @TableField("seque_issue_name")
    @ApiModelProperty(value = "题目在顺序练习中所属的模块名称")
    private String sequeIssueName;

    /** 题目在地方专题中所属的模块名称 */
    @Excel(name = "题目在地方专题中所属的模块名称")
    @TableField("place_issue_name")
    @ApiModelProperty(value = "题目在地方专题中所属的模块名称")
    private String placeIssueName;

    /** 题目在精选中所属的模块名称 */
    @Excel(name = "题目在精选中所属的模块名称")
    @TableField("excell_issue_name")
    @ApiModelProperty(value = "题目在精选中所属的模块名称")
    private String excellIssueName;

    /** 题目在分类中所属的模块名称 */
    @Excel(name = "题目在分类中所属的模块名称")
    @TableField("class_issue_name")
    @ApiModelProperty(value = "题目在分类中所属的模块名称")
    private String classIssueName;

    public void setId(Long id){
        this.id = id;
    }

    public Long getId(){
        return id;
    }
    public void setNumber(Long number){
        this.number = number;
    }

    public Long getNumber(){
        return number;
    }
    public void setAnswer(String answer){
        this.answer = answer;
    }

    public String getAnswer(){
        return answer;
    }
    public void setAnswerkeyword(String answerkeyword){
        this.answerkeyword = answerkeyword;
    }

    public String getAnswerkeyword(){
        return answerkeyword;
    }
    public void setExplainGif(String explainGif){
        this.explainGif = explainGif;
    }

    public String getExplainGif(){
        return explainGif;
    }
    public void setExplainJq(String explainJq){
        this.explainJq = explainJq;
    }

    public String getExplainJq(){
        return explainJq;
    }
    public void setExplainJs(String explainJs){
        this.explainJs = explainJs;
    }

    public String getExplainJs(){
        return explainJs;
    }
    public void setExplainMp3(String explainMp3){
        this.explainMp3 = explainMp3;
    }

    public String getExplainMp3(){
        return explainMp3;
    }
    public void setImage(String image){
        this.image = image;
    }

    public String getImage(){
        return image;
    }
    public void setImageYdt(String imageYdt){
        this.imageYdt = imageYdt;
    }

    public String getImageYdt(){
        return imageYdt;
    }
    public void setIssue(String issue){
        this.issue = issue;
    }

    public String getIssue(){
        return issue;
    }
    public void setOpts(String opts){
        this.opts = opts;
    }

    public String getOpts(){
        return opts;
    }
    public void setSkillkeyword(String skillkeyword){
        this.skillkeyword = skillkeyword;
    }

    public String getSkillkeyword(){
        return skillkeyword;
    }
    public void setTitlekeyword(String titlekeyword){
        this.titlekeyword = titlekeyword;
    }

    public String getTitlekeyword(){
        return titlekeyword;
    }
    public void setIssuemp3(String issuemp3){
        this.issuemp3 = issuemp3;
    }

    public String getIssuemp3(){
        return issuemp3;
    }
    public void setAnswermp3(String answermp3){
        this.answermp3 = answermp3;
    }

    public String getAnswermp3(){
        return answermp3;
    }
    public void setExplainjsmp3(String explainjsmp3){
        this.explainjsmp3 = explainjsmp3;
    }

    public String getExplainjsmp3(){
        return explainjsmp3;
    }
    public void setSubject1(String subject1){
        this.subject1 = subject1;
    }

    public String getSubject1(){
        return subject1;
    }
    public void setSubject2(String subject2){
        this.subject2 = subject2;
    }

    public String getSubject2(){
        return subject2;
    }
    public void setSubject3(String subject3){
        this.subject3 = subject3;
    }

    public String getSubject3(){
        return subject3;
    }
    public void setSubject4(String subject4){
        this.subject4 = subject4;
    }

    public String getSubject4(){
        return subject4;
    }
    public void setLiceCar(String liceCar){
        this.liceCar = liceCar;
    }

    public String getLiceCar(){
        return liceCar;
    }
    public void setLiceBus(String liceBus){
        this.liceBus = liceBus;
    }

    public String getLiceBus(){
        return liceBus;
    }
    public void setLiceTruck(String liceTruck){
        this.liceTruck = liceTruck;
    }

    public String getLiceTruck(){
        return liceTruck;
    }
    public void setLiceMoto(String liceMoto){
        this.liceMoto = liceMoto;
    }

    public String getLiceMoto(){
        return liceMoto;
    }
    public void setSequeIssue(String sequeIssue){
        this.sequeIssue = sequeIssue;
    }

    public String getSequeIssue(){
        return sequeIssue;
    }
    public void setClassIssue(String classIssue){
        this.classIssue = classIssue;
    }

    public String getClassIssue(){
        return classIssue;
    }
    public void setPlaceIssue(String placeIssue){
        this.placeIssue = placeIssue;
    }

    public String getPlaceIssue(){
        return placeIssue;
    }
    public void setExcellIssue(String excellIssue){
        this.excellIssue = excellIssue;
    }

    public String getExcellIssue(){
        return excellIssue;
    }
    public void setCopyIssue(String copyIssue){
        this.copyIssue = copyIssue;
    }

    public String getCopyIssue(){
        return copyIssue;
    }
    public void setMockIssue(String mockIssue){
        this.mockIssue = mockIssue;
    }

    public String getMockIssue(){
        return mockIssue;
    }
    public void setSequeIssueName(String sequeIssueName){
        this.sequeIssueName = sequeIssueName;
    }

    public String getSequeIssueName(){
        return sequeIssueName;
    }
    public void setPlaceIssueName(String placeIssueName){
        this.placeIssueName = placeIssueName;
    }

    public String getPlaceIssueName(){
        return placeIssueName;
    }
    public void setExcellIssueName(String excellIssueName){
        this.excellIssueName = excellIssueName;
    }

    public String getExcellIssueName(){
        return excellIssueName;
    }
    public void setClassIssueName(String classIssueName){
        this.classIssueName = classIssueName;
    }

    public String getClassIssueName(){
        return classIssueName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("number", getNumber())
            .append("answer", getAnswer())
            .append("answerkeyword", getAnswerkeyword())
            .append("explainGif", getExplainGif())
            .append("explainJq", getExplainJq())
            .append("explainJs", getExplainJs())
            .append("explainMp3", getExplainMp3())
            .append("image", getImage())
            .append("imageYdt", getImageYdt())
            .append("issue", getIssue())
            .append("opts", getOpts())
            .append("skillkeyword", getSkillkeyword())
            .append("titlekeyword", getTitlekeyword())
            .append("issuemp3", getIssuemp3())
            .append("answermp3", getAnswermp3())
            .append("explainjsmp3", getExplainjsmp3())
            .append("subject1", getSubject1())
            .append("subject2", getSubject2())
            .append("subject3", getSubject3())
            .append("subject4", getSubject4())
            .append("liceCar", getLiceCar())
            .append("liceBus", getLiceBus())
            .append("liceTruck", getLiceTruck())
            .append("liceMoto", getLiceMoto())
            .append("sequeIssue", getSequeIssue())
            .append("classIssue", getClassIssue())
            .append("placeIssue", getPlaceIssue())
            .append("excellIssue", getExcellIssue())
            .append("copyIssue", getCopyIssue())
            .append("mockIssue", getMockIssue())
            .append("sequeIssueName", getSequeIssueName())
            .append("placeIssueName", getPlaceIssueName())
            .append("excellIssueName", getExcellIssueName())
            .append("classIssueName", getClassIssueName())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
