Browse Source

Merge branch 'feature/1113-vipCourse' of http://git.dayaedu.com/yonge/cooleshow into feature/1113-vipCourse

刘俊驰 7 months ago
parent
commit
5bf1095077

+ 2 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/CourseGroupDao.java

@@ -270,5 +270,7 @@ public interface CourseGroupDao extends BaseMapper<CourseGroup> {
 
     List<CourseGroupWrapper.StudentCourseGroupDto> studentCourseGroup(@Param("page") IPage<CourseGroupWrapper.StudentCourseGroupDto> page,
                                                                  @Param("param") CourseGroupWrapper.TeacherCourseGroupQuery query);
+
+    void updateCompleteCourseNum(@Param("groupIds") List<Long> groupIds);
 }
 

+ 4 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java

@@ -2033,6 +2033,10 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
             }
             //课程状态更新为COMPLETE
             baseMapper.updateEndTime(userList);
+            //获取所有的课程组id
+            List<Long> groupIds = userList.stream().map(CourseScheduleStudentVo::getCourseGroupId).collect(Collectors.toList());
+            //更新已上课时数
+            courseGroupService.getDao().updateCompleteCourseNum(groupIds);
         }
 
         //查完完成的课程

+ 13 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/CourseGroupMapper.xml

@@ -711,6 +711,19 @@
             #{item}
         </foreach>
     </update>
+    <update id="updateCompleteCourseNum">
+        update course_group cg
+            left join (
+            select cs.course_group_id_,COUNT(cs.id_) num_ from course_schedule cs
+            where cs.course_group_id_ IN
+            <foreach collection="groupIds" item="item" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+            AND cs.status_ = 'COMPLETE'
+            group by cs.course_group_id_) cs ON cs.course_group_id_ = cg.id_
+            set cg.complete_course_num_ = cs.num_
+        where cs.course_group_id_ = cg.id_
+    </update>
     <select id="selectPianoGroup" resultType="com.yonge.cooleshow.biz.dal.vo.CourseGroupPianoVo">
         SELECT
         cg.id_ AS courseGroupId,