deason 2 年之前
父节点
当前提交
05c92b60fa
共有 24 个文件被更改,包括 230 次插入47 次删除
  1. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/controller/BaseController.java
  2. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/controller/IndexController.java
  3. 3 3
      src/main/java/cn/com/qmth/examcloud/tool/controller/TaskController.java
  4. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/service/CommonService.java
  5. 2 2
      src/main/java/cn/com/qmth/examcloud/tool/service/TaskService.java
  6. 2 1
      src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/ExportStudentAnswerAndScoreDetailTask.java
  7. 2 0
      src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/vo/ExamQuestionVO.java
  8. 1 0
      src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/vo/ExamRecordQuestionsVO.java
  9. 5 1
      src/main/java/cn/com/qmth/examcloud/tool/service/query_paper_struct/QueryPaperStructTask.java
  10. 14 0
      src/main/java/cn/com/qmth/examcloud/tool/service/query_paper_struct/vo/GetPaperStructResp.java
  11. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/service/reset_student_password/ResetStudentPasswordTask.java
  12. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/service/update_correct_answer_and_re_fix_score/UpdateCorrectAnswerAndReFixScoreTask.java
  13. 18 0
      src/main/java/cn/com/qmth/examcloud/tool/vo/BaseResponse.java
  14. 2 8
      src/main/java/cn/com/qmth/examcloud/tool/vo/paper/AnswerType.java
  15. 33 0
      src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultPaper.java
  16. 33 0
      src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultQuestionGroup.java
  17. 53 0
      src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultQuestionStructureWrapper.java
  18. 37 0
      src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultQuestionUnitWrapper.java
  19. 13 20
      src/main/java/cn/com/qmth/examcloud/tool/vo/paper/QuestionType.java
  20. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/vo/task/TaskAdd.java
  21. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/vo/task/TaskQuery.java
  22. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/vo/user/Role.java
  23. 1 1
      src/main/java/cn/com/qmth/examcloud/tool/vo/user/User.java
  24. 3 3
      src/test/java/cn/com/qmth/examcloud/tool/ToolTest.java

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/controller/BaseController.java

@@ -1,7 +1,7 @@
 package cn.com.qmth.examcloud.tool.controller;
 
 import cn.com.qmth.examcloud.tool.config.Constants;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.web.context.request.RequestContextHolder;

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/controller/IndexController.java

@@ -2,7 +2,7 @@ package cn.com.qmth.examcloud.tool.controller;
 
 import cn.com.qmth.examcloud.tool.config.Constants;
 import cn.com.qmth.examcloud.tool.service.CommonService;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.GetMapping;

+ 3 - 3
src/main/java/cn/com/qmth/examcloud/tool/controller/TaskController.java

@@ -4,9 +4,9 @@ import cn.com.qmth.examcloud.tool.config.SysProperty;
 import cn.com.qmth.examcloud.tool.entity.TaskEntity;
 import cn.com.qmth.examcloud.tool.service.TaskService;
 import cn.com.qmth.examcloud.tool.utils.StatusException;
-import cn.com.qmth.examcloud.tool.vo.TaskAdd;
-import cn.com.qmth.examcloud.tool.vo.TaskQuery;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.task.TaskAdd;
+import cn.com.qmth.examcloud.tool.vo.task.TaskQuery;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/service/CommonService.java

@@ -5,7 +5,7 @@ import cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail
 import cn.com.qmth.examcloud.tool.utils.HttpHelper;
 import cn.com.qmth.examcloud.tool.utils.JsonMapper;
 import cn.com.qmth.examcloud.tool.vo.Pager;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import com.fasterxml.jackson.core.type.TypeReference;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

+ 2 - 2
src/main/java/cn/com/qmth/examcloud/tool/service/TaskService.java

@@ -7,8 +7,8 @@ import cn.com.qmth.examcloud.tool.enums.TaskType;
 import cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.ExportStudentAnswerAndScoreDetailTask;
 import cn.com.qmth.examcloud.tool.service.update_correct_answer_and_re_fix_score.UpdateCorrectAnswerAndReFixScoreTask;
 import cn.com.qmth.examcloud.tool.utils.StatusException;
