Browse Source

merge from release_v4.1.1

deason 3 years ago
parent
commit
a312fdf309

+ 12 - 1
examcloud-core-marking-api/src/main/java/cn/com/qmth/examcloud/marking/api/bean/MarkTaskBean.java

@@ -4,7 +4,6 @@ import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
 
 /**
  * @ClassName MarkTaskBean
- * @Description TODO
  * @Author nikang
  * @Date 2018/11/27 17:03
  * @Version 3.0
@@ -44,6 +43,8 @@ public class MarkTaskBean implements JsonSerializable {
     private Double stdDev;
 
     private Long rootOrgId;
+    
+    private Boolean exceedLimit;
 
     public MarkTaskBean() {
     }
@@ -239,4 +240,14 @@ public class MarkTaskBean implements JsonSerializable {
     public void setId(Long id) {
         this.id = id;
     }
+
+	public Boolean getExceedLimit() {
+		return exceedLimit;
+	}
+
+	public void setExceedLimit(Boolean exceedLimit) {
+		this.exceedLimit = exceedLimit;
+	}
+    
+    
 }

+ 26 - 7
examcloud-core-marking-api/src/main/java/cn/com/qmth/examcloud/marking/api/response/GetStudentPaperResp.java

@@ -12,13 +12,32 @@ import cn.com.qmth.examcloud.marking.api.bean.StudentPaperBean;
  */
 public class GetStudentPaperResp extends BaseResponse {
     private static final long serialVersionUID = 3983154999704945517L;
+    
+	
+    private String resultCode;
+	private String failMsg;
     private StudentPaperBean studentPaperBean;
+    
+    
+    
+	public String getResultCode() {
+		return resultCode;
+	}
+	public void setResultCode(String resultCode) {
+		this.resultCode = resultCode;
+	}
+	public String getFailMsg() {
+		return failMsg;
+	}
+	public void setFailMsg(String failMsg) {
+		this.failMsg = failMsg;
+	}
+	public StudentPaperBean getStudentPaperBean() {
+		return studentPaperBean;
+	}
+	public void setStudentPaperBean(StudentPaperBean studentPaperBean) {
+		this.studentPaperBean = studentPaperBean;
+	}
 
-    public StudentPaperBean getStudentPaperBean() {
-        return studentPaperBean;
-    }
-
-    public void setStudentPaperBean(StudentPaperBean studentPaperBean) {
-        this.studentPaperBean = studentPaperBean;
-    }
+    
 }

+ 15 - 1
examcloud-core-oe-admin-api/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/bean/ExamRecordDataBean.java

@@ -1,7 +1,6 @@
 package cn.com.qmth.examcloud.core.oe.admin.api.bean;
 
 import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
-import org.springframework.data.annotation.CreatedDate;
 
 import java.util.Date;
 
