فهرست منبع

同步功能完善

lideyin 5 سال پیش
والد
کامیت
e88b2100e8
16فایلهای تغییر یافته به همراه1049 افزوده شده و 21 حذف شده
  1. 6 5
      examcloud-core-oe-admin-api/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/bean/FaceBiopsyBean.java
  2. 34 8
      examcloud-core-oe-student-api-client/src/main/java/cn/com/qmth/examcloud/core/oe/student/client/ExamRecordDataCloudServiceClient.java
  3. 23 8
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/ExamRecordDataCloudService.java
  4. 141 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/ExamFaceLivenessVerifyBean.java
  5. 90 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/FaceBiopsyBean.java
  6. 119 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/FaceBiopsyItemBean.java
  7. 175 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/FaceBiopsyItemStepBean.java
  8. 218 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/StuExamQuestionBean.java
  9. 26 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/request/GetExamFaceLivenessVerifiesReq.java
  10. 26 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/request/GetExamRecordPaperStructReq.java
  11. 26 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/request/GetExamRecordQuestionsReq.java
  12. 26 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/request/GetFaceBiopsyReq.java
  13. 26 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/response/GetExamFaceLivenessVerifiesResp.java
  14. 38 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/response/GetExamRecordPaperStructResp.java
  15. 48 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/response/GetExamRecordQuestionsResp.java
  16. 27 0
      examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/response/GetFaceBiopsyResp.java

+ 6 - 5
examcloud-core-oe-admin-api/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/bean/FaceBiopsyBean.java

@@ -1,6 +1,7 @@
 package cn.com.qmth.examcloud.core.oe.admin.api.bean;
 
 import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+import java.util.List;
 
 /**
  * @Description 新活检结果实体
@@ -37,7 +38,7 @@ public class FaceBiopsyBean implements JsonSerializable {
     /**
      * 活检检测明细
      */
-    private FaceBiopsyItemBean faceBiopsyItem;
+    private List<FaceBiopsyItemBean> faceBiopsyItems;
 
     public Long getRootOrgId() {
         return rootOrgId;
@@ -79,11 +80,11 @@ public class FaceBiopsyBean implements JsonSerializable {
         this.errorMsg = errorMsg;
     }
 
-    public FaceBiopsyItemBean getFaceBiopsyItem() {
-        return faceBiopsyItem;
+    public List<FaceBiopsyItemBean> getFaceBiopsyItems() {
+        return faceBiopsyItems;
     }
 
-    public void setFaceBiopsyItem(FaceBiopsyItemBean faceBiopsyItem) {
-        this.faceBiopsyItem = faceBiopsyItem;
+    public void setFaceBiopsyItems(List<FaceBiopsyItemBean> faceBiopsyItems) {
+        this.faceBiopsyItems = faceBiopsyItems;
     }
 }

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

@@ -1,16 +1,10 @@
 package cn.com.qmth.examcloud.core.oe.student.client;
 
-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.response.CalcExamScoreResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.CalcFaceBiopsyResultResp;
+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;
-import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordDataIdsReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.UpdateExamRecordDataBatchNumReq;
-import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordDataIdsResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.UpdateExamRecordDataBatchNumResp;
 
 @Service("examRecordDataCloudService")
 public class ExamRecordDataCloudServiceClient extends AbstractCloudClientSupport
@@ -54,5 +48,37 @@ public class ExamRecordDataCloudServiceClient extends AbstractCloudClientSupport
         return post("examRecordData/calcExamScore", req, CalcExamScoreResp.class);
     }
 
+    /**
+     * 获取旧活体检测结果
+     *
+     * @param req
+     * @return
+     */
+    @Override
+    public GetExamFaceLivenessVerifiesResp getExamFaceLivenessVerifies(GetExamFaceLivenessVerifiesReq req) {
+        return post("examRecordData/getExamFaceLivenessVerifies", req, GetExamFaceLivenessVerifiesResp.class);
+    }
+
+    /**
+     * 获取新活检
+     *
+     * @param req
+     * @return
+     */
+    @Override
+    public GetFaceBiopsyResp getFaceBiopsy(GetFaceBiopsyReq req) {
+        return post("examRecordData/getFaceBiopsy", req, GetFaceBiopsyResp.class);
+    }
+
+    @Override
+    public GetExamRecordQuestionsResp getExamRecordQuestions(GetExamRecordQuestionsReq req) {
+        return post("examRecordData/getExamRecordQuestions", req, GetExamRecordQuestionsResp.class);
+    }
+
+    @Override
+    public GetExamRecordPaperStructResp getExamRecordPaperStruct(GetExamRecordPaperStructReq req) {
+        return post("examRecordData/getExamRecordPaperStruct", req, GetExamRecordPaperStructResp.class);
+    }
+
 
 }

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

