package com.gkhy.exam.system.domain; import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.annotation.JsonInclude; import com.gkhy.exam.system.domain.vo.PaperStudentInfoVO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; import javax.validation.constraints.Min; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; import static com.fasterxml.jackson.annotation.JsonInclude.Include.NON_NULL; /** *
* 考卷(组卷)表 *
* * @author kzy * @since 2024-06-05 15:07:36 */ @Getter @Setter @Accessors(chain = true) @TableName("ex_exam_paper") @ApiModel(value = "ExExamPaper对象", description = "考卷(组卷)表") @JsonInclude(NON_NULL) public class ExExamPaper implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty("主键") @TableId(value = "id", type = IdType.AUTO) private Long id; @ApiModelProperty("编号") @TableField("code") private String code; @NotBlank(message = "考试名称不能为空") @ApiModelProperty(value = "考试名称",required = true) @TableField("name") private String name; @ApiModelProperty("状态(0正常,1停用,默认0)") @TableField("status") private Integer status; @NotNull(message = "公司id不能为空") @ApiModelProperty(value = "公司id",required = true) @TableField("company_id") private Long companyId; @NotNull(message = "分类ID不能为空") @ApiModelProperty(value = "分类ID",required = true) @TableField("category_id") private Long categoryId; @NotNull(message = "考试限制时长不能为空") @Min(value = 0,message = "考试限制时长不能小于0") @ApiModelProperty(value = "考试限制时长(分钟)",required = true) @TableField("limit_time") private Integer limitTime; @ApiModelProperty("是否限制考试时间(0否,1是,默认0)") @TableField("limited") private Integer limited; // @NotNull(message = "单选题目数量不能为空") // @Min(value = 1,message = "单选题目数量必须大于0") @ApiModelProperty(value = "单选题目数量",required = true) @TableField("single_num") private Integer singleNum; // @NotNull(message = "单选题每题分数不能为空") // @Min(value = 1,message = "单选题每题分数必须大于0") @ApiModelProperty(value = "单选题每题分数",required = true) @TableField("single_score") private Integer singleScore; // @NotNull(message = "单选题题库不能为空") @ApiModelProperty(value = "单选题题库id",required = true) @TableField("single_bank_id") private Long singleBankId; // @NotNull(message = "单选题出题方式不能为空") @ApiModelProperty(value = "单选题出题方式1随机,2顺序,默认1",required = true) @TableField("single_method") private Integer singleMethod; // @NotNull(message = "多选题目数量不能为空") // @Min(value = 1,message = "多选题目数量必须大于0") @ApiModelProperty(value = "多选题目数量",required = true) @TableField("multi_num") private Integer multiNum; // @NotNull(message = "多选题每题分数不能为空") // @Min(value = 1,message = "多选题每题分数必须大于0") @ApiModelProperty(value = "多选题每题分数",required = true) @TableField("multi_score") private Integer multiScore; // @NotNull(message = "多选题题库不能为空") @ApiModelProperty(value = "多选题题库id",required = true) @TableField("multi_bank_id") private Long multiBankId; // @NotNull(message = "多选题出题方式不能为空") @ApiModelProperty(value = "多选题出题方式1随机,2顺序,默认1",required = true) @TableField("multi_method") private Integer multiMethod; // @NotNull(message = "判断题目数量不能为空") // @Min(value = 1,message = "判断题目数量必须大于0") @ApiModelProperty(value = "判断题目数量",required = true) @TableField("judge_num") private Integer judgeNum; // @NotNull(message = "判断题每题分数不能为空") // @Min(value = 1,message = "判断题每题分数必须大于0") @ApiModelProperty(value = "判断题每题分数",required = true) @TableField("judge_score") private Integer judgeScore; // @NotNull(message = "判断题题库不能为空") @ApiModelProperty(value = "判断题题库id",required = true) @TableField("judge_bank_id") private Long judgeBankId; // @NotNull(message = "判断题出题方式不能为空") @ApiModelProperty(value = "判断题出题方式1随机,2顺序,默认1",required = true) @TableField("judge_method") private Integer judgeMethod; @ApiModelProperty(value = "简答题题目数量",required = true) @TableField("easy_num") private Integer easyNum; // @NotNull(message = "简答题每题分数不能为空") // @Min(value = 1,message = "简答题每题分数必须大于0") @ApiModelProperty(value = "简答题每题分数",required = true) @TableField("easy_score") private Integer easyScore; // @NotNull(message = "简答题题库不能为空") @ApiModelProperty(value = "简答题题库id",required = true) @TableField("easy_bank_id") private Long easyBankId; // @NotNull(message = "简答题出题方式不能为空") @ApiModelProperty(value = "简答题出题方式1随机,2顺序,默认1",required = true) @TableField("easy_method") private Integer easyMethod; @NotNull(message = "合格分数不能为空") @Min(value = 1,message = "合格分数必须大于0") @ApiModelProperty(value = "合格分数",required = true) @TableField("pass_score") private Integer passScore; @NotNull(message = "考试截止时间不能为空") @ApiModelProperty("考试截止时间") @TableField("deadline") private LocalDateTime deadline; @ApiModelProperty("创建时间") @TableField("create_time") private LocalDateTime createTime; @ApiModelProperty("创建人") @TableField("create_by") private String createBy; @ApiModelProperty("更新时间") @TableField("update_time") private LocalDateTime updateTime; @ApiModelProperty("更新人") @TableField("update_by") private String updateBy; @ApiModelProperty("备注") @TableField("remark") private String remark; @Version @ApiModelProperty("乐观锁") @TableField("version") private Integer version; @ApiModelProperty("删除标志(0代表存在,1代表删除,默认0)") @TableField("del_flag") private Integer delFlag; @ApiModelProperty("公司名称") @TableField(exist = false) private String companyName; @ApiModelProperty("分类名称") @TableField(exist = false) private String categoryName; @ApiModelProperty("单选题是否重新出题,0否 1是(编辑时传参)") @TableField(exist = false) private Integer singleRebuild=0; @ApiModelProperty("多选题是否重新出题,0否 1是(编辑时传参)") @TableField(exist = false) private Integer multiRebuild=0; @ApiModelProperty("判断题是否重新出题,0否 1是(编辑时传参)") @TableField(exist = false) private Integer judgeRebuild=0; @ApiModelProperty("简答题是否重新出题,0否 1是(编辑时传参)") @TableField(exist = false) private Integer easyRebuild=0; @ApiModelProperty("题目列表") @TableField(exist = false) private List