zouxuan 5 年之前
父節點
當前提交
a6091baf3c

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/EmployeeDao.java

@@ -65,4 +65,11 @@ public interface EmployeeDao extends BaseDAO<Integer, Employee> {
      * @param roleIds
      */
     void batchAddEmployeeRole(@Param("userId") Integer id, @Param("roleIds")List<Integer> roleIds);
+
+    /**
+     * 获取用户权限列表
+     * @param userId
+     * @return
+     */
+    List<Integer> queryUserRole(Integer userId);
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupDao.java

@@ -147,4 +147,11 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
      * @return
      */
     Set<Integer> queryUserIdByRoleId(@Param("roleIds") Set<Integer> roleIds);
+
+    /**
+     * 获取教务老师时当前用户的乐团
+     * @param userIds
+     * @return
+     */
+    String queryEducationalMusicGroupId(Integer userIds);
 }

+ 15 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -106,14 +106,14 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
     @Autowired
     private SysUserFeignService sysUserFeignService;
+
+    @Autowired
+    private EmployeeDao employeeDao;
 	
 	@Autowired
 	private SysMessageService sysMessageService;
 
 	@Autowired
-	private SysMessageConfigDao sysMessageConfigDao;
-
-	@Autowired
 	private SysConfigDao sysConfigDao;
 
     @Override
@@ -832,7 +832,18 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
     @Override
     public PageInfo<MusicGroup> queryMusicGroupPage(MusicGroupQueryInfo queryInfo) {
-        PageInfo<MusicGroup> musicGroupPageInfo = queryPage(queryInfo);
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        //获取用户权限列表
+        List<Integer> roles = employeeDao.queryUserRole(sysUser.getId());
+        PageInfo<MusicGroup> musicGroupPageInfo;
+        if(roles != null && roles.size() == 1 && roles.contains(SysUserRole.EDUCATIONAL_TEACHER)){
+            //只有教务老师权限
+            String musicGroupIds = musicGroupDao.queryEducationalMusicGroupId(sysUser.getId());
+            queryInfo.setMusicGroupId(musicGroupIds);
+            musicGroupPageInfo = queryPage(queryInfo);
+        }else {
+            musicGroupPageInfo = queryPage(queryInfo);
+        }
         List<MusicGroup> musicGroupList = musicGroupPageInfo.getRows();
         // 获取学校编号列表
 //        Set<Integer> schoolIds = musicGroupList.stream().map(e -> e.getSchoolId()).collect(Collectors.toSet());

+ 3 - 0
mec-biz/src/main/resources/config/mybatis/EmployeeMapper.xml

@@ -212,4 +212,7 @@
             AND (ue.real_name_ LIKE CONCAT('%',#{search},'%') OR ue.phone_ LIKE CONCAT('%',#{search},'%'))
         </if>
     </select>
+    <select id="queryUserRole" resultType="java.lang.Integer">
+        SELECT sur.role_id_ FROM sys_user_role sur WHERE sur.user_id_ = #{userId}
+    </select>
 </mapper>

+ 6 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -170,6 +170,9 @@
 			<if test="musicGroupStatus != null">
 				AND status_ = #{musicGroupStatus}
 			</if>
+			<if test="musicGroupId != null">
+				AND FIND_IN_SET(id_,#{musicGroupId})
+			</if>
 		</where>
 	</sql>
 
@@ -357,4 +360,7 @@
 		WHERE cgtm.music_group_id_ = #{musicGroupId}
 		GROUP BY cgtm.user_id_
 	</select>
+	<select id="queryEducationalMusicGroupId" resultType="java.lang.String">
+		SELECT GROUP_CONCAT(mg.id_) FROM music_group mg WHERE mg.educational_teacher_id_ = #{userIds}
+	</select>
 </mapper>