-import cn.com.qmth.examcloud.tool.vo.TaskAdd;
-import cn.com.qmth.examcloud.tool.vo.TaskQuery;
+import cn.com.qmth.examcloud.tool.vo.task.TaskAdd;
+import cn.com.qmth.examcloud.tool.vo.task.TaskQuery;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;

+ 2 - 1
src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/ExportStudentAnswerAndScoreDetailTask.java

@@ -6,7 +6,8 @@ import cn.com.qmth.examcloud.tool.service.CommonService;
 import cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.vo.*;
 import cn.com.qmth.examcloud.tool.utils.*;
 import cn.com.qmth.examcloud.tool.vo.Pager;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
+import cn.com.qmth.examcloud.tool.vo.paper.QuestionType;
 import com.alibaba.excel.EasyExcel;
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.JsonNode;

+ 2 - 0
src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/vo/ExamQuestionVO.java

@@ -1,5 +1,7 @@
 package cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.vo;
 
+import cn.com.qmth.examcloud.tool.vo.paper.AnswerType;
+import cn.com.qmth.examcloud.tool.vo.paper.QuestionType;
 import lombok.Getter;
 import lombok.Setter;
 

+ 1 - 0
src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/vo/ExamRecordQuestionsVO.java

@@ -1,5 +1,6 @@
 package cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.vo;
 
+import cn.com.qmth.examcloud.tool.vo.paper.AnswerType;
 import lombok.Getter;
 import lombok.Setter;
 

+ 5 - 1
src/main/java/cn/com/qmth/examcloud/tool/service/query_paper_struct/QueryPaperStructTask.java

@@ -5,11 +5,12 @@ import cn.com.qmth.examcloud.tool.service.CommonService;
 import cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.vo.CourseVO;
 import cn.com.qmth.examcloud.tool.service.query_paper_struct.vo.ExamPaperVO;
 import cn.com.qmth.examcloud.tool.service.query_paper_struct.vo.ExtractConfigVO;
+import cn.com.qmth.examcloud.tool.service.query_paper_struct.vo.GetPaperStructResp;
 import cn.com.qmth.examcloud.tool.utils.HttpHelper;
 import cn.com.qmth.examcloud.tool.utils.JsonMapper;
 import cn.com.qmth.examcloud.tool.utils.SignUtils;
 import cn.com.qmth.examcloud.tool.vo.Pager;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import com.fasterxml.jackson.core.type.TypeReference;
 import org.apache.commons.collections4.CollectionUtils;
 import org.slf4j.Logger;
@@ -106,7 +107,10 @@ public class QueryPaperStructTask {
 
         String url = sysProperty.getServerUrl() + "/api/exchange/outer/question/getPaperStruct";
         String json = HttpHelper.post(url, headers, params);
+
+        GetPaperStructResp resp = new JsonMapper().parseJson(json, GetPaperStructResp.class);
         System.out.println(json);
+
     }
 
 }

+ 14 - 0
src/main/java/cn/com/qmth/examcloud/tool/service/query_paper_struct/vo/GetPaperStructResp.java

@@ -0,0 +1,14 @@
+package cn.com.qmth.examcloud.tool.service.query_paper_struct.vo;
+
+import cn.com.qmth.examcloud.tool.vo.BaseResponse;
+import cn.com.qmth.examcloud.tool.vo.paper.DefaultPaper;
+import lombok.Getter;
+import lombok.Setter;
+
+@Setter
+@Getter
+public class GetPaperStructResp extends BaseResponse {
+
+    private DefaultPaper defaultPaper;
+
+}

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/service/reset_student_password/ResetStudentPasswordTask.java

@@ -6,7 +6,7 @@ import cn.com.qmth.examcloud.tool.service.reset_student_password.vo.StudentVO;
 import cn.com.qmth.examcloud.tool.utils.HttpHelper;
 import cn.com.qmth.examcloud.tool.utils.JsonMapper;
 import cn.com.qmth.examcloud.tool.vo.PageInfo;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import com.fasterxml.jackson.core.type.TypeReference;
 import org.apache.commons.collections4.CollectionUtils;
 import org.slf4j.Logger;

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/service/update_correct_answer_and_re_fix_score/UpdateCorrectAnswerAndReFixScoreTask.java

