Prechádzať zdrojové kódy

题型查询接口调整

mingfu 3 týždňov pred
rodič
commit
2edf421dda

+ 13 - 0
ie-admin/src/main/java/com/ruoyi/web/controller/dz/DzSubjectController.java

@@ -2,6 +2,10 @@ package com.ruoyi.web.controller.dz;
 
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.common.core.domain.AjaxResult2;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -29,6 +33,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
  */
 @RestController
 @RequestMapping("/dz/subject")
+@Api(tags = "后台-科目")
 public class DzSubjectController extends BaseController
 {
     @Autowired
@@ -46,6 +51,14 @@ public class DzSubjectController extends BaseController
         return getDataTable(list);
     }
 
+    @GetMapping("/listAll")
+    @ApiOperation("知识点列表")
+    public AjaxResult2<List<DzSubject>> listAll(DzSubject dzSubject)
+    {
+        List<DzSubject> list = dzSubjectService.selectDzSubjectList(dzSubject);
+        return AjaxResult2.success(list);
+    }
+
     /**
      * 导出科目列表
      */

+ 18 - 8
ie-admin/src/main/java/com/ruoyi/web/controller/learn/LearnKnowledgeTreeController.java

@@ -1,17 +1,16 @@
 package com.ruoyi.web.controller.learn;
 
 import java.util.List;
+import java.util.Set;
 import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.web.service.CommService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -29,10 +28,13 @@ import com.ruoyi.common.core.page.TableDataInfo;
  */
 @RestController
 @RequestMapping("/learn/knowledgeTree")
+@Api(tags = "后台-知识点")
 public class LearnKnowledgeTreeController extends BaseController
 {
     @Autowired
     private ILearnKnowledgeTreeService learnKnowledgeTreeService;
+    @Autowired
+    private CommService commService;
 
     /**
      * 查询知识点树列表
@@ -46,6 +48,14 @@ public class LearnKnowledgeTreeController extends BaseController
         return getDataTable(list);
     }
 
+    @GetMapping("/tree")
+    @ApiOperation("知识点树")
+    public AjaxResult knowledges(LearnKnowledgeTree learnKnowledgeTree)
+    {
+        List<LearnKnowledgeTree> list = learnKnowledgeTreeService.selectLearnKnowledgeTreeList(learnKnowledgeTree);
+        return AjaxResult.success(commService.buildTree(list, null, null));
+    }
+
     /**
      * 导出知识点树列表
      */

+ 6 - 0
ie-admin/src/main/java/com/ruoyi/web/controller/learn/LearnQuestionsController.java

@@ -3,6 +3,7 @@ package com.ruoyi.web.controller.learn;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
+import com.ruoyi.enums.QuestionType;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -47,6 +48,11 @@ public class LearnQuestionsController extends BaseController
     public TableDataInfo list(LearnQuestions learnQuestions)
     {
         startPage();
+        if(null != learnQuestions.getTypeId()) {
+            QuestionType qt = QuestionType.of(learnQuestions.getTypeId());
+            learnQuestions.setQtpye(qt.getTitle());
+            learnQuestions.setTypeId(null);
+        }
         List<LearnQuestions> list = learnQuestionsService.selectLearnQuestionsList(learnQuestions);
         return getDataTable(list);
     }

+ 34 - 0
ie-admin/src/main/java/com/ruoyi/web/service/CommService.java

@@ -1,5 +1,7 @@
 package com.ruoyi.web.service;
 
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.text.Convert;
 import com.ruoyi.common.enums.UserRegStatus;
@@ -10,12 +12,17 @@ import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.dz.domain.DzCards;
 import com.ruoyi.dz.service.IDzCardsService;
 import com.ruoyi.enums.CardTimeStatus;
+import com.ruoyi.learn.domain.LearnKnowledgeTree;
 import com.ruoyi.system.service.ISysConfigService;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
 
 import java.time.LocalDate;
 import java.time.ZoneId;
 import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 @Service
 public class CommService {
@@ -66,4 +73,31 @@ public class CommService {
             throw new CustomException("没有权限,请开通VIP", 405);
         }
     }
+
+    public List<LearnTeacherService.TreeNode> buildTree(List<LearnKnowledgeTree> ktList, Set<Long> knowledgeIdSet, Map<Long, Integer[]> knowCountMap) {
+        List<LearnTeacherService.TreeNode> treeNodeList = Lists.newArrayList();
+        Map<Long, LearnTeacherService.TreeNode> teMap = Maps.newHashMap();
+        for(LearnKnowledgeTree kt : ktList) {
+            LearnTeacherService.TreeNode tn = new LearnTeacherService.TreeNode(kt.getId(), kt.getName(), null != knowCountMap ? knowCountMap.get(kt.getId()) : null);
+            teMap.put(kt.getId(), tn);
+        }
+        for(LearnKnowledgeTree kt : ktList) {
+            if(null == kt.getPid()) {
+                treeNodeList.add(teMap.get(kt.getId()));
+                continue;
+            }
+            LearnTeacherService.TreeNode parent = teMap.get(kt.getPid());
+            LearnTeacherService.TreeNode node = teMap.get(kt.getId());
+            if(null != node.getQuestionCount()) {
+                parent.setQuestionCount(parent.getQuestionCount() + node.getQuestionCount());
+            }
+            parent.getChildren().add(node);
+        }
+        if(!CollectionUtils.isEmpty(knowledgeIdSet)) {
+            for(LearnTeacherService.TreeNode tn : treeNodeList) {
+                tn.setChecked(knowledgeIdSet);
+            }
+        }
+        return treeNodeList;
+    }
 }