@@ -234,6 +233,11 @@ public class ExamRecordDataBean implements JsonSerializable {
      * 切屏次数
      */
     private Integer switchScreenCount;
+    
+    /**
+     * 是否达到最大切屏次数限制
+     */
+    private Boolean exceedMaxSwitchScreenCount;
 
     public Long getId() {
         return id;
@@ -650,4 +654,14 @@ public class ExamRecordDataBean implements JsonSerializable {
     public void setSwitchScreenCount(Integer switchScreenCount) {
         this.switchScreenCount = switchScreenCount;
     }
+
+	public Boolean getExceedMaxSwitchScreenCount() {
+		return exceedMaxSwitchScreenCount;
+	}
+
+	public void setExceedMaxSwitchScreenCount(Boolean exceedMaxSwitchScreenCount) {
+		this.exceedMaxSwitchScreenCount = exceedMaxSwitchScreenCount;
+	}
+    
+    
 }

+ 138 - 0
examcloud-core-oe-admin-api/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/bean/FaceLiveVerifyBean.java

@@ -0,0 +1,138 @@
+package cn.com.qmth.examcloud.core.oe.admin.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+import java.util.Date;
+
+/**
+ * 人脸活体验证结果(支持C端客户端活检)
+ */
+public class FaceLiveVerifyBean implements JsonSerializable {
+
+    private static final long serialVersionUID = -622363885150638414L;
+
+    /**
+     * 考试记录ID
+     */
+    private Long examRecordDataId;
+
+    /**
+     * 验证状态
+     */
+    private String status;
+
+    /**
+     * 动作验证列表,JSON格式
+     */
+    private String actions;
+
+    /**
+     * 人脸数量
+     */
+    private Integer faceCount;
+
+    /**
+     * 相似度分数
+     */
+    private Double similarity;
+
+    /**
+     * 真实性分数
+     */
+    private Double realness;
+
+    /**
+     * 处理耗时(毫秒)
+     */
+    private Long processTime;
+
+    /**
+     * 错误信息
+     */
+    private String errorMsg;
+
+    private Date creationTime;
+
+    private Date updateTime;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getActions() {
+        return actions;
+    }
+
+    public void setActions(String actions) {
+        this.actions = actions;
+    }
+
+    public Integer getFaceCount() {
+        return faceCount;
+    }
+
+    public void setFaceCount(Integer faceCount) {
+        this.faceCount = faceCount;
+    }
+
+    public Double getSimilarity() {
+        return similarity;
+    }
+
+    public void setSimilarity(Double similarity) {
+        this.similarity = similarity;
+    }
+
+    public Double getRealness() {
+        return realness;
+    }
+
+    public void setRealness(Double realness) {
+        this.realness = realness;
+    }
+
+    public Long getProcessTime() {
+        return processTime;
+    }
+
+    public void setProcessTime(Long processTime) {
+        this.processTime = processTime;
+    }
+
+    public String getErrorMsg() {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg) {
+        this.errorMsg = errorMsg;
+    }
+
+    public Date getCreationTime() {
+        return creationTime;
+    }
+
+    public void setCreationTime(Date creationTime) {
+        this.creationTime = creationTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+}

+ 15 - 0
examcloud-core-oe-admin-api/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/request/SyncExamDataReq.java

@@ -12,6 +12,7 @@ import java.util.List;
  * @Version 1.0
  */
 public class SyncExamDataReq extends BaseRequest {
+
     private static final long serialVersionUID = -6468655557697004398L;
 
     /**
@@ -39,6 +40,11 @@ public class SyncExamDataReq extends BaseRequest {
      */
     private FaceBiopsyBean faceBiopsy;
 
+    /**
+     * C端活体检测记录
+     */
+    private List<FaceLiveVerifyBean> faceLiveVerifyRecords;
+
     /**
      * 考试记录对应的试卷结构实体
      */
@@ -99,6 +105,14 @@ public class SyncExamDataReq extends BaseRequest {
         this.faceBiopsy = faceBiopsy;
     }
 
+    public List<FaceLiveVerifyBean> getFaceLiveVerifyRecords() {
+        return faceLiveVerifyRecords;
+    }
+
+    public void setFaceLiveVerifyRecords(List<FaceLiveVerifyBean> faceLiveVerifyRecords) {
+        this.faceLiveVerifyRecords = faceLiveVerifyRecords;
+    }
+
     public ExamRecordQuestionsBean getExamRecordQuestions() {
         return examRecordQuestions;
     }
@@ -130,4 +144,5 @@ public class SyncExamDataReq extends BaseRequest {
     public void setExamProcessRecords(List<ExamProcessRecordBean> examProcessRecords) {
         this.examProcessRecords = examProcessRecords;
     }
+
 }

+ 12 - 12
examcloud-core-oe-student-api-client/src/main/java/cn/com/qmth/examcloud/core/oe/student/client/ExamRecordDataCloudServiceClient.java

@@ -1,21 +1,20 @@
 package cn.com.qmth.examcloud.core.oe.student.client;
 
+import cn.com.qmth.examcloud.core.oe.student.api.ExamRecordDataCloudService;
 import cn.com.qmth.examcloud.core.oe.student.api.request.*;
 import cn.com.qmth.examcloud.core.oe.student.api.response.*;
 import org.springframework.stereotype.Service;
 
-import cn.com.qmth.examcloud.core.oe.student.api.ExamRecordDataCloudService;
-
 @Service("examRecordDataCloudService")
-public class ExamRecordDataCloudServiceClient extends AbstractCloudClientSupport
-		implements
-		ExamRecordDataCloudService {
+public class ExamRecordDataCloudServiceClient extends AbstractCloudClientSupport implements ExamRecordDataCloudService {
 
-    /**
-     *
-     */
     private static final long serialVersionUID = 3745318048361113898L;
 
+    @Override
+    public ExistExamRecordDataResp existExamRecordData(ExistExamRecordDataReq req) {
+        return post("examRecordData/existExamRecordData", req, ExistExamRecordDataResp.class);
+    }
+
     @Override
     public GetExamRecordDataIdsResp getExamRecordDataIds(GetExamRecordDataIdsReq req) {
         return post("examRecordData/getExamRecordDataIds", req, GetExamRecordDataIdsResp.class);
@@ -118,8 +117,9 @@ public class ExamRecordDataCloudServiceClient extends AbstractCloudClientSupport
         return post("examRecordData/updatePartialExamRecord", req, UpdatePartialExamRecordResp.class);
     }
 
-	@Override
-	public CheckPaperInExamResp checkPaperInExam(CheckPaperInExamReq req) {
-		return post("examRecordData/checkPaperInExam", req, CheckPaperInExamResp.class);
-	}
+    @Override
+    public CheckPaperInExamResp checkPaperInExam(CheckPaperInExamReq req) {
+        return post("examRecordData/checkPaperInExam", req, CheckPaperInExamResp.class);
+    }
+
 }

+ 13 - 27
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/ExamRecordDataCloudService.java

@@ -1,35 +1,16 @@
 package cn.com.qmth.examcloud.core.oe.student.api;
 
 import cn.com.qmth.examcloud.api.commons.CloudService;
-import cn.com.qmth.examcloud.core.oe.student.api.request.CalcExamScoreReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.CalcFaceBiopsyResultReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.CheckPaperInExamReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamFaceLivenessVerifiesReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordDataIdsReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordNumReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordPaperStructReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordQuestionsReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetFaceBiopsyReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.HandInExamReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.UpdateExamRecordDataBatchNumReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.UpdateExamRecordStatusReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.UpdatePartialExamRecordReq;
-import cn.com.qmth.examcloud.core.oe.student.api.response.CalcExamScoreResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.CalcFaceBiopsyResultResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.CheckPaperInExamResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamFaceLivenessVerifiesResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordDataIdsResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordNumResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordPaperStructResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordQuestionsResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetFaceBiopsyResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.HandInExamResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.UpdateExamRecordDataBatchNumResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.UpdateExamRecordStatusResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.UpdatePartialExamRecordResp;
+import cn.com.qmth.examcloud.core.oe.student.api.request.*;
+import cn.com.qmth.examcloud.core.oe.student.api.response.*;
 
 public interface ExamRecordDataCloudService extends CloudService {
 
+    /**
+     * 查询是否存在考试记录
+     */
+    ExistExamRecordDataResp existExamRecordData(ExistExamRecordDataReq req);
+
     GetExamRecordDataIdsResp getExamRecordDataIds(GetExamRecordDataIdsReq req);
 
     UpdateExamRecordDataBatchNumResp updateExamRecordDataBatchNum(UpdateExamRecordDataBatchNumReq req);
@@ -52,6 +33,7 @@ public interface ExamRecordDataCloudService extends CloudService {
 
     /**
      * 获取旧活体检测结果
+     *
      * @param req
      * @return
      */
@@ -59,6 +41,7 @@ public interface ExamRecordDataCloudService extends CloudService {
 
     /**
      * 获取新活检
+     *
      * @param req
      * @return
      */
@@ -80,6 +63,7 @@ public interface ExamRecordDataCloudService extends CloudService {
 
     /**
      * 获取考试记录数量
+     *
      * @param req
      * @return
      */
@@ -87,10 +71,12 @@ public interface ExamRecordDataCloudService extends CloudService {
 
     /**
      * 更新部分考试数据
+     *
      * @param req
      * @return
      */
     UpdatePartialExamRecordResp updatePartialExamRecord(UpdatePartialExamRecordReq req);
-    
+
     CheckPaperInExamResp checkPaperInExam(CheckPaperInExamReq req);
+
 }

+ 48 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/request/ExistExamRecordDataReq.java

@@ -0,0 +1,48 @@
+package cn.com.qmth.examcloud.core.oe.student.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+public class ExistExamRecordDataReq extends BaseRequest {
+
+    private static final long serialVersionUID = -2218185239574140092L;
+
+    /**
+     * 考试ID
+     */
+    private Long examId;
+
+    /**
+     * 学生ID
+     */
+    private Long studentId;
+
+    /**
+     * 课程ID
+     */
+    private Long courseId;
+
+    public Long getExamId() {
+        return examId;
+    }
+
+    public void setExamId(Long examId) {
+        this.examId = examId;
+    }
+
+    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;
+    }
+
+}

+ 27 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/response/ExistExamRecordDataResp.java

@@ -0,0 +1,27 @@
+package cn.com.qmth.examcloud.core.oe.student.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+
+public class ExistExamRecordDataResp extends BaseResponse {
+
+    private static final long serialVersionUID = -256317254513358255L;
+
+    private Boolean existed;
+
+    public ExistExamRecordDataResp(Boolean existed) {
+        this.existed = existed;
+    }
+
+    public ExistExamRecordDataResp() {
+
+    }
+
+    public Boolean getExisted() {
+        return existed;
+    }
+
+    public void setExisted(Boolean existed) {
+        this.existed = existed;
+    }
+
+}