@@ -9,7 +9,7 @@ import cn.com.qmth.examcloud.tool.utils.HttpHelper;
 import cn.com.qmth.examcloud.tool.utils.JsonMapper;
 import cn.com.qmth.examcloud.tool.utils.StatusException;
 import cn.com.qmth.examcloud.tool.vo.Pager;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.JsonNode;
 import org.apache.commons.collections4.CollectionUtils;

+ 18 - 0
src/main/java/cn/com/qmth/examcloud/tool/vo/BaseResponse.java

@@ -0,0 +1,18 @@
+package cn.com.qmth.examcloud.tool.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+@Setter
+@Getter
+public class BaseResponse implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    private Long cost;
+
+    private String des;
+
+}

+ 2 - 8
src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/vo/AnswerType.java → src/main/java/cn/com/qmth/examcloud/tool/vo/paper/AnswerType.java

@@ -1,4 +1,4 @@
-package cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.vo;
+package cn.com.qmth.examcloud.tool.vo.paper;
 
 /**
  * 作答类型
@@ -19,14 +19,8 @@ public enum AnswerType {
 
     MULTIPLE_PICTURES("MP", "多个照片");
 
-    /**
-     * 简码
-     */
     private String code;
 
-    /**
-     * 描述
-     */
     private String desc;
 
     AnswerType(String code, String desc) {
@@ -42,4 +36,4 @@ public enum AnswerType {
         return code;
     }
 
-}
+}

+ 33 - 0
src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultPaper.java

@@ -0,0 +1,33 @@
+package cn.com.qmth.examcloud.tool.vo.paper;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 试卷结构
+ */
+@Setter
+@Getter
+public class DefaultPaper implements Serializable {
+
+    private static final long serialVersionUID = -5979287118960427883L;
+
+    /**
+     * 试卷名称
+     */
+    private String name;
+
+    /**
+     * 是否全是客观题
+     */
+    private Boolean fullyObjective;
+
+    /**
+     * 题分组集合
+     */
+    private List<DefaultQuestionGroup> questionGroupList;
+
+}

+ 33 - 0
src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultQuestionGroup.java

@@ -0,0 +1,33 @@
+package cn.com.qmth.examcloud.tool.vo.paper;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 题分组集合
+ */
+@Setter
+@Getter
+public class DefaultQuestionGroup implements Serializable {
+
+    private static final long serialVersionUID = 2149814711274942645L;
+
+    /**
+     * 题组名称
+     */
+    private String groupName;
+
+    /**
+     * 题包装器集合
+     */
+    private List<DefaultQuestionStructureWrapper> questionWrapperList;
+
+    /**
+     * 题组总分
+     */
+    private Double groupScore;
+
+}

+ 53 - 0
src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultQuestionStructureWrapper.java

@@ -0,0 +1,53 @@
+package cn.com.qmth.examcloud.tool.vo.paper;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 题结构包装器
+ */
+@Setter
+@Getter
+public class DefaultQuestionStructureWrapper implements Serializable {
+
+    private static final long serialVersionUID = 8423916951155451548L;
+
+    /**
+     * 题ID
+     */
+    private String questionId;
+
+    /**
+     * 版本号
+     */
+    private String version;
+
+    /**
+     * 题分数
+     */
+    private Double questionScore;
+
+    /**
+     * 限制播放次数
+     */
+    private Integer limitedPlayTimes;
+
+    /**
+     * 已播放次数
+     */
+    private Integer playedTimes;
+
+    /**
+     * 作答限时
+     */
+    private Long timeLimit;
+
+    /**
+     * 题单元包装器
+     */
+    private List<DefaultQuestionUnitWrapper> questionUnitWrapperList;
+
+}

+ 37 - 0
src/main/java/cn/com/qmth/examcloud/tool/vo/paper/DefaultQuestionUnitWrapper.java

@@ -0,0 +1,37 @@
+package cn.com.qmth.examcloud.tool.vo.paper;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+
+/**
+ * 题单元包装器
+ */
+@Setter
+@Getter
+public class DefaultQuestionUnitWrapper implements Serializable {
+
+    private static final long serialVersionUID = 7584275153456817959L;
+
+    /**
+     * 选项排序值
+     */
+    private Integer[] optionPermutation;
+
+    /**
+     * 题分数
+     */
+    private Double questionScore;
+
+    /**
+     * 题型
+     */
+    private QuestionType questionType;
+
+    /**
+     * 作答类型
+     */
+    private AnswerType answerType;
+
+}

