he2802 3 år sedan
förälder
incheckning
8c0f9ede86

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/mapper/GoodsMapper.java

@@ -33,4 +33,6 @@ public interface GoodsMapper extends BaseMapper<Goods> {
     List<GoodsVo> selectListToInput(GoodsQueryBo bo);
 
     Long getExamNum(Long goodsId);
+
+    GoodsVo getSectionNum(CourseQueryBo bo);
 }

+ 6 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/service/impl/GoodsServiceImpl.java

@@ -519,6 +519,12 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, Goods> implements
         if(Validator.isNotEmpty(classGradeVo)){
             goodsVo.setGradeId(classGradeVo.getGradeId());
         }
+        if(goodsVo.getGoodsType()==1){
+            GoodsVo goodsSectionVo = baseMapper.getSectionNum(bo);
+            goodsVo.setSecAllNum(goodsSectionVo.getSectionNum());
+            goodsVo.setCourseNum(goodsSectionVo.getCourseNum());
+            goodsVo.setExamNumber(goodsSectionVo.getExamNumber());
+        }
         return goodsVo;
     }
 

+ 5 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/goods/vo/GoodsVo.java

@@ -303,4 +303,9 @@ public class GoodsVo {
 	private String subjectNames;
 	@ApiModelProperty("购买用户数")
 	private Integer buyUserNum;
+	/** 学习进度 */
+	@ApiModelProperty("总节数")
+	private Long secAllNum;
+
+
 }

+ 1 - 1
zhongzheng-system/src/main/resources/mapper/modules/course/CourseChapterSectionMapper.xml

@@ -208,7 +208,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="getStudyDuration" parameterType="map"  resultType="long">
         SELECT
-            IFNULL(MAX(usr.study_duration),0)
+            IFNULL(MAX(usr.video_current_time),0) as study_duration
         FROM
             user_study_record usr
         WHERE

+ 1 - 0
zhongzheng-system/src/main/resources/mapper/modules/course/CourseMapper.xml

@@ -205,6 +205,7 @@
         <result property="serviceStartTime" column="service_start_time"/>
         <result property="serviceEndTime" column="service_end_time"/>
         <result property="subjectNames" column="subject_names"/>
+        <result property="sectionNum" column="section_num"/>
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.grade.vo.ClassGradeVo" id="ClassGradeVoResult">

+ 1 - 1
zhongzheng-system/src/main/resources/mapper/modules/course/CourseMenuMapper.xml

@@ -276,7 +276,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="getStudyDuration" parameterType="map"  resultType="long">
         SELECT
-            IFNULL(MAX(usr.study_duration),0)
+            IFNULL(MAX(usr.video_current_time),0) as study_duration
         FROM
             user_study_record usr
         WHERE

+ 18 - 0
zhongzheng-system/src/main/resources/mapper/modules/goods/GoodsMapper.xml

@@ -125,6 +125,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="subjectNames" column="subject_names"/>
         <result property="buyUserNum" column="buy_user_num"/>
         <result property="chapterNum" column="chapter_num"/>
+
     </resultMap>
 
     <resultMap type="com.zhongzheng.modules.exam.vo.ExamNumberGoodsVo" id="ExamNumberGoodsVoResult">
@@ -574,4 +575,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                                         ))))
     </select>
 
+    <select id="getSectionNum" parameterType="Long" resultMap="GoodsResultVo">
+        SELECT
+            (SELECT IFNULL(COUNT(m.id),0)+(SELECT IFNULL(COUNT(n.id),0) FROM course_chapter_section n LEFT JOIN course_module_chapter p on n.chapter_id = p.chapter_id LEFT JOIN course_menu m on m.menu_id = p.module_id LEFT JOIN goods_course gc on gc.course_id = m.course_id  where gc.goods_id =  g.goods_id and m.type in(1))+(SELECT IFNULL(COUNT(n.id),0) FROM course_chapter_section n  LEFT JOIN course_menu m on m.menu_id = n.chapter_id LEFT JOIN goods_course gc on gc.course_id = m.course_id where gc.goods_id =  g.goods_id and m.type in(2)) FROM course_menu m LEFT JOIN goods_course gc on gc.course_id = m.course_id  where gc.goods_id =  g.goods_id  and m.type in(3)) as section_num,
+            (SELECT IFNULL(COUNT(1),0) FROM goods_course gc where gc.goods_id = g.goods_id) as course_num,
+            (SELECT
+                 IFNULL(COUNT( m.id ),0)
+             FROM
+                 goods_course c  LEFT JOIN  course_menu_exam m ON m.course_id = c.course_id
+             where
+                 m.type = 1
+               and c.goods_id = g.goods_id) as exam_num
+        FROM
+            goods g
+        WHERE
+            g.goods_id = #{goodsId}
+    </select>
+
 </mapper>