Pārlūkot izejas kodu

知识点基础参数业务

change 4 gadi atpakaļ
vecāks
revīzija
a6f91ca576

+ 4 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/mapper/ExamKnowledgeMapper.java

@@ -1,11 +1,13 @@
 package com.zhongzheng.modules.exam.mapper;
 
+import com.zhongzheng.modules.course.vo.CourseBusinessVo;
 import com.zhongzheng.modules.exam.bo.ExamKnowledgeQueryBo;
 import com.zhongzheng.modules.exam.domain.ExamKnowledge;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.zhongzheng.modules.exam.vo.ExamKnowledgeVo;
 
 import java.util.Collection;
+import java.util.List;
 
 /**
  * 知识点Mapper接口
@@ -16,4 +18,6 @@ import java.util.Collection;
 public interface ExamKnowledgeMapper extends BaseMapper<ExamKnowledge> {
 
     Collection<ExamKnowledgeVo> queryList(ExamKnowledgeQueryBo bo);
+
+    List<CourseBusinessVo> queryCourseBusinessList(Long knowledgeId);
 }

+ 7 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamKnowledgeServiceImpl.java

@@ -5,6 +5,7 @@ import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
+import com.zhongzheng.modules.course.vo.CourseBusinessVo;
 import com.zhongzheng.modules.exam.bo.*;
 import com.zhongzheng.modules.exam.domain.ExamKnowledgeBusiness;
 import com.zhongzheng.modules.exam.domain.ExamPaper;
@@ -48,7 +49,12 @@ public class ExamKnowledgeServiceImpl extends ServiceImpl<ExamKnowledgeMapper, E
 
     @Override
     public List<ExamKnowledgeVo> queryList(ExamKnowledgeQueryBo bo) {
-        return entity2Vo(baseMapper.queryList(bo));
+        Collection<ExamKnowledgeVo> examKnowledgeVos = baseMapper.queryList(bo);
+        for (ExamKnowledgeVo examKnowledgeVo : examKnowledgeVos) {
+            List<CourseBusinessVo> courseBusinessVos = baseMapper.queryCourseBusinessList(examKnowledgeVo.getKnowledgeId());
+            examKnowledgeVo.setCourseBusinessList(courseBusinessVos);
+        }
+        return entity2Vo(examKnowledgeVos);
     }
 
     /**

+ 22 - 21
zhongzheng-system/src/main/resources/mapper/modules/exam/ExamKnowledgeMapper.xml

@@ -38,28 +38,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="queryList" parameterType="com.zhongzheng.modules.exam.bo.ExamKnowledgeQueryBo" resultMap="ExamKnowledgeVoResult">
         SELECT
-            k.*,
-            q.*
+        k.*
         FROM
-            exam_knowledge k
-                LEFT JOIN (
-                SELECT
-                    b.knowledge_id as k_id,
-                    b.business_id,
-                    b.subject_id,
-                    s.business_name,
-                    j.subject_name,
-                    e.education_name,
-                    e.id AS education_id,
-                    p.project_name,
-                       p.id as project_id
-                FROM
-                    exam_knowledge_business b
-                        LEFT JOIN course_business s ON s.id = b.business_id
-                        LEFT JOIN course_subject j ON j.id = b.subject_id
-                        LEFT JOIN course_project_type p ON s.project_id = p.id
-                        LEFT JOIN course_education_type e ON p.education_id = e.id
-            ) q ON q.k_id = k.knowledge_id
+        exam_knowledge k where 1=1
         <if test="status != null and status.size()!=0 ">
             AND k.status in
             <foreach collection="status" item="item" index="index" open="(" close=")" separator=",">
@@ -83,4 +64,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             AND k.knowledge_name like concat('%', #{knowledgeName}, '%')
         </if>
     </select>
+
+    <select id="queryCourseBusinessList" resultType="long" resultMap="CourseBusinessVoResult">
+        SELECT
+            b.knowledge_id as k_id,
+            b.business_id,
+            b.subject_id,
+            s.business_name,
+            j.subject_name,
+            e.education_name,
+            e.id AS education_id,
+            p.project_name,
+            p.id as project_id
+        FROM
+            exam_knowledge_business b
+                LEFT JOIN course_business s ON s.id = b.business_id
+                LEFT JOIN course_subject j ON j.id = b.subject_id
+                LEFT JOIN course_project_type p ON s.project_id = p.id
+                LEFT JOIN course_education_type e ON p.education_id = e.id
+        WHERE b.knowledge_id = #{knowledgeId}
+    </select>
 </mapper>