he2802 3 سال پیش
والد
کامیت
402f0ff681
1فایلهای تغییر یافته به همراه36 افزوده شده و 21 حذف شده
  1. 36 21
      zhongzheng-system/src/main/resources/mapper/modules/course/CourseModuleMapper.xml

+ 36 - 21
zhongzheng-system/src/main/resources/mapper/modules/course/CourseModuleMapper.xml

@@ -27,8 +27,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="chapterNum" column="chapter_num"/>
         <result property="sectionNum" column="section_num"/>
         <result property="durationTime" column="duration_time"/>
-        <collection property="businessList" javaType="java.util.List" resultMap="CourseModuleBusiness"/>
-        <collection property="courseList" javaType="java.util.List" resultMap="CourseSectionListResult"/>
+        <collection property="businessList" column="module_id" select="findBusinessList" />
+        <collection property="courseList" column="module_id" select="findCourseList"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.course.domain.CourseModuleBusiness" id="CourseModuleBusiness">
@@ -49,20 +49,41 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="courseName" column="course_name"/>
     </resultMap>
 
+    <select id="findCourseList" resultMap="CourseSectionListResult">
+        SELECT
+            m.course_id,
+            co.course_name
+        FROM
+             ( SELECT course_id, menu_id FROM course_menu WHERE type = 1 AND STATUS = 1 ) m
+                 LEFT JOIN course co ON m.course_id = co.course_id
+        WHERE
+            m.menu_id=#{module_id}
+    </select>
+
+    <select id="findBusinessList" resultMap="CourseModuleBusiness">
+        SELECT
+            cmb.education_type_id,
+            cmb.id,
+            cmb.business_id,
+            cmb.subject_id,
+            cmb.project_id,
+            cet.education_name,
+            cpt.project_name,
+            cb.business_name,
+            cs.subject_name
+        FROM
+            course_module_business cmb
+                 LEFT JOIN course_education_type cet ON cmb.education_type_id = cet.id
+                 LEFT JOIN course_project_type cpt ON cmb.project_id = cpt.id
+                 LEFT JOIN course_business cb ON cmb.business_id = cb.id
+                 LEFT JOIN course_subject cs ON cmb.subject_id = cs.id
+        WHERE
+            cmb.module_id=#{module_id}
+    </select>
+
     <select id="selectList" parameterType="com.zhongzheng.modules.course.bo.CourseModuleQueryBo" resultMap="CourseModuleResultVo">
         SELECT
-        c.*,
-        cmb.education_type_id,
-        cmb.id,
-        cmb.business_id,
-        cmb.subject_id,
-        cmb.project_id,
-        cet.education_name,
-        cpt.project_name,
-        cb.business_name,
-        cs.subject_name,
-        m.course_id,
-        co.course_name
+        c.*
         FROM
         (
         SELECT
@@ -81,13 +102,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         GROUP BY
         cm.module_id
         ) c
-        LEFT JOIN course_module_business cmb ON cmb.module_id = c.module_id
-        LEFT JOIN course_education_type cet ON cmb.education_type_id = cet.id
-        LEFT JOIN course_project_type cpt ON cmb.project_id = cpt.id
-        LEFT JOIN course_business cb ON cmb.business_id = cb.id
-        LEFT JOIN course_subject cs ON cmb.subject_id = cs.id
-        LEFT JOIN ( SELECT course_id, menu_id FROM course_menu WHERE type = 1 AND STATUS = 1 ) m ON c.module_id = m.menu_id
-        LEFT JOIN course co ON m.course_id = co.course_id
+
         WHERE
         1 = 1
         <if test="status != null and status.size()!=0 ">