|
@@ -11,10 +11,9 @@ import javax.persistence.Lob;
|
|
import javax.persistence.Table;
|
|
import javax.persistence.Table;
|
|
import javax.validation.constraints.NotNull;
|
|
import javax.validation.constraints.NotNull;
|
|
|
|
|
|
-import org.springframework.data.annotation.CreatedDate;
|
|
|
|
import org.springframework.format.annotation.DateTimeFormat;
|
|
import org.springframework.format.annotation.DateTimeFormat;
|
|
|
|
|
|
-import cn.com.qmth.examcloud.commons.web.cloud.api.JsonSerializable;
|
|
|
|
|
|
+import cn.com.qmth.examcloud.commons.web.jpa.JpaEntity;
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.ExamType;
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.ExamType;
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.MarkingType;
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.MarkingType;
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.PracticeType;
|
|
import cn.com.qmth.examcloud.core.examwork.dao.enums.PracticeType;
|
|
@@ -24,7 +23,7 @@ import cn.com.qmth.examcloud.core.examwork.dao.enums.PracticeType;
|
|
*/
|
|
*/
|
|
@Entity
|
|
@Entity
|
|
@Table(name = "ecs_exam")
|
|
@Table(name = "ecs_exam")
|
|
-public class Exam implements JsonSerializable {
|
|
|
|
|
|
+public class Exam extends JpaEntity {
|
|
|
|
|
|
private static final long serialVersionUID = 4009839764353162256L;
|
|
private static final long serialVersionUID = 4009839764353162256L;
|
|
|
|
|
|
@@ -45,37 +44,38 @@ public class Exam implements JsonSerializable {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试批次开始时间
|
|
* 考试批次开始时间
|
|
- */
|
|
|
|
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
|
|
|
|
|
+ */
|
|
|
|
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
private Date beginTime;
|
|
private Date beginTime;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试批次结束时间
|
|
* 考试批次结束时间
|
|
- */
|
|
|
|
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
|
|
|
|
|
+ */
|
|
|
|
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
|
private Date endTime;
|
|
private Date endTime;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试名称
|
|
* 考试名称
|
|
- */
|
|
|
|
|
|
+ */
|
|
@NotNull
|
|
@NotNull
|
|
private String name;
|
|
private String name;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试类型
|
|
* 考试类型
|
|
- */
|
|
|
|
|
|
+ */
|
|
@Enumerated(EnumType.STRING)
|
|
@Enumerated(EnumType.STRING)
|
|
private ExamType examType;
|
|
private ExamType examType;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 是否入学考试
|
|
* 是否入学考试
|
|
- */
|
|
|
|
|
|
+ */
|
|
private Boolean isEntranceExam;
|
|
private Boolean isEntranceExam;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试时长
|
|
* 考试时长
|
|
*/
|
|
*/
|
|
private Integer duration;
|
|
private Integer duration;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 冻结时间
|
|
* 冻结时间
|
|
*/
|
|
*/
|
|
@@ -83,52 +83,44 @@ public class Exam implements JsonSerializable {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试状态
|
|
* 考试状态
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String status;
|
|
private String status;
|
|
|
|
|
|
-
|
|
|
|
private Boolean enable;
|
|
private Boolean enable;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考试备注
|
|
* 考试备注
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String remark;
|
|
private String remark;
|
|
|
|
|
|
- /**
|
|
|
|
- * 创建时间
|
|
|
|
- */
|
|
|
|
- @CreatedDate
|
|
|
|
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
|
|
|
- private Date createTime;
|
|
|
|
-
|
|
|
|
/**
|
|
/**
|
|
* 考试次数
|
|
* 考试次数
|
|
- */
|
|
|
|
|
|
+ */
|
|
private Long examTimes;
|
|
private Long examTimes;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 断点续考时间(秒)
|
|
* 断点续考时间(秒)
|
|
- */
|
|
|
|
|
|
+ */
|
|
private Long examReconnectTime;
|
|
private Long examReconnectTime;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考前说明
|
|
* 考前说明
|
|
- */
|
|
|
|
- @Lob
|
|
|
|
|
|
+ */
|
|
|
|
+ @Lob
|
|
private String beforeExamRemark;
|
|
private String beforeExamRemark;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 考后说明
|
|
* 考后说明
|
|
- */
|
|
|
|
- @Lob
|
|
|
|
|
|
+ */
|
|
|
|
+ @Lob
|
|
private String afterExamRemark;
|
|
private String afterExamRemark;
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 作弊说明
|
|
* 作弊说明
|
|
*/
|
|
*/
|
|
- @Lob
|
|
|
|
|
|
+ @Lob
|
|
private String cheatingRemark;
|
|
private String cheatingRemark;
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 是否展示作弊
|
|
* 是否展示作弊
|
|
*/
|
|
*/
|
|
@@ -136,12 +128,12 @@ public class Exam implements JsonSerializable {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 是否显示成绩
|
|
* 是否显示成绩
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String isObjScoreView;
|
|
private String isObjScoreView;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 练习模式
|
|
* 练习模式
|
|
- */
|
|
|
|
|
|
+ */
|
|
@Enumerated(EnumType.STRING)
|
|
@Enumerated(EnumType.STRING)
|
|
private PracticeType practiceType;
|
|
private PracticeType practiceType;
|
|
|
|
|
|
@@ -167,27 +159,27 @@ public class Exam implements JsonSerializable {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 单选题补充说明
|
|
* 单选题补充说明
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String singleAnswerRemark;
|
|
private String singleAnswerRemark;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 多选题补充说明
|
|
* 多选题补充说明
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String mutipleAnswerRemark;
|
|
private String mutipleAnswerRemark;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 判断题补充说明
|
|
* 判断题补充说明
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String boolAnswerRemark;
|
|
private String boolAnswerRemark;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 填空题补充说明
|
|
* 填空题补充说明
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String fillBlankRemark;
|
|
private String fillBlankRemark;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 问答题补充说明
|
|
* 问答题补充说明
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String textAnswerRemark;
|
|
private String textAnswerRemark;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -197,44 +189,46 @@ public class Exam implements JsonSerializable {
|
|
|
|
|
|
/**
|
|
/**
|
|
* 是否启用人脸识别
|
|
* 是否启用人脸识别
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String isFaceEnable;
|
|
private String isFaceEnable;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 进入考试是否验证人脸识别(强制、非强制)
|
|
* 进入考试是否验证人脸识别(强制、非强制)
|
|
- */
|
|
|
|
|
|
+ */
|
|
private String isFaceCheck;
|
|
private String isFaceCheck;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 抓拍间隔
|
|
* 抓拍间隔
|
|
- */
|
|
|
|
|
|
+ */
|
|
private Double snapshotInterval;
|
|
private Double snapshotInterval;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 预警阈值
|
|
* 预警阈值
|
|
- */
|
|
|
|
|
|
+ */
|
|
private Double warnThreshold;
|
|
private Double warnThreshold;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 阅卷方式
|
|
* 阅卷方式
|
|
- */
|
|
|
|
|
|
+ */
|
|
@Enumerated(EnumType.STRING)
|
|
@Enumerated(EnumType.STRING)
|
|
private MarkingType markingType;
|
|
private MarkingType markingType;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 学生是否可以删除
|
|
* 学生是否可以删除
|
|
- */
|
|
|
|
|
|
+ */
|
|
@NotNull
|
|
@NotNull
|
|
private Boolean canStuDel;
|
|
private Boolean canStuDel;
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 是否开启人脸活体检测
|
|
* 是否开启人脸活体检测
|
|
*/
|
|
*/
|
|
private Boolean isFaceVerify;
|
|
private Boolean isFaceVerify;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 活体检测开始分钟数
|
|
* 活体检测开始分钟数
|
|
*/
|
|
*/
|
|
private Integer faceVerifyStartMinute;
|
|
private Integer faceVerifyStartMinute;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 活体检测结束分钟数
|
|
* 活体检测结束分钟数
|
|
*/
|
|
*/
|
|
@@ -328,14 +322,6 @@ public class Exam implements JsonSerializable {
|
|
this.remark = remark;
|
|
this.remark = remark;
|
|
}
|
|
}
|
|
|
|
|
|
- public Date getCreateTime() {
|
|
|
|
- return createTime;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- public void setCreateTime(Date createTime) {
|
|
|
|
- this.createTime = createTime;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
public Long getExamTimes() {
|
|
public Long getExamTimes() {
|
|
return examTimes;
|
|
return examTimes;
|
|
}
|
|
}
|
|
@@ -527,7 +513,7 @@ public class Exam implements JsonSerializable {
|
|
public void setEntranceExam(Boolean entranceExam) {
|
|
public void setEntranceExam(Boolean entranceExam) {
|
|
isEntranceExam = entranceExam;
|
|
isEntranceExam = entranceExam;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
public Boolean getIsEntranceExam() {
|
|
public Boolean getIsEntranceExam() {
|
|
return isEntranceExam;
|
|
return isEntranceExam;
|
|
}
|
|
}
|