mingfu 2 недель назад
Родитель
Сommit
4ea04ea1f8

+ 2 - 2
ie-admin/src/main/java/com/ruoyi/web/controller/front/FrontPaperController.java

@@ -74,9 +74,9 @@ public class FrontPaperController {
         SysUser sysUser = SecurityUtils.getLoginUser().getUser();
         Set<Long> knowledgeIdSet = null;
         if(directed) {
-            LearnStudent learnStudent = learnStudentService.selectLearnStudentByStudentId(SecurityUtils.getUserId());
+            LearnStudent learnStudent = learnStudentService.selectLearnStudentByStudentId(sysUser.getUserId());
             if(null != learnStudent) {
-                knowledgeIdSet = learnTeacherService.getKnowledgeIdSet(learnStudent.getMajorPlanId());
+                knowledgeIdSet = learnTeacherService.getKnowledgeIdSet(learnStudent.getMajorPlanId(), sysUser.getExamType().name());
             }
         }
         List<LearnTeacherService.TreeNode> nodeList = learnTeacherService.getKnowledgeTree(sysUser.getExamType().title(), subjectId, knowledgeIdSet, sysUser.getUserId());

+ 8 - 3
ie-admin/src/main/java/com/ruoyi/web/controller/learn/LearnTeacherController.java

@@ -10,6 +10,7 @@ import com.ruoyi.common.core.domain.AjaxResult2;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.enums.ExamType;
+import com.ruoyi.common.utils.NumberUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.dz.domain.DzControl;
 import com.ruoyi.dz.domain.DzSubject;
@@ -94,19 +95,23 @@ public class LearnTeacherController extends BaseController {
     @ApiOperation("知识点列表")
     public AjaxResult knowledges(@ApiParam("类型 ExactIntelligent/FullIntelligent/ExactHand/FullHand") @RequestParam String buildType,
                                  @ApiParam("科目ID") @RequestParam(required = false) Long subjectId,
-                                 @ApiParam("专业计划ID") @RequestParam(required = false) Long majorPlanId)
+                                 @ApiParam("专业计划ID") @RequestParam(required = false) Long majorPlanId,
+                                 @ApiParam("考生类型") @RequestParam(required = false) String examType)
     {
         Set<Long> knowledgeIdSet = null;
         if("ExactHand".equals(buildType)) {
-            knowledgeIdSet = learnTeacherService.getKnowledgeIdSet(majorPlanId);
+            knowledgeIdSet = learnTeacherService.getKnowledgeIdSet(majorPlanId, examType);
         }
-        return AjaxResult.success(learnTeacherService.getKnowledgeTree(null, subjectId, knowledgeIdSet, null));
+        return AjaxResult.success(learnTeacherService.getKnowledgeTree(examType, subjectId, knowledgeIdSet, null));
     }
 
     @GetMapping(value = "classStatistic")
     @ApiOperation("班级生成统计")
     public AjaxResult classStatistic(TestPaperVO.TestPaperBuildReq req)
     {
+        if (NumberUtils.isPositive(req.getMajorPlanId())) {
+            req.setMajorGroup(null);
+        }
         return AjaxResult.success(learnTeacherService.getClassesBuildStats(req, getTeacherId()));
     }
 

+ 1 - 1
ie-admin/src/main/java/com/ruoyi/web/service/LearnStatService.java

@@ -85,7 +85,7 @@ public class LearnStatService {
 
     public List<JSONObject> getRecordKnowledge(Long studentId) {
         LearnStudent learnStudent = learnStudentService.selectLearnStudentByStudentId(studentId);
-        Set<Long> knowledgeIdSet = null != learnStudent ? learnTeacherService.getKnowledgeIdSet(learnStudent.getMajorPlanId()) : Sets.newHashSet(0L);
+        Set<Long> knowledgeIdSet = null != learnStudent ? learnTeacherService.getKnowledgeIdSet(learnStudent.getMajorPlanId(), learnStudent.getExamType()) : Sets.newHashSet(0L);
         knowledgeIdSet.add(0L);
         List<JSONObject> list = answerMapper.selectKnowledgeStats(Dict.create().set("studentId", studentId).set("knowIds", knowledgeIdSet));
         list.forEach(o -> {

+ 5 - 2
ie-admin/src/main/java/com/ruoyi/web/service/LearnTeacherService.java

@@ -533,14 +533,17 @@ public class LearnTeacherService {
         return subjectIdSet;
     }
 
-    public Set<Long> getKnowledgeIdSet(Long planId) {
+    public Set<Long> getKnowledgeIdSet(Long planId, String examType) {
         if(NumberUtils.isPositive(planId)) {
             SysUser sysUser = SecurityUtils.getLoginUser().getUser();
             List<AMarjorPlan> planList = marjorPlanMapper.selectAMarjorPlanByIds(new Long[] { planId });
             if(CollectionUtils.isEmpty(planList)) {
                 return Sets.newHashSet();
             }
-            return getStudentKnowledgeIdSet(planList.get(0), sysUser.getLocation(), sysUser.getExamType().name());
+            if(null == examType) {
+                examType = null != sysUser.getExamType() ? sysUser.getExamType().name() : ExamType.OHS.name();
+            }
+            return getStudentKnowledgeIdSet(planList.get(0), sysUser.getLocation(), examType);
         }
         return Sets.newHashSet();
     }

+ 1 - 1
ie-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java

@@ -458,7 +458,7 @@ public class SysUser extends BaseEntity
     }
 
     public ExamType getExamType() {
-        return examType;
+        return null == examType ? ExamType.OHS : examType;
     }
 
     public void setExamType(ExamType examType) {

+ 0 - 1
ie-system/src/main/resources/mapper/dz/DzClassesMapper.xml

@@ -44,7 +44,6 @@
             <if test="subjectId != null"> and ts.`subject_id` = #{subjectId} </if>
         <where>tc.`teacher_id` = #{teacherId}
             <if test="classId != null"> AND ls.`class_id` = #{classId}</if>
-            <if test="buildType != null and buildType == 'ExactIntelligent'"> AND ls.`university_id` is not null</if>
             <if test="universityId != null"> AND ls.`university_id` = #{universityId}</if>
             <if test="majorGroup != null"> AND ls.`major_group` = #{majorGroup}</if>
             <if test="majorPlanId != null"> AND ls.`major_plan_id` = #{majorPlanId}</if>