+ 13 - 20
src/main/java/cn/com/qmth/examcloud/tool/service/export_student_answer_and_score_detail/vo/QuestionType.java → src/main/java/cn/com/qmth/examcloud/tool/vo/paper/QuestionType.java

@@ -1,38 +1,20 @@
-package cn.com.qmth.examcloud.tool.service.export_student_answer_and_score_detail.vo;
+package cn.com.qmth.examcloud.tool.vo.paper;
 
 /**
  * 题型
  */
 public enum QuestionType {
 
-    /**
-     * 单选题
-     */
     SINGLE_CHOICE("单选题"),
 
-    /**
-     * 多选题
-     */
     MULTIPLE_CHOICE("多选题"),
 
-    /**
-     * 填空题
-     */
     FILL_UP("填空题"),
 
-    /**
-     * 问答题
-     */
     ESSAY("问答题"),
 
-    /**
-     * 判断题
-     */
     TRUE_OR_FALSE("判断题");
 
-    /**
-     * 描述
-     */
     private String desc;
 
     QuestionType(String desc) {
@@ -43,4 +25,15 @@ public enum QuestionType {
         return desc;
     }
 
-}
+    /**
+     * 是否为客观题
+     */
+    public static boolean isObjective(QuestionType type) {
+        if (type == null) {
+            return false;
+        }
+
+        return SINGLE_CHOICE == type || MULTIPLE_CHOICE == type || TRUE_OR_FALSE == type;
+    }
+
+}

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/vo/TaskAdd.java → src/main/java/cn/com/qmth/examcloud/tool/vo/task/TaskAdd.java

@@ -1,4 +1,4 @@
-package cn.com.qmth.examcloud.tool.vo;
+package cn.com.qmth.examcloud.tool.vo.task;
 
 import cn.com.qmth.examcloud.tool.enums.TaskType;
 

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/vo/TaskQuery.java → src/main/java/cn/com/qmth/examcloud/tool/vo/task/TaskQuery.java

@@ -1,4 +1,4 @@
-package cn.com.qmth.examcloud.tool.vo;
+package cn.com.qmth.examcloud.tool.vo.task;
 
 import cn.com.qmth.examcloud.tool.enums.TaskStatus;
 import cn.com.qmth.examcloud.tool.enums.TaskType;

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/vo/Role.java → src/main/java/cn/com/qmth/examcloud/tool/vo/user/Role.java

@@ -1,4 +1,4 @@
-package cn.com.qmth.examcloud.tool.vo;
+package cn.com.qmth.examcloud.tool.vo.user;
 
 /**
  * 角色

+ 1 - 1
src/main/java/cn/com/qmth/examcloud/tool/vo/User.java → src/main/java/cn/com/qmth/examcloud/tool/vo/user/User.java

@@ -1,4 +1,4 @@
-package cn.com.qmth.examcloud.tool.vo;
+package cn.com.qmth.examcloud.tool.vo.user;
 
 import cn.com.qmth.examcloud.tool.enums.UserType;
 

+ 3 - 3
src/test/java/cn/com/qmth/examcloud/tool/ToolTest.java

@@ -4,7 +4,7 @@ import cn.com.qmth.examcloud.tool.config.SysProperty;
 import cn.com.qmth.examcloud.tool.service.CommonService;
 import cn.com.qmth.examcloud.tool.service.query_paper_struct.QueryPaperStructTask;
 import cn.com.qmth.examcloud.tool.service.reset_student_password.ResetStudentPasswordTask;
-import cn.com.qmth.examcloud.tool.vo.User;
+import cn.com.qmth.examcloud.tool.vo.user.User;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -25,13 +25,13 @@ public class ToolTest {
     private ResetStudentPasswordTask resetStudentPasswordTask;
 
     @Autowired
-    private QueryPaperStructTask paperStructTask;
+    private QueryPaperStructTask queryPaperStructTask;
 
     @Test
     public void demo() throws Exception {
         // testLogin();
         // resetStudentPasswordTask.start(0L);
-        // paperStructTask.start(0L);
+        // queryPaperStructTask.start(0L);
     }
 
     private void testLogin() {