+ 4 - 29
ie-admin/src/main/java/com/ruoyi/web/service/LearnTeacherService.java

@@ -37,10 +37,11 @@ public class LearnTeacherService {
     private final BBusiWishUniversitiesMapper busiWishUniversitiesMapper;
     private final LearnDirectedKnowledgeMapper learnDirectedKnowledgeMapper;
     private final PaperService paperService;
+    private final CommService commService;
     private final LearnTestPaperMapper learnTestPaperMapper;
     private final LearnQuestionsMapper learnQuestionsMapper;
 
-    public LearnTeacherService(DzClassesMapper dzClassesMapper, LearnKnowledgeTreeMapper learnKnowledgeTreeMapper, LearnStudentMapper learnStudentMapper, AMarjorPlanMapper marjorPlanMapper, BBusiWishUniversitiesMapper busiWishUniversitiesMapper, LearnDirectedKnowledgeMapper learnDirectedKnowledgeMapper, PaperService paperService, LearnTestPaperMapper learnTestPaperMapper, LearnQuestionsMapper learnQuestionsMapper) {
+    public LearnTeacherService(DzClassesMapper dzClassesMapper, LearnKnowledgeTreeMapper learnKnowledgeTreeMapper, LearnStudentMapper learnStudentMapper, AMarjorPlanMapper marjorPlanMapper, BBusiWishUniversitiesMapper busiWishUniversitiesMapper, LearnDirectedKnowledgeMapper learnDirectedKnowledgeMapper, PaperService paperService, CommService commService, LearnTestPaperMapper learnTestPaperMapper, LearnQuestionsMapper learnQuestionsMapper) {
         this.dzClassesMapper = dzClassesMapper;
         this.learnKnowledgeTreeMapper = learnKnowledgeTreeMapper;
         this.learnStudentMapper = learnStudentMapper;
@@ -48,6 +49,7 @@ public class LearnTeacherService {
         this.busiWishUniversitiesMapper = busiWishUniversitiesMapper;
         this.learnDirectedKnowledgeMapper = learnDirectedKnowledgeMapper;
         this.paperService = paperService;
+        this.commService = commService;
         this.learnTestPaperMapper = learnTestPaperMapper;
         this.learnQuestionsMapper = learnQuestionsMapper;
     }
@@ -283,7 +285,7 @@ public class LearnTeacherService {
                 knowCountMap.put(qs.getKnowledgeId(), new Integer[] { qs.getNumber().intValue(), qs.getId().intValue()} );
             }
         }
-        return buildTree(ktList, knowledgeIdSet, knowCountMap);
+        return commService.buildTree(ktList, knowledgeIdSet, knowCountMap);
     }
 
     public String updateDirected(Long studentId, Long universityId, Long planId) {
@@ -381,33 +383,6 @@ public class LearnTeacherService {
         return knowledgeIdSet;
     }
 
-    public List<TreeNode> buildTree(List<LearnKnowledgeTree> ktList, Set<Long> knowledgeIdSet, Map<Long, Integer[]> knowCountMap) {
-        List<TreeNode> treeNodeList = Lists.newArrayList();
-        Map<Long, TreeNode> teMap = Maps.newHashMap();
-        for(LearnKnowledgeTree kt : ktList) {
-            TreeNode tn = new TreeNode(kt.getId(), kt.getName(), null != knowCountMap ? knowCountMap.get(kt.getId()) : null);
-            teMap.put(kt.getId(), tn);
-        }
-        for(LearnKnowledgeTree kt : ktList) {
-            if(null == kt.getPid()) {
-                treeNodeList.add(teMap.get(kt.getId()));
-                continue;
-            }
-            TreeNode parent = teMap.get(kt.getPid());
-            TreeNode node = teMap.get(kt.getId());
-            if(null != node.getQuestionCount()) {
-                parent.setQuestionCount(parent.getQuestionCount() + node.getQuestionCount());
-            }
-            parent.getChildren().add(node);
-        }
-        if(!CollectionUtils.isEmpty(knowledgeIdSet)) {
-            for(TreeNode tn : treeNodeList) {
-                tn.setChecked(knowledgeIdSet);
-            }
-        }
-        return treeNodeList;
-    }
-
     @Data
     public static class TreeNode {
         private Long id;

+ 11 - 0
ie-system/src/main/java/com/ruoyi/learn/domain/LearnQuestions.java

@@ -191,9 +191,20 @@ public class LearnQuestions extends BaseEntity
     @Excel(name = "子题类型")
     private String isSubType;
 
+    @Excel(name = "题型")
+    private Integer typeId;
     private Long userId;
     boolean collect;
 
+
+    public Integer getTypeId() {
+        return typeId;
+    }
+
+    public void setTypeId(Integer typeId) {
+        this.typeId = typeId;
+    }
+
     public boolean isCollect() {
         return collect;
     }