Browse Source

管乐迷课件新增老师和学员的课件权限配置

zouxuan 1 năm trước cách đây
mục cha
commit
5365a01e28

+ 1 - 1
mec-auth/pom.xml

@@ -18,7 +18,7 @@
 		<dependency>
 			<groupId>com.dayaedu.cbs.openfeign</groupId>
 			<artifactId>dayaedu-openfeign-api</artifactId>
-			<version>1.0.4</version>
+			<version>${cbs.version}</version>
 		</dependency>
 		<!-- 引用Mybatis 和 Mysql驱动开始 -->
 		<dependency>

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/mapper/LessonCoursewareMapper.java

@@ -15,6 +15,8 @@ public interface LessonCoursewareMapper extends BaseMapper<LessonCourseware> {
     List<LessonCoursewareWrapper.LessonCoursewareDto> selectPage(@Param("page") IPage<LessonCoursewareWrapper.LessonCoursewareDto> page,
                                                                  @Param("param") LessonCoursewareWrapper.LessonCoursewareQuery param);
 
+    List<LessonCoursewareWrapper.LessonCoursewareDto> selectList(@Param("param") LessonCoursewareWrapper.LessonCoursewareQuery param);
+
 
     //获取课件关联的声部列表
     List<Subject> getLessonCoursewareSubjectList();

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/LessonCoursewareWrapper.java

@@ -31,9 +31,14 @@ public class LessonCoursewareWrapper {
 
         private Integer rows = 20;
 
+        private String search;
+
         @ApiModelProperty("声部")
         private Integer subjectId;
 
+        @ApiModelProperty("内容平台课件编号")
+        private List<Long> lessonCoursewareIds;
+
         @ApiModelProperty("启用状态")
         private Boolean enable;
 

+ 17 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/LessonCoursewareServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ym.mec.biz.service.impl;
 
+import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.dayaedu.cbs.openfeign.client.CoursewareFeignService;
@@ -50,6 +51,22 @@ public class LessonCoursewareServiceImpl extends ServiceImpl<LessonCoursewareMap
 
     @Override
     public IPage<LessonCoursewareWrapper.LessonCoursewareDto> selectPage(IPage<LessonCoursewareWrapper.LessonCoursewareDto> page, LessonCoursewareWrapper.LessonCoursewareQuery query) {
+        if(StringUtils.isNotEmpty(query.getSearch())){
+            List<LessonCoursewareWrapper.LessonCoursewareDto> dtos = baseMapper.selectList(query);
+            if(CollectionUtils.isNotEmpty(dtos)){
+                List<Long> lessonCoursewareIds = dtos.stream().map(LessonCoursewareWrapper.LessonCoursewareDto::getLessonCoursewareId).collect(Collectors.toList());
+                CbsLessonCoursewareWrapper.LambdaQuery lambdaQuery = new CbsLessonCoursewareWrapper.LambdaQuery();
+                lambdaQuery.setIds(lessonCoursewareIds);
+                lambdaQuery.setKeyword(query.getSearch());
+                List<CbsLessonCoursewareWrapper.Entity> entityList = coursewareFeignService.lessonCoursewareLambdaQuery(lambdaQuery).feignData();
+                if(CollectionUtils.isNotEmpty(entityList)){
+                    List<Long> collect = entityList.stream().map(e -> e.getId()).collect(Collectors.toList());
+                    query.setLessonCoursewareIds(collect);
+                }else {
+                    return page;
+                }
+            }
+        }
         List<LessonCoursewareWrapper.LessonCoursewareDto> dtos = baseMapper.selectPage(page, query);
         if(CollectionUtils.isNotEmpty(dtos)){
             List<Long> lessonCoursewareIds = dtos.stream().map(LessonCoursewareWrapper.LessonCoursewareDto::getLessonCoursewareId).collect(Collectors.toList());

+ 20 - 4
mec-biz/src/main/resources/config/mybatis/LessonCoursewareMapper.xml

@@ -1,10 +1,8 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE  mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="com.ym.mec.biz.dal.mapper.LessonCoursewareMapper">
-    
-    <select id="selectPage" resultType="com.ym.mec.biz.dal.wrapper.LessonCoursewareWrapper$LessonCoursewareDto">
-        select lc.id_ id, lc.subject_id_ subjectId, lc.lesson_course_id_ lessonCoursewareId, lc.enable_ enable from lesson_courseware lc
-        left join lesson_courseware_user_mapper lcum ON lcum.lesson_courseware_id_ = lc.id_
+
+    <sql id="selectPageSql">
         <where>
             <if test="param.studentId != null">
                 AND (lc.student_range_type_ == 'ALL' OR (lcum.user_id_ = #{param.studentId} AND lcum.user_type_ = 'STUDENT'))
@@ -12,6 +10,12 @@
             <if test="param.teacherId != null">
                 AND (lc.teacher_range_type_ == 'ALL' OR (lcum.user_id_ = #{param.teacherId} AND lcum.user_type_ = 'TEACHER'))
             </if>
+            <if test="param.lessonCoursewareIds != null">
+                and lc.lesson_course_id_ IN
+                <foreach collection="param.lessonCoursewareIds" item="lessonCoursewareId" open="(" close=")" separator=",">
+                    #{lessonCoursewareId}
+                </foreach>
+            </if>
             <if test="param.subjectId != null">
                 and lc.id_subject_id_ = #{param.subjectId}
             </if>
@@ -25,6 +29,18 @@
                 and lc.id_enable_ = #{param.enable}
             </if>
         </where>
+    </sql>
+    <select id="selectPage" resultType="com.ym.mec.biz.dal.wrapper.LessonCoursewareWrapper$LessonCoursewareDto">
+        select lc.id_ id, lc.subject_id_ subjectId, lc.lesson_course_id_ lessonCoursewareId, lc.enable_ enable from lesson_courseware lc
+        left join lesson_courseware_user_mapper lcum ON lcum.lesson_courseware_id_ = lc.id_
+        <include refid="selectPageSql"/>
+        GROUP BY lc.id_
+        order by lc.create_time_ desc
+	</select>
+    <select id="selectList" resultType="com.ym.mec.biz.dal.wrapper.LessonCoursewareWrapper$LessonCoursewareDto">
+        select lc.id_ id, lc.subject_id_ subjectId, lc.lesson_course_id_ lessonCoursewareId, lc.enable_ enable from lesson_courseware lc
+        left join lesson_courseware_user_mapper lcum ON lcum.lesson_courseware_id_ = lc.id_
+        <include refid="selectPageSql"/>
         GROUP BY lc.id_
         order by lc.create_time_ desc
 	</select>

+ 1 - 1
mec-common/common-core/pom.xml

@@ -20,7 +20,7 @@
 		<dependency>
 			<groupId>com.dayaedu.cbs.openfeign</groupId>
 			<artifactId>dayaedu-openfeign-client</artifactId>
-			<version>1.0.4</version>
+			<version>${cbs.version}</version>
 			<exclusions>
 				<exclusion>
 					<groupId>com.alibaba.cloud</groupId>

+ 1 - 0
pom.xml

@@ -26,6 +26,7 @@
 		<docker.registry.repository>127.0.0.1:5000</docker.registry.repository>
 		<docker.maven.plugin.version>1.2.2</docker.maven.plugin.version>
 		<com.microsvc.toolkit.version>1.0.4</com.microsvc.toolkit.version>
+		<cbs.version>1.0.10</cbs.version>
 	</properties>
 
 	<dependencyManagement>