Browse Source

Merge branch 'dev_1_3_3_20220822' of http://git.dayaedu.com/yonge/cooleshow into dev_1_3_3_20220822

liujunchi 2 years ago
parent
commit
401a5cfa09

+ 3 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/VideoLessonGroupDao.java

@@ -51,6 +51,9 @@ public interface VideoLessonGroupDao extends BaseMapper<VideoLessonGroup> {
 
     //查询视频课组
     List<LessonGroupVo> selectLessonGroup(IPage page, @Param("param") VideoLessonGroupSearch search);
+    
+  //查询我的视频课组
+    List<LessonGroupVo> queryMyLessonGroup(IPage page, @Param("param") VideoLessonGroupSearch search);
 
     //查询所有视频课组
     List<VideoLessonAuthGroup> queryGroupList(IPage<VideoLessonAuthGroup> page, @Param("param") VideoGroupSearch query);

+ 3 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VideoLessonGroupServiceImpl.java

@@ -167,7 +167,7 @@ public class VideoLessonGroupServiceImpl extends ServiceImpl<VideoLessonGroupDao
     	}
         //改主表
         videoLessonGroupDao.updateExamine(examineVo);
-
+        
         VideoLessonGroup lessonGroup = baseMapper.selectById(examineVo.getId());
         //插从表
         VideoLessonAuthRecord record = new VideoLessonAuthRecord();
@@ -535,7 +535,8 @@ public class VideoLessonGroupServiceImpl extends ServiceImpl<VideoLessonGroupDao
      */
     @Override
     public IPage<LessonGroupVo> selectLessonGroupById(IPage<LessonGroupVo> page, VideoLessonGroupSearch query) {
-        return page.setRecords(baseMapper.selectLessonGroup(page, query));
+
+        return page.setRecords(baseMapper.queryMyLessonGroup(page, query));
     }
 
     /**

+ 1 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/VideoLessonGroupDetailMapper.xml

@@ -100,7 +100,7 @@
 				</if>
 			</where>
 	</select>
-	<insert id="insertVideoLesson" parameterType="java.util.List">
+	<insert id="insertVideoLesson" useGeneratedKeys="true" keyProperty="id" parameterType="java.util.List">
 		INSERT INTO video_lesson_group_detail (video_lesson_group_id_,video_title_,video_content_,video_url_,cover_url_,teacher_id_)
 		VALUES
 		<foreach collection="list" item="item" index="index" separator=",">

+ 55 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/VideoLessonGroupMapper.xml

@@ -319,6 +319,61 @@
 		</where>
 		ORDER BY g.create_time_ DESC
 	</select>
+	
+	<select id="queryMyLessonGroup" resultType="com.yonge.cooleshow.biz.dal.vo.LessonGroupVo">
+		SELECT
+			g.id_ AS id,
+			g.lesson_name_ AS lessonName,
+			g.lesson_subject_ AS lessonSubject,
+			s.name_ AS lessonSubjectName,
+			g.lesson_desc_ AS lessonDesc,
+			g.lesson_price_ AS lessonPrice,
+			g.lesson_cover_url_ AS lessonCoverUrl,
+			g.lesson_count_ AS lessonCount,
+			g.teacher_id_ AS teacherId,
+			u.username_ AS userName,
+			u.real_name_ AS realName,
+			u.avatar_ AS avatar,
+			g.audit_version_ as auditVersion,
+			(SELECT COUNT(1) FROM video_lesson_purchase_record r WHERE r.video_lesson_group_id_=g.id_ AND r.order_status_='PAID') AS countStudent
+		FROM video_lesson_purchase_record pr
+		left join (
+		SELECT gg.* FROM video_lesson_auth_record ar left join video_lesson_group_log gg on ar.video_group_id_ = gg.video_lesson_group_id_ and ar.version_ = gg.version_
+		where ar.id_ in (select max(id_) from video_lesson_auth_record where audit_status_ = 'PASS' group by video_group_id_)
+		 ) g on g.video_lesson_group_id_ = pr.video_lesson_group_id_
+		LEFT JOIN sys_user u ON g.teacher_id_=u.id_
+		LEFT JOIN `subject` s ON g.lesson_subject_ = s.id_
+		<where>
+			AND  u.del_flag_ = 0
+			<if test="null != param.search and '' != param.search">
+				AND (
+				u.username_ LIKE CONCAT('%', #{param.search}, '%') OR
+				g.lesson_name_ LIKE CONCAT('%', #{param.search}, '%')
+				)
+			</if>
+			<if test="param.shelvesFlag !=null">
+				AND g.shelves_flag_ = #{param.shelvesFlag}
+			</if>
+			<if test="param.auditStatus !=null">
+				AND g.audit_status_ = #{param.auditStatus}
+			</if>
+			<if	test="param.studentId != null">
+				AND g.id_ IN
+				(SELECT video_lesson_group_id_ FROM video_lesson_purchase_record WHERE student_id_=#{param.studentId} AND order_status_='PAID')
+			</if>
+			<if	test="param.teacherId != null">
+				AND g.teacher_id_ = #{param.teacherId}
+			</if>
+			<if test="param.auditVersion != null">
+				AND g.audit_version_ = #{param.auditVersion}
+			</if>
+			<if test="param.lessonSubject != null">
+				AND s.id_ = #{param.lessonSubject}
+			</if>
+		</where>
+		ORDER BY g.create_time_ DESC
+	</select>
+	
 	<select id="queryGroupList" resultType="com.yonge.cooleshow.biz.dal.vo.VideoLessonAuthGroup">
 		SELECT
 			g.id_ AS id,