|
@@ -0,0 +1,544 @@
|
|
|
|
+package cn.com.qmth.examcloud.support.examing;
|
|
|
|
+
|
|
|
|
+import java.util.Date;
|
|
|
|
+
|
|
|
|
+import cn.com.qmth.examcloud.api.commons.enums.ExamType;
|
|
|
|
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
|
|
|
|
+import cn.com.qmth.examcloud.support.enums.ExamRecordStatus;
|
|
|
|
+import cn.com.qmth.examcloud.support.enums.HandInExamType;
|
|
|
|
+import cn.com.qmth.examcloud.support.enums.IsSuccess;
|
|
|
|
+import cn.com.qmth.examcloud.support.enums.SyncStatus;
|
|
|
|
+
|
|
|
|
+public class ExamRecordData implements JsonSerializable {
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ *
|
|
|
|
+ */
|
|
|
|
+ private static final long serialVersionUID = 3881189287358373638L;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 主键
|
|
|
|
+ */
|
|
|
|
+ private Long id;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考试ID
|
|
|
|
+ */
|
|
|
|
+ private Long examId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考试类型
|
|
|
|
+ */
|
|
|
|
+ private ExamType examType;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考生ID
|
|
|
|
+ */
|
|
|
|
+ private Long examStudentId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 学生ID
|
|
|
|
+ */
|
|
|
|
+ private Long studentId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 课程ID
|
|
|
|
+ */
|
|
|
|
+ private Long courseId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 学习中心ID
|
|
|
|
+ */
|
|
|
|
+ private Long orgId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 顶级机构ID
|
|
|
|
+ */
|
|
|
|
+ private Long rootOrgId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 基础试卷ID
|
|
|
|
+ */
|
|
|
|
+ private String basePaperId;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 试卷类型
|
|
|
|
+ */
|
|
|
|
+ private String paperType;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考试开始时间
|
|
|
|
+ */
|
|
|
|
+ private Date startTime;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考试结束时间
|
|
|
|
+ */
|
|
|
|
+ private Date endTime;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考试时长
|
|
|
|
+ */
|
|
|
|
+ private Long usedExamTime;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 是否断点续考
|
|
|
|
+ */
|
|
|
|
+ private Boolean isContinued;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 断点续考次数
|
|
|
|
+ */
|
|
|
|
+ private Integer continuedCount;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 是否达到最大断点限制
|
|
|
|
+ */
|
|
|
|
+ private Boolean isExceed;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 抓拍比对成功次数
|
|
|
|
+ */
|
|
|
|
+ private Integer faceSuccessCount;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 抓拍比对失败次数
|
|
|
|
+ */
|
|
|
|
+ private Integer faceFailedCount;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 抓拍存在陌生人的次数
|
|
|
|
+ */
|
|
|
|
+ private Integer faceStrangerCount;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 抓拍比对总次数
|
|
|
|
+ */
|
|
|
|
+ private Integer faceTotalCount;
|
|
|
|
+
|
|
|
|
+ // 考试记录状态
|
|
|
|
+ private ExamRecordStatus examRecordStatus;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 交卷类型
|
|
|
|
+ */
|
|
|
|
+ private HandInExamType handInExamType;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ *
|
|
|
|
+ * 活体检测结果
|
|
|
|
+ */
|
|
|
|
+ private IsSuccess faceVerifyResult;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 考试被清理时间
|
|
|
|
+ */
|
|
|
|
+ private Date cleanTime;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 是否异常数据
|
|
|
|
+ */
|
|
|
|
+ private Boolean isWarn;
|
|
|
|
+ /**
|
|
|
|
+ * 是否被审核过
|
|
|
|
+ */
|
|
|
|
+ private Boolean isAudit;
|
|
|
|
+ /**
|
|
|
|
+ * 是否违纪
|
|
|
|
+ */
|
|
|
|
+ private Boolean isIllegality;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 总分
|
|
|
|
+ */
|
|
|
|
+ private Double totalScore;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 客观题得分总分
|
|
|
|
+ */
|
|
|
|
+ private Double objectiveScore;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 客观题答对的比率
|
|
|
|
+ * (客观题答对的题数/客观题总题数)*100 取2位小数
|
|
|
|
+ */
|
|
|
|
+ private Double objectiveAccuracy;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 主观题得分总分
|
|
|
|
+ */
|
|
|
|
+ private Double subjectiveScore;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 答题正确率
|
|
|
|
+ */
|
|
|
|
+ private Double succPercent;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 抓拍比对通过率
|
|
|
|
+ */
|
|
|
|
+ private Double faceSuccessPercent;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 百度人脸活体检测通过率
|
|
|
|
+ */
|
|
|
|
+ private Double baiduFaceLivenessSuccessPercent;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 数据同步状态
|
|
|
|
+ */
|
|
|
|
+ private SyncStatus syncStatus;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 试卷题目数量(校验提交答案的order)
|
|
|
|
+ */
|
|
|
|
+ private Integer questionCount;
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 是否是全客观题卷 1:是 0:否
|
|
|
|
+ */
|
|
|
|
+ private Boolean isAllObjectivePaper;
|
|
|
|
+
|
|
|
|
+ public Long getId() {
|
|
|
|
+ return id;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setId(Long id) {
|
|
|
|
+ this.id = id;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getExamId() {
|
|
|
|
+ return examId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setExamId(Long examId) {
|
|
|
|
+ this.examId = examId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public ExamType getExamType() {
|
|
|
|
+ return examType;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setExamType(ExamType examType) {
|
|
|
|
+ this.examType = examType;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getExamStudentId() {
|
|
|
|
+ return examStudentId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setExamStudentId(Long examStudentId) {
|
|
|
|
+ this.examStudentId = examStudentId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getStudentId() {
|
|
|
|
+ return studentId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setStudentId(Long studentId) {
|
|
|
|
+ this.studentId = studentId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getCourseId() {
|
|
|
|
+ return courseId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setCourseId(Long courseId) {
|
|
|
|
+ this.courseId = courseId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getOrgId() {
|
|
|
|
+ return orgId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setOrgId(Long orgId) {
|
|
|
|
+ this.orgId = orgId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getRootOrgId() {
|
|
|
|
+ return rootOrgId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setRootOrgId(Long rootOrgId) {
|
|
|
|
+ this.rootOrgId = rootOrgId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public String getBasePaperId() {
|
|
|
|
+ return basePaperId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setBasePaperId(String basePaperId) {
|
|
|
|
+ this.basePaperId = basePaperId;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public String getPaperType() {
|
|
|
|
+ return paperType;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setPaperType(String paperType) {
|
|
|
|
+ this.paperType = paperType;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Date getStartTime() {
|
|
|
|
+ return startTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setStartTime(Date startTime) {
|
|
|
|
+ this.startTime = startTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Date getEndTime() {
|
|
|
|
+ return endTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setEndTime(Date endTime) {
|
|
|
|
+ this.endTime = endTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Long getUsedExamTime() {
|
|
|
|
+ return usedExamTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setUsedExamTime(Long usedExamTime) {
|
|
|
|
+ this.usedExamTime = usedExamTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Boolean getIsContinued() {
|
|
|
|
+ return isContinued;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setIsContinued(Boolean isContinued) {
|
|
|
|
+ this.isContinued = isContinued;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Integer getContinuedCount() {
|
|
|
|
+ return continuedCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setContinuedCount(Integer continuedCount) {
|
|
|
|
+ this.continuedCount = continuedCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Integer getFaceSuccessCount() {
|
|
|
|
+ return faceSuccessCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setFaceSuccessCount(Integer faceSuccessCount) {
|
|
|
|
+ this.faceSuccessCount = faceSuccessCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Integer getFaceFailedCount() {
|
|
|
|
+ return faceFailedCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setFaceFailedCount(Integer faceFailedCount) {
|
|
|
|
+ this.faceFailedCount = faceFailedCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Integer getFaceStrangerCount() {
|
|
|
|
+ return faceStrangerCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setFaceStrangerCount(Integer faceStrangerCount) {
|
|
|
|
+ this.faceStrangerCount = faceStrangerCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Integer getFaceTotalCount() {
|
|
|
|
+ return faceTotalCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setFaceTotalCount(Integer faceTotalCount) {
|
|
|
|
+ this.faceTotalCount = faceTotalCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Boolean getIsExceed() {
|
|
|
|
+ return isExceed;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setIsExceed(Boolean isExceed) {
|
|
|
|
+ this.isExceed = isExceed;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public ExamRecordStatus getExamRecordStatus() {
|
|
|
|
+ return examRecordStatus;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setExamRecordStatus(ExamRecordStatus examRecordStatus) {
|
|
|
|
+ this.examRecordStatus = examRecordStatus;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public HandInExamType getHandInExamType() {
|
|
|
|
+ return handInExamType;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setHandInExamType(HandInExamType handInExamType) {
|
|
|
|
+ this.handInExamType = handInExamType;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public IsSuccess getFaceVerifyResult() {
|
|
|
|
+ return faceVerifyResult;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setFaceVerifyResult(IsSuccess faceVerifyResult) {
|
|
|
|
+ this.faceVerifyResult = faceVerifyResult;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Date getCleanTime() {
|
|
|
|
+ return cleanTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setCleanTime(Date cleanTime) {
|
|
|
|
+ this.cleanTime = cleanTime;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getTotalScore() {
|
|
|
|
+ return totalScore;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setTotalScore(Double totalScore) {
|
|
|
|
+ this.totalScore = totalScore;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getObjectiveScore() {
|
|
|
|
+ return objectiveScore;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setObjectiveScore(Double objectiveScore) {
|
|
|
|
+ this.objectiveScore = objectiveScore;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getObjectiveAccuracy() {
|
|
|
|
+ return objectiveAccuracy;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setObjectiveAccuracy(Double objectiveAccuracy) {
|
|
|
|
+ this.objectiveAccuracy = objectiveAccuracy;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getSubjectiveScore() {
|
|
|
|
+ return subjectiveScore;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setSubjectiveScore(Double subjectiveScore) {
|
|
|
|
+ this.subjectiveScore = subjectiveScore;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getSuccPercent() {
|
|
|
|
+ return succPercent;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setSuccPercent(Double succPercent) {
|
|
|
|
+ this.succPercent = succPercent;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Boolean getIsWarn() {
|
|
|
|
+ return isWarn;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setIsWarn(Boolean warn) {
|
|
|
|
+ isWarn = warn;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Boolean getIsAudit() {
|
|
|
|
+ return isAudit;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setIsAudit(Boolean audit) {
|
|
|
|
+ isAudit = audit;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Boolean getIsIllegality() {
|
|
|
|
+ return isIllegality;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setIsIllegality(Boolean illegality) {
|
|
|
|
+ isIllegality = illegality;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public SyncStatus getSyncStatus() {
|
|
|
|
+ return syncStatus;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setSyncStatus(SyncStatus syncStatus) {
|
|
|
|
+ this.syncStatus = syncStatus;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getFaceSuccessPercent() {
|
|
|
|
+ return faceSuccessPercent;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setFaceSuccessPercent(Double faceSuccessPercent) {
|
|
|
|
+ this.faceSuccessPercent = faceSuccessPercent;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Double getBaiduFaceLivenessSuccessPercent() {
|
|
|
|
+ return baiduFaceLivenessSuccessPercent;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public void setBaiduFaceLivenessSuccessPercent(Double baiduFaceLivenessSuccessPercent) {
|
|
|
|
+ this.baiduFaceLivenessSuccessPercent = baiduFaceLivenessSuccessPercent;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ public Integer getQuestionCount() {
|
|
|
|
+ return questionCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ public void setQuestionCount(Integer questionCount) {
|
|
|
|
+ this.questionCount = questionCount;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ public Boolean getIsAllObjectivePaper() {
|
|
|
|
+ return isAllObjectivePaper;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ public void setIsAllObjectivePaper(Boolean isAllObjectivePaper) {
|
|
|
|
+ this.isAllObjectivePaper = isAllObjectivePaper;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public String toString() {
|
|
|
|
+ return "ExamRecordData{" +
|
|
|
|
+ "id=" + id +
|
|
|
|
+ ", examId=" + examId +
|
|
|
|
+ ", examType=" + examType +
|
|
|
|
+ ", examStudentId=" + examStudentId +
|
|
|
|
+ ", studentId=" + studentId +
|
|
|
|
+ ", courseId=" + courseId +
|
|
|
|
+ ", orgId=" + orgId +
|
|
|
|
+ ", rootOrgId=" + rootOrgId +
|
|
|
|
+ ", basePaperId='" + basePaperId + '\'' +
|
|
|
|
+ ", paperType='" + paperType + '\'' +
|
|
|
|
+ ", startTime=" + startTime +
|
|
|
|
+ ", endTime=" + endTime +
|
|
|
|
+ ", usedExamTime=" + usedExamTime +
|
|
|
|
+ ", isContinued=" + isContinued +
|
|
|
|
+ ", continuedCount=" + continuedCount +
|
|
|
|
+ ", isExceed=" + isExceed +
|
|
|
|
+ ", faceSuccessCount=" + faceSuccessCount +
|
|
|
|
+ ", faceFailedCount=" + faceFailedCount +
|
|
|
|
+ ", faceStrangerCount=" + faceStrangerCount +
|
|
|
|
+ ", faceTotalCount=" + faceTotalCount +
|
|
|
|
+ ", examRecordStatus=" + examRecordStatus +
|
|
|
|
+ ", handInExamType=" + handInExamType +
|
|
|
|
+ ", faceVerifyResult=" + faceVerifyResult +
|
|
|
|
+ ", cleanTime=" + cleanTime +
|
|
|
|
+ ", isWarn=" + isWarn +
|
|
|
|
+ ", isAudit=" + isAudit +
|
|
|
|
+ ", isIllegality=" + isIllegality +
|
|
|
|
+ ", totalScore=" + totalScore +
|
|
|
|
+ ", objectiveScore=" + objectiveScore +
|
|
|
|
+ ", objectiveAccuracy=" + objectiveAccuracy +
|
|
|
|
+ ", subjectiveScore=" + subjectiveScore +
|
|
|
|
+ ", succPercent=" + succPercent +
|
|
|
|
+ ", faceSuccessPercent=" + faceSuccessPercent +
|
|
|
|
+ ", baiduFaceLivenessSuccessPercent=" + baiduFaceLivenessSuccessPercent +
|
|
|
|
+ ", syncStatus=" + syncStatus +
|
|
|
|
+ ", questionCount=" + questionCount +
|
|
|
|
+ ", isAllObjectivePaper=" + isAllObjectivePaper +
|
|
|
|
+ '}';
|
|
|
|
+ }
|
|
|
|
+}
|