@@ -1,14 +1,10 @@
 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.GetExamRecordDataIdsReq;
-import cn.com.qmth.examcloud.core.oe.student.api.request.UpdateExamRecordDataBatchNumReq;
-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.GetExamRecordDataIdsResp;
-import cn.com.qmth.examcloud.core.oe.student.api.response.UpdateExamRecordDataBatchNumResp;
+import cn.com.qmth.examcloud.core.oe.student.api.request.*;
+import cn.com.qmth.examcloud.core.oe.student.api.response.*;
+
+import java.util.List;
 
 public interface ExamRecordDataCloudService extends CloudService {
 
@@ -31,4 +27,23 @@ public interface ExamRecordDataCloudService extends CloudService {
      * @return
      */
     CalcExamScoreResp calcExamScore(CalcExamScoreReq req);
+
+    /**
+     * 获取旧活体检测结果
+     * @param req
+     * @return
+     */
+    GetExamFaceLivenessVerifiesResp getExamFaceLivenessVerifies(GetExamFaceLivenessVerifiesReq req);
+
+    /**
+     * 获取新活检
+     * @param req
+     * @return
+     */
+    GetFaceBiopsyResp getFaceBiopsy(GetFaceBiopsyReq req);
+
+    GetExamRecordQuestionsResp getExamRecordQuestions(GetExamRecordQuestionsReq req);
+
+    GetExamRecordPaperStructResp getExamRecordPaperStruct(GetExamRecordPaperStructReq req);
+
 }

+ 141 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/ExamFaceLivenessVerifyBean.java

@@ -0,0 +1,141 @@
+package cn.com.qmth.examcloud.core.oe.student.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+import java.util.Date;
+
+/**
+ * @Description 新活检结果实体
+ * @Author lideyin
+ * @Date 2019/12/20 17:16
+ * @Version 1.0
+ */
+public class ExamFaceLivenessVerifyBean implements JsonSerializable {
+
+    private static final long serialVersionUID = 1361529826449473760L;
+    /**
+     * 主键ID
+     */
+    private Long id;
+    /**
+     * 考试记录 DataID
+     */
+    private Long examRecordDataId;
+    /**
+     * 验证考试时间
+     */
+    private Date startTime;
+    /**
+     * 验证使用时间
+     */
+    private Long usedTime;
+    /**
+     * faceId返回json:notify_url返回
+     * 网页端活体检测及比对返回值说明:https://faceid.com/pages/documents/5680508
+     */
+    private String resultJson;
+    /**
+     * 验证结果
+     */
+    private String verifyResult;
+
+    /**
+     * https://api.megvii.com/faceid/liveness/v2/get_result
+     * 用于活体结果反查
+     */
+    private String bizId;
+
+    /**
+     * 发生错误
+     */
+    private Boolean isError;
+    /**
+     * 错误信息
+     */
+    private String errorMsg;
+
+    /**
+     * 当前记录操作次数
+     */
+    private Integer operateNum;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public Date getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(Date startTime) {
+        this.startTime = startTime;
+    }
+
+    public Long getUsedTime() {
+        return usedTime;
+    }
+
+    public void setUsedTime(Long usedTime) {
+        this.usedTime = usedTime;
+    }
+
+    public String getResultJson() {
+        return resultJson;
+    }
+
+    public void setResultJson(String resultJson) {
+        this.resultJson = resultJson;
+    }
+
+    public String getVerifyResult() {
+        return verifyResult;
+    }
+
+    public void setVerifyResult(String verifyResult) {
+        this.verifyResult = verifyResult;
+    }
+
+    public String getBizId() {
+        return bizId;
+    }
+
+    public void setBizId(String bizId) {
+        this.bizId = bizId;
+    }
+
+    public Boolean getError() {
+        return isError;
+    }
+
+    public void setError(Boolean error) {
+        isError = error;
+    }
+
+    public String getErrorMsg() {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg) {
+        this.errorMsg = errorMsg;
+    }
+
+    public Integer getOperateNum() {
+        return operateNum;
+    }
+
+    public void setOperateNum(Integer operateNum) {
+        this.operateNum = operateNum;
+    }
+}

+ 90 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/FaceBiopsyBean.java

@@ -0,0 +1,90 @@
+package cn.com.qmth.examcloud.core.oe.student.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+import java.util.List;
+
+/**
+ * @Description 新活检结果实体
+ * @Author lideyin
+ * @Date 2019/12/20 17:16
+ * @Version 1.0
+ */
+public class FaceBiopsyBean implements JsonSerializable {
+
+    private static final long serialVersionUID = -622363885150638414L;
+
+    /**
+     * 组织机构id
+     */
+    private Long rootOrgId;
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+    /**
+     * 检测结果
+     */
+    private Boolean result;
+
+    /**
+     * 已检测次数
+     */
+    private int verifiedTimes;
+    /**
+     * 错误信息
+     */
+    private String errorMsg;
+
+    /**
+     * 活检检测明细
+     */
+    private List<FaceBiopsyItemBean> faceBiopsyItems;
+
+    public Long getRootOrgId() {
+        return rootOrgId;
+    }
+
+    public void setRootOrgId(Long rootOrgId) {
+        this.rootOrgId = rootOrgId;
+    }
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public Boolean getResult() {
+        return result;
+    }
+
+    public void setResult(Boolean result) {
+        this.result = result;
+    }
+
+    public int getVerifiedTimes() {
+        return verifiedTimes;
+    }
+
+    public void setVerifiedTimes(int verifiedTimes) {
+        this.verifiedTimes = verifiedTimes;
+    }
+
+    public String getErrorMsg() {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg) {
+        this.errorMsg = errorMsg;
+    }
+
+    public List<FaceBiopsyItemBean> getFaceBiopsyItems() {
+        return faceBiopsyItems;
+    }
+
+    public void setFaceBiopsyItems(List<FaceBiopsyItemBean> faceBiopsyItems) {
+        this.faceBiopsyItems = faceBiopsyItems;
+    }
+}

+ 119 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/FaceBiopsyItemBean.java

@@ -0,0 +1,119 @@
+package cn.com.qmth.examcloud.core.oe.student.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+import java.util.List;
+
+/**
+ * @Description 新活检结果明细实体
+ * @Author lideyin
+ * @Date 2019/12/20 17:16
+ * @Version 1.0
+ */
+public class FaceBiopsyItemBean implements JsonSerializable {
+
+    private static final long serialVersionUID = -322561973794249532L;
+
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+
+    /**
+     * 人脸识别结果id
+     */
+    private Long faceBiopsyId;
+
+    /**
+     * 人脸识别类型
+     */
+    private String faceBiopsyType;
+
+    /**
+     * 检测是否已完成
+     */
+    private Boolean completed;
+
+    /**
+     * 检测结果
+     */
+    private Boolean result;
+    /**
+     * 错误信息
+     */
+    private String errorMsg;
+
+    /**
+     * 是否在冻结时间内
+     */
+    private Boolean inFreezeTime;
+
+    /**
+     * 活检检测步骤
+     */
+    private List<FaceBiopsyItemStepBean> faceBiopsyItemSteps;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public Long getFaceBiopsyId() {
+        return faceBiopsyId;
+    }
+
+    public void setFaceBiopsyId(Long faceBiopsyId) {
+        this.faceBiopsyId = faceBiopsyId;
+    }
+
+    public String getFaceBiopsyType() {
+        return faceBiopsyType;
+    }
+
+    public void setFaceBiopsyType(String faceBiopsyType) {
+        this.faceBiopsyType = faceBiopsyType;
+    }
+
+    public Boolean getCompleted() {
+        return completed;
+    }
+
+    public void setCompleted(Boolean completed) {
+        this.completed = completed;
+    }
+
+    public Boolean getResult() {
+        return result;
+    }
+
+    public void setResult(Boolean result) {
+        this.result = result;
+    }
+
+    public String getErrorMsg() {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg) {
+        this.errorMsg = errorMsg;
+    }
+
+    public Boolean getInFreezeTime() {
+        return inFreezeTime;
+    }
+
+    public void setInFreezeTime(Boolean inFreezeTime) {
+        this.inFreezeTime = inFreezeTime;
+    }
+
+    public List<FaceBiopsyItemStepBean> getFaceBiopsyItemSteps() {
+        return faceBiopsyItemSteps;
+    }
+
+    public void setFaceBiopsyItemSteps(List<FaceBiopsyItemStepBean> faceBiopsyItemSteps) {
+        this.faceBiopsyItemSteps = faceBiopsyItemSteps;
+    }
+}

+ 175 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/FaceBiopsyItemStepBean.java

@@ -0,0 +1,175 @@
+package cn.com.qmth.examcloud.core.oe.student.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+
+/**
+ * @Description 新活检结果步骤实体
+ * @Author lideyin
+ * @Date 2019/12/20 17:16
+ * @Version 1.0
+ */
+public class FaceBiopsyItemStepBean implements JsonSerializable {
+
+    private static final long serialVersionUID = -322561973794249532L;
+
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+    /**
+     * 人脸活体检测明细id
+     */
+    private Long faceBiopsyItemId;
+
+    /**
+     * 步骤动作
+     */
+    private String action;
+
+    /**
+     * 资源文件相对路径
+     */
+    private String resourceRelativePath;
+    /**
+     * 资源文件类型
+     */
+    private String resourceType;
+
+    /**
+     * 动作时长
+     */
+    private Integer actionStay;
+
+    /**
+     * 检测结果
+     */
+    private Boolean result;
+    /**
+     * 错误信息
+     */
+    private String errorMsg;
+    /**
+     * 扩展属性1
+     */
+    private String ext1;
+    /**
+     * 扩展属性2
+     */
+    private String ext2;
+    /**
+     * 扩展属性3
+     */
+    private String ext3;
+    /**
+     * 扩展属性4
+     */
+    private String ext4;
+    /**
+     * 扩展属性5
+     */
+    private String ext5;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public Long getFaceBiopsyItemId() {
+        return faceBiopsyItemId;
+    }
+
+    public void setFaceBiopsyItemId(Long faceBiopsyItemId) {
+        this.faceBiopsyItemId = faceBiopsyItemId;
+    }
+
+    public String getAction() {
+        return action;
+    }
+
+    public void setAction(String action) {
+        this.action = action;
+    }
+
+    public String getResourceRelativePath() {
+        return resourceRelativePath;
+    }
+
+    public void setResourceRelativePath(String resourceRelativePath) {
+        this.resourceRelativePath = resourceRelativePath;
+    }
+
+    public String getResourceType() {
+        return resourceType;
+    }
+
+    public void setResourceType(String resourceType) {
+        this.resourceType = resourceType;
+    }
+
+    public Integer getActionStay() {
+        return actionStay;
+    }
+
+    public void setActionStay(Integer actionStay) {
+        this.actionStay = actionStay;
+    }
+
+    public Boolean getResult() {
+        return result;
+    }
+
+    public void setResult(Boolean result) {
+        this.result = result;
+    }
+
+    public String getErrorMsg() {
+        return errorMsg;
+    }
+
+    public void setErrorMsg(String errorMsg) {
+        this.errorMsg = errorMsg;
+    }
+
+    public String getExt1() {
+        return ext1;
+    }
+
+    public void setExt1(String ext1) {
+        this.ext1 = ext1;
+    }
+
+    public String getExt2() {
+        return ext2;
+    }
+
+    public void setExt2(String ext2) {
+        this.ext2 = ext2;
+    }
+
+    public String getExt3() {
+        return ext3;
+    }
+
+    public void setExt3(String ext3) {
+        this.ext3 = ext3;
+    }
+
+    public String getExt4() {
+        return ext4;
+    }
+
+    public void setExt4(String ext4) {
+        this.ext4 = ext4;
+    }
+
+    public String getExt5() {
+        return ext5;
+    }
+
+    public void setExt5(String ext5) {
+        this.ext5 = ext5;
+    }
+}

+ 218 - 0
examcloud-core-oe-student-api/src/main/java/cn/com/qmth/examcloud/core/oe/student/api/bean/StuExamQuestionBean.java

@@ -0,0 +1,218 @@
+package cn.com.qmth.examcloud.core.oe.student.api.bean;
+
+import cn.com.qmth.examcloud.api.commons.exchange.JsonSerializable;
+import cn.com.qmth.examcloud.question.commons.core.question.AnswerType;
+import cn.com.qmth.examcloud.question.commons.core.question.QuestionType;
+
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import java.util.Date;
+
+/**
+ * @Description 题目详情
+ * @Author lideyin
+ * @Date 2019/12/24 14:34
+ * @Version 1.0
+ */
+public class StuExamQuestionBean implements JsonSerializable {
+
+    private static final long serialVersionUID = 1361529826449473760L;
+
+    /**
+     * 作答记录是否在mongo
+     */
+    private Boolean isInMongo;
+
+    /**
+     * 作答记录在mongo中的id
+     */
+    private String examQuestionTempId;
+
+    /**
+     * 考试记录Data Id
+     */
+    private Long examRecordDataId;
+    /**
+     * 大题号
+     */
+    private Integer mainNumber;
+    /**
+     * 原题ID
+     */
+    private String questionId;
+    /**
+     * 顺序
+     */
+    private Integer order;
+    /**
+     * 小题分数
+     */
+    private Double questionScore;
+    /**
+     * 小题类型
+     */
+    private QuestionType questionType;
+    /**
+     * 标准答案
+     */
+    private String correctAnswer;
+    /**
+     * 考生作答
+     */
+    private String studentAnswer;
+    /**
+     * 学生小题得分
+     */
+    private Double studentScore;
+    /**
+     * 是否作答
+     */
+    private Boolean isAnswer;
+    /**
+     * 是否标记
+     */
+    private Boolean isSign;
+
+    /**
+     * 选项排序值
+     */
+    private Integer[] optionPermutation;
+
+    /**
+     * 音频播放次数
+     */
+    private String audioPlayTimes;
+    /**
+     * 题目作答类型
+     */
+    @Enumerated(EnumType.STRING)
+    private AnswerType answerType;
+
+    public Boolean getInMongo() {
+        return isInMongo;
+    }
+
+    public void setInMongo(Boolean inMongo) {
+        isInMongo = inMongo;
+    }
+
+    public String getExamQuestionTempId() {
+        return examQuestionTempId;
+    }
+
+    public void setExamQuestionTempId(String examQuestionTempId) {
+        this.examQuestionTempId = examQuestionTempId;
+    }
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public Integer getMainNumber() {
+        return mainNumber;
+    }
+
+    public void setMainNumber(Integer mainNumber) {
+        this.mainNumber = mainNumber;
+    }
+
+    public String getQuestionId() {
+        return questionId;
+    }
+
+    public void setQuestionId(String questionId) {
+        this.questionId = questionId;
+    }
+
+    public Integer getOrder() {
+        return order;
+    }
+
+    public void setOrder(Integer order) {
+        this.order = order;
+    }
+
+    public Double getQuestionScore() {
+        return questionScore;
+    }
+
+    public void setQuestionScore(Double questionScore) {
+        this.questionScore = questionScore;
+    }
+
+    public QuestionType getQuestionType() {
+        return questionType;
+    }
+
+    public void setQuestionType(QuestionType questionType) {
+        this.questionType = questionType;
+    }
+
+    public String getCorrectAnswer() {
+        return correctAnswer;
+    }
+
+    public void setCorrectAnswer(String correctAnswer) {
+        this.correctAnswer = correctAnswer;
+    }
+
+    public String getStudentAnswer() {
+        return studentAnswer;
+    }
+
+    public void setStudentAnswer(String studentAnswer) {
+        this.studentAnswer = studentAnswer;
+    }
+
+    public Double getStudentScore() {
+        return studentScore;
+    }
+
+    public void setStudentScore(Double studentScore) {
+        this.studentScore = studentScore;
+    }
+
+    public Boolean getAnswer() {
+        return isAnswer;
+    }
+
+    public void setAnswer(Boolean answer) {
+        isAnswer = answer;
+    }
+
+    public Boolean getSign() {
+        return isSign;
+    }
+
+    public void setSign(Boolean sign) {
+        isSign = sign;
+    }
+
+    public Integer[] getOptionPermutation() {
+        return optionPermutation;
+    }
+
+    public void setOptionPermutation(Integer[] optionPermutation) {
+        this.optionPermutation = optionPermutation;
+    }
+
+    public String getAudioPlayTimes() {
+        return audioPlayTimes;
+    }
+
+    public void setAudioPlayTimes(String audioPlayTimes) {
+        this.audioPlayTimes = audioPlayTimes;
+    }
+
+    public AnswerType getAnswerType() {
+        return answerType;
+    }
+
+    public void setAnswerType(AnswerType answerType) {
+        this.answerType = answerType;
+    }
+}

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

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.oe.student.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * @Description 活体检测请求实体
+ * @Author lideyin
+ * @Date 2019/12/23 19:14
+ * @Version 1.0
+ */
+public class GetExamFaceLivenessVerifiesReq extends BaseRequest {
+
+    private static final long serialVersionUID = 5387513936917167748L;
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+}

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

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.oe.student.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * @Description 获取试卷作答结构
+ * @Author lideyin
+ * @Date 2019/12/19 14:20
+ * @Version 1.0
+ */
+public class GetExamRecordPaperStructReq extends BaseRequest {
+
+    private static final long serialVersionUID = 7287520603393647287L;
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+}

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

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.oe.student.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * @Description 获取考试作答记录
+ * @Author lideyin
+ * @Date 2019/12/19 14:20
+ * @Version 1.0
+ */
+public class GetExamRecordQuestionsReq extends BaseRequest {
+
+    private static final long serialVersionUID = 7287520603393647287L;
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+}

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

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.oe.student.api.request;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseRequest;
+
+/**
+ * @Description 活体检测请求实体
+ * @Author lideyin
+ * @Date 2019/12/23 19:14
+ * @Version 1.0
+ */
+public class GetFaceBiopsyReq extends BaseRequest {
+
+    private static final long serialVersionUID = -4336696391157895475L;
+    /**
+     * 考试记录id
+     */
+    private Long examRecordDataId;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+}

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

@@ -0,0 +1,26 @@
+package cn.com.qmth.examcloud.core.oe.student.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.oe.student.api.bean.ExamFaceLivenessVerifyBean;
+import java.util.List;
+
+/**
+ * @Description 获取活体检测响应实体
+ * @Author lideyin
+ * @Date 2019/12/23 19:11
+ * @Version 1.0
+ */
+public class GetExamFaceLivenessVerifiesResp extends BaseResponse {
+
+    private static final long serialVersionUID = -5923327991066074536L;
+
+    private List<ExamFaceLivenessVerifyBean> examFaceLivenessVerifis;
+
+    public List<ExamFaceLivenessVerifyBean> getExamFaceLivenessVerifis() {
+        return examFaceLivenessVerifis;
+    }
+
+    public void setExamFaceLivenessVerifis(List<ExamFaceLivenessVerifyBean> examFaceLivenessVerifis) {
+        this.examFaceLivenessVerifis = examFaceLivenessVerifis;
+    }
+}

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

@@ -0,0 +1,38 @@
+package cn.com.qmth.examcloud.core.oe.student.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.oe.student.api.bean.StuExamQuestionBean;
+import cn.com.qmth.examcloud.question.commons.core.paper.DefaultPaper;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Description 获取考试试卷结构
+ * @Author lideyin
+ * @Date 2019/12/24 14:25
+ * @Version 1.0
+ */
+public class GetExamRecordPaperStructResp extends BaseResponse {
+    private static final long serialVersionUID = 591440828152196651L;
+
+    private String id;
+
+    private DefaultPaper defaultPaper;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public DefaultPaper getDefaultPaper() {
+        return defaultPaper;
+    }
+
+    public void setDefaultPaper(DefaultPaper defaultPaper) {
+        this.defaultPaper = defaultPaper;
+    }
+}

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

@@ -0,0 +1,48 @@
+package cn.com.qmth.examcloud.core.oe.student.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.oe.student.api.bean.StuExamQuestionBean;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Description 获取考试作答记录
+ * @Author lideyin
+ * @Date 2019/12/24 14:25
+ * @Version 1.0
+ */
+public class GetExamRecordQuestionsResp extends BaseResponse {
+
+    private static final long serialVersionUID = 708416495444531841L;
+
+    private Long examRecordDataId;
+
+    private Date creationTime;
+
+    private List<StuExamQuestionBean> examQuestions;
+
+    public Long getExamRecordDataId() {
+        return examRecordDataId;
+    }
+
+    public void setExamRecordDataId(Long examRecordDataId) {
+        this.examRecordDataId = examRecordDataId;
+    }
+
+    public Date getCreationTime() {
+        return creationTime;
+    }
+
+    public void setCreationTime(Date creationTime) {
+        this.creationTime = creationTime;
+    }
+
+    public List<StuExamQuestionBean> getExamQuestions() {
+        return examQuestions;
+    }
+
+    public void setExamQuestions(List<StuExamQuestionBean> examQuestions) {
+        this.examQuestions = examQuestions;
+    }
+}

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

@@ -0,0 +1,27 @@
+package cn.com.qmth.examcloud.core.oe.student.api.response;
+
+import cn.com.qmth.examcloud.api.commons.exchange.BaseResponse;
+import cn.com.qmth.examcloud.core.oe.student.api.bean.FaceBiopsyBean;
+
+import java.util.Date;
+
+/**
+ * @Description 获取活体检测响应实体
+ * @Author lideyin
+ * @Date 2019/12/23 19:11
+ * @Version 1.0
+ */
+public class GetFaceBiopsyResp extends BaseResponse {
+
+    private static final long serialVersionUID = -20645117752645119L;
+
+    private FaceBiopsyBean faceBiopsyBean;
+
+    public FaceBiopsyBean getFaceBiopsyBean() {
+        return faceBiopsyBean;
+    }
+
+    public void setFaceBiopsyBean(FaceBiopsyBean faceBiopsyBean) {
+        this.faceBiopsyBean = faceBiopsyBean;
+    }
+}