浏览代码

调整曲目、专辑支持老师端

Eric 2 年之前
父节点
当前提交
dec9724780
共有 19 个文件被更改,包括 151 次插入47 次删除
  1. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/MusicAlbumDao.java
  2. 3 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/MusicSheetDao.java
  3. 12 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MusicAlbumDetailSearch.java
  4. 13 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/AlbumFavorite.java
  5. 3 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/AlbumFavoriteService.java
  6. 7 3
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicAlbumService.java
  7. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicSheetService.java
  8. 3 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/AlbumFavoriteServiceImpl.java
  9. 7 6
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicAlbumServiceImpl.java
  10. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java
  11. 3 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicAlbumMapper.xml
  12. 3 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml
  13. 9 4
      cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicAlbumController.java
  14. 2 5
      cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java
  15. 14 6
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicAlbumController.java
  16. 40 1
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicSheetController.java
  17. 16 4
      cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicAlbumController.java
  18. 9 7
      cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicSheetController.java
  19. 1 1
      cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/open/OpenMusicAlbumController.java

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

@@ -5,6 +5,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicAlbumSearch;
 import com.yonge.cooleshow.biz.dal.entity.MusicAlbum;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.vo.MusicAlbumVo;
 import org.apache.ibatis.annotations.Param;
 
@@ -35,8 +36,7 @@ public interface MusicAlbumDao extends BaseMapper<MusicAlbum> {
      * @param search 查询条件
      * @return
      */
-    List<MusicAlbumVo> selectFavoritePage(@Param("page") IPage<MusicAlbumVo> page, @Param(
-            "query") StudentMusicAlbumSearch search);
+    List<MusicAlbumVo> selectFavoritePage(@Param("page") IPage<MusicAlbumVo> page, @Param("query") StudentMusicAlbumSearch search, @Param("clientType") ClientEnum clientType);
 
     /**
      * 查询收藏专辑的收藏数和曲谱数

+ 3 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/MusicSheetDao.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.biz.dal.dto.search.*;
 import com.yonge.cooleshow.biz.dal.entity.MusicSheet;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.vo.*;
 import org.apache.ibatis.annotations.Param;
 
@@ -62,10 +63,10 @@ public interface MusicSheetDao extends BaseMapper<MusicSheet> {
      *
      * @param page  分页信息
      * @param query 查询条件
+     * @param clientType ClientEnum
      * @return list
      */
-    List<MusicSheetVo> selectFavoriteMusicPage(@Param("page") IPage<MusicSheetVo> page, @Param(
-            "param") StudentMusicSheetSearch query);
+    List<MusicSheetVo> selectFavoriteMusicPage(@Param("page") IPage<MusicSheetVo> page, @Param("param") StudentMusicSheetSearch query, @Param("clientType") ClientEnum clientType);
 
     /**
      * 最近练习曲目

+ 12 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MusicAlbumDetailSearch.java

@@ -1,9 +1,11 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
 import javax.validation.constraints.NotNull;
+import java.util.Optional;
 
 /**
  * Description 专辑详情下的曲目查询
@@ -30,6 +32,8 @@ public class MusicAlbumDetailSearch extends MusicSheetSearch {
     @ApiModelProperty("相关专辑数,默认4")
     private Integer relatedNum = 4;
 
+    @ApiModelProperty("客户端类型")
+    private ClientEnum clientType;
 
     public Integer getRelatedNum() {
         return relatedNum;
@@ -55,6 +59,14 @@ public class MusicAlbumDetailSearch extends MusicSheetSearch {
         this.type = type;
     }
 
+    public ClientEnum getClientType() {
+        return Optional.ofNullable(clientType).orElse(ClientEnum.STUDENT);
+    }
+
+    public void setClientType(ClientEnum clientType) {
+        this.clientType = clientType;
+    }
+
     @Override
     public Boolean getDelFlag() {
         return delFlag;

+ 13 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/AlbumFavorite.java

@@ -1,5 +1,6 @@
 package com.yonge.cooleshow.biz.dal.entity;
 
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.common.entity.BaseEntity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
@@ -22,6 +23,10 @@ public class AlbumFavorite extends BaseEntity {
     @ApiModelProperty(value = "主键id")
     private Long id;  //主键ID
 
+	@TableField("client_type_")
+	@ApiModelProperty(value = "客户端类型")
+	private ClientEnum clientType;
+
     @TableField("user_id_")
     @ApiModelProperty(value = "用户ID(目前只是学生ID)")
     private Long userId;  //用户ID(目前只是学生ID)
@@ -84,8 +89,15 @@ public class AlbumFavorite extends BaseEntity {
 	    return this.favoriteFlag;
 	}
 
+	public ClientEnum getClientType() {
+		return clientType;
+	}
+
+	public void setClientType(ClientEnum clientType) {
+		this.clientType = clientType;
+	}
 
-    @Override
+	@Override
     public String toString() {
         return ToStringBuilder.reflectionToString(this);
     }

+ 3 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/AlbumFavoriteService.java

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.service;
 
 import com.yonge.cooleshow.biz.dal.entity.AlbumFavorite;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 
 import java.util.List;
 
@@ -18,9 +19,10 @@ public interface AlbumFavoriteService extends IService<AlbumFavorite> {
      *
      * @param studentId 学生id
      * @param albumId 专辑id
+     * @param clientType ClientEnum
      * @return list
      */
-    List<AlbumFavorite> getFavorite(Long studentId, Long albumId);
+    List<AlbumFavorite> getFavorite(Long studentId, Long albumId, ClientEnum clientType);
 
     /**
      * 获取收藏信息

+ 7 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicAlbumService.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumDetailSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicAlbumSearch;
 import com.yonge.cooleshow.biz.dal.entity.MusicAlbum;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.vo.AlbumDetailVo;
 import com.yonge.cooleshow.biz.dal.vo.MusicAlbumVo;
 import com.yonge.cooleshow.biz.dal.vo.MusicSheetVo;
@@ -87,27 +88,30 @@ public interface MusicAlbumService extends IService<MusicAlbum> {
      *
      * @param studentId 学生id
      * @param albumId 专辑id
+     * @param clientType ClientEnum
      * @return YesOrNoEnum
      */
-    YesOrNoEnum checkFavorite(Long studentId, Long albumId);
+    YesOrNoEnum checkFavorite(Long studentId, Long albumId, ClientEnum clientType);
 
     /**
      * 设置学生收藏/取消收藏 专辑
      *
      * @param studentId 学生id
      * @param albumId 专辑id
+     * @param clientType ClientEnum
      * @return boolean
      */
-    Boolean setFavorite(Long studentId, Long albumId);
+    Boolean setFavorite(Long studentId, Long albumId, ClientEnum clientType);
 
     /**
      * 收藏专辑列表
      *
      * @param page 分页
      * @param search 查询条件
+     * @param clientType ClientEnum
      * @return list
      */
-    IPage<MusicAlbumVo> favoriteAlbum(IPage<MusicAlbumVo> page, StudentMusicAlbumSearch search);
+    IPage<MusicAlbumVo> favoriteAlbum(IPage<MusicAlbumVo> page, StudentMusicAlbumSearch search, ClientEnum clientType);
 
     /**
      * 删除专辑

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicSheetService.java

@@ -124,9 +124,10 @@ public interface MusicSheetService extends IService<MusicSheet> {
      *
      * @param page 分页信息
      * @param query 查询条件
+     * @param clientType ClientEnum
      * @return
      */
-    IPage<MusicSheetVo> favoriteMusic(IPage<MusicSheetVo> page, StudentMusicSheetSearch query);
+    IPage<MusicSheetVo> favoriteMusic(IPage<MusicSheetVo> page, StudentMusicSheetSearch query, ClientEnum clientType);
 
     /**
      * 最近练习曲目

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

@@ -2,6 +2,7 @@ package com.yonge.cooleshow.biz.dal.service.impl;
 
 import com.yonge.cooleshow.biz.dal.entity.AlbumFavorite;
 import com.yonge.cooleshow.biz.dal.dao.AlbumFavoriteDao;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.AlbumFavoriteService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -33,11 +34,12 @@ public class AlbumFavoriteServiceImpl extends ServiceImpl<AlbumFavoriteDao,Album
     }
 
     @Override
-    public List<AlbumFavorite> getFavorite(Long studentId, Long albumId) {
+    public List<AlbumFavorite> getFavorite(Long studentId, Long albumId, ClientEnum clientType) {
 
         return this.lambdaQuery()
                     .eq(AlbumFavorite::getAlbumId, albumId)
                     .eq(AlbumFavorite::getUserId, studentId)
+                    .eq(AlbumFavorite::getClientType, clientType)
                     .list();
     }
 

+ 7 - 6
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicAlbumServiceImpl.java

@@ -4,6 +4,7 @@ import java.util.Date;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -160,16 +161,16 @@ public class MusicAlbumServiceImpl extends ServiceImpl<MusicAlbumDao,MusicAlbum>
     }
 
     @Override
-    public YesOrNoEnum checkFavorite(Long studentId, Long albumId) {
-        List<AlbumFavorite> albumFavorites = albumFavoriteService.getFavorite(studentId,albumId);
+    public YesOrNoEnum checkFavorite(Long studentId, Long albumId, ClientEnum clientType) {
+        List<AlbumFavorite> albumFavorites = albumFavoriteService.getFavorite(studentId,albumId, clientType);
 
         return CollectionUtils.isEmpty(albumFavorites)?YesOrNoEnum.NO:YesOrNoEnum.YES;
     }
 
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Boolean setFavorite(Long studentId, Long albumId) {
-        List<AlbumFavorite> albumFavorites = albumFavoriteService.getFavorite(studentId,albumId);
+    public Boolean setFavorite(Long studentId, Long albumId, ClientEnum clientType) {
+        List<AlbumFavorite> albumFavorites = albumFavoriteService.getFavorite(studentId,albumId, clientType);
         if (CollectionUtils.isEmpty(albumFavorites)) {
             AlbumFavorite albumFavorite = new AlbumFavorite();
             albumFavorite.setAlbumId(albumId);
@@ -183,9 +184,9 @@ public class MusicAlbumServiceImpl extends ServiceImpl<MusicAlbumDao,MusicAlbum>
     }
 
     @Override
-    public IPage<MusicAlbumVo> favoriteAlbum(IPage<MusicAlbumVo> page, StudentMusicAlbumSearch search) {
+    public IPage<MusicAlbumVo> favoriteAlbum(IPage<MusicAlbumVo> page, StudentMusicAlbumSearch search, ClientEnum clientType) {
 
-        IPage<MusicAlbumVo> iPage = page.setRecords(baseMapper.selectFavoritePage(page, search));
+        IPage<MusicAlbumVo> iPage = page.setRecords(baseMapper.selectFavoritePage(page, search, clientType));
         List<MusicAlbumVo> records = iPage.getRecords();
         if (CollectionUtils.isEmpty(records)) {
             return iPage;

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

@@ -366,8 +366,8 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
     }
 
     @Override
-    public IPage<MusicSheetVo> favoriteMusic(IPage<MusicSheetVo> page, StudentMusicSheetSearch query) {
-        return page.setRecords(baseMapper.selectFavoriteMusicPage(page, query));
+    public IPage<MusicSheetVo> favoriteMusic(IPage<MusicSheetVo> page, StudentMusicSheetSearch query, ClientEnum clientType) {
+        return page.setRecords(baseMapper.selectFavoriteMusicPage(page, query, clientType));
     }
 
     @Override

+ 3 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicAlbumMapper.xml

@@ -108,6 +108,9 @@
             <if test="query.studentId != null">
                 and af2.user_id_ = #{query.studentId}
             </if>
+            <if test="clientType != null">
+                AND af2.client_type_ = #{clientType}
+            </if>
             <if test="query.idAndName != null and query.idAndName != ''">
                 and (t.id_ like concat('%',#{query.idAndName},'%') or
                 t.album_name_ like concat('%',#{query.idAndName},'%'))

+ 3 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml

@@ -377,6 +377,9 @@
         <where>
             su.del_flag_ = 0
             <include refid="QueryInfo"/>
+            <if test="clientType != null">
+                AND mf.client_type_ = #{clientType}
+            </if>
             <if test="param.studentId != null">
                 and mf.user_id_ = #{param.studentId}
             </if>

+ 9 - 4
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicAlbumController.java

@@ -11,6 +11,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumDetailSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicAlbumSearch;
 import com.yonge.cooleshow.biz.dal.entity.Student;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.AppVersionInfoService;
 import com.yonge.cooleshow.biz.dal.service.MusicAlbumService;
 import com.yonge.cooleshow.biz.dal.service.StudentService;
@@ -100,7 +101,7 @@ public class MusicAlbumController extends BaseController {
         }
         query.setType(2);
         query.setState(YesOrNoEnum.YES);
-        YesOrNoEnum yesOrNoEnum = musicAlbumService.checkFavorite(sysUser.getId(),query.getId() );
+        YesOrNoEnum yesOrNoEnum = musicAlbumService.checkFavorite(sysUser.getId(),query.getId(), ClientEnum.STUDENT);
         AlbumDetailVo albumDetailVo = musicAlbumService.detail(PageUtil.getPage(query), query);
         albumDetailVo.setFavorite(yesOrNoEnum);
 
@@ -131,13 +132,17 @@ public class MusicAlbumController extends BaseController {
     @PostMapping("/favorite/{id}")
     @ApiOperation(value = "专辑收藏/取消收藏")
     public HttpResponseResult<Boolean> favorite(@ApiParam(value = "专辑编号", required = true) @PathVariable("id") Long id,
-                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false) String clientType) {
+                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
 
-        return succeed(musicAlbumService.setFavorite(sysUser.getId(),id));
+        if (ClientEnum.invalid(clientType)) {
+            return failed("无效的客户端类型");
+        }
+
+        return succeed(musicAlbumService.setFavorite(sysUser.getId(), id, ClientEnum.valueOf(clientType)));
     }
 
 
@@ -154,7 +159,7 @@ public class MusicAlbumController extends BaseController {
         StudentMusicAlbumSearch search = new StudentMusicAlbumSearch();
         search.setStudentId(sysUser.getId());
         search.setAlbumStatus(YesOrNoEnum.YES);
-        IPage<MusicAlbumVo> albumVoIPage = musicAlbumService.favoriteAlbum(PageUtil.getPage(query), search);
+        IPage<MusicAlbumVo> albumVoIPage = musicAlbumService.favoriteAlbum(PageUtil.getPage(query), search, ClientEnum.STUDENT);
         return succeed(PageUtil.pageInfo(albumVoIPage));
     }
 }

+ 2 - 5
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java

@@ -172,15 +172,12 @@ public class MusicSheetController extends BaseController {
     @PostMapping("/favorite/{id}")
     @ApiOperation(value = "曲目收藏/取消收藏")
     public HttpResponseResult<Boolean> favorite(@ApiParam(value = "曲目编号", required = true) @PathVariable("id") Long id,
-                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false) String clientType) {
+                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
 
-        if (StringUtils.isEmpty(clientType)) {
-            clientType = ClientEnum.STUDENT.getCode();
-        }
         if (ClientEnum.invalid(clientType)) {
             return failed("无效的客户端类型");
         }
@@ -224,7 +221,7 @@ public class MusicSheetController extends BaseController {
         search.setStudentId(sysUser.getId());
         search.setState(YesOrNoEnum.YES);
         search.setAuditStatus(AuthStatusEnum.PASS);
-        IPage<MusicSheetVo> sheetVoIPage = musicSheetService.favoriteMusic(PageUtil.getPage(query),search);
+        IPage<MusicSheetVo> sheetVoIPage = musicSheetService.favoriteMusic(PageUtil.getPage(query),search, ClientEnum.STUDENT);
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }
 

+ 14 - 6
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicAlbumController.java

@@ -1,5 +1,6 @@
 package com.yonge.cooleshow.teacher.controller;
 
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -12,10 +13,12 @@ import javax.validation.Valid;
 
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -105,7 +108,7 @@ public class MusicAlbumController extends BaseController {
         }
         query.setType(2);
         query.setState(YesOrNoEnum.YES);
-        YesOrNoEnum yesOrNoEnum = musicAlbumService.checkFavorite(sysUser.getId(),query.getId() );
+        YesOrNoEnum yesOrNoEnum = musicAlbumService.checkFavorite(sysUser.getId(),query.getId(), ClientEnum.TEACHER);
         AlbumDetailVo albumDetailVo = musicAlbumService.detail(PageUtil.getPage(query), query);
         albumDetailVo.setFavorite(yesOrNoEnum);
 
@@ -133,22 +136,27 @@ public class MusicAlbumController extends BaseController {
     /**
      * 专辑收藏
      */
-    // @PostMapping("/favorite/{id}")
+     @PostMapping("/favorite/{id}")
     @ApiOperation(value = "专辑收藏/取消收藏")
-    public HttpResponseResult<Boolean> favorite(@ApiParam(value = "专辑编号", required = true) @PathVariable("id") Long id) {
+    public HttpResponseResult<Boolean> favorite(@ApiParam(value = "专辑编号", required = true) @PathVariable("id") Long id,
+                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "TEACHER") String clientType) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
 
-        return succeed(musicAlbumService.setFavorite(sysUser.getId(),id));
+         if (ClientEnum.invalid(clientType)) {
+             return failed("无效的客户端类型");
+         }
+
+        return succeed(musicAlbumService.setFavorite(sysUser.getId(), id, ClientEnum.valueOf(clientType)));
     }
 
 
     /**
      * 专辑收藏
      */
-    // @GetMapping("/favorite")
+    @GetMapping("/favorite")
     @ApiOperation(value = "收藏专辑列表")
     public HttpResponseResult<PageInfo<MusicAlbumVo>> favoriteAlbum(QueryInfo query) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -158,7 +166,7 @@ public class MusicAlbumController extends BaseController {
         StudentMusicAlbumSearch search = new StudentMusicAlbumSearch();
         search.setStudentId(sysUser.getId());
         search.setAlbumStatus(YesOrNoEnum.YES);
-        IPage<MusicAlbumVo> albumVoIPage = musicAlbumService.favoriteAlbum(PageUtil.getPage(query), search);
+        IPage<MusicAlbumVo> albumVoIPage = musicAlbumService.favoriteAlbum(PageUtil.getPage(query), search, ClientEnum.TEACHER);
         return succeed(PageUtil.pageInfo(albumVoIPage));
     }
 }

+ 40 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicSheetController.java

@@ -1,5 +1,6 @@
 package com.yonge.cooleshow.teacher.controller;
 
+import com.yonge.toolset.base.page.QueryInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -197,7 +199,26 @@ public class MusicSheetController extends BaseController {
     }
 
     /**
-     * 我的单曲,收藏单曲
+     * 曲目收藏
+     */
+    @PostMapping("/favorite/{id}")
+    @ApiOperation(value = "曲目收藏/取消收藏")
+    public HttpResponseResult<Boolean> favorite(@ApiParam(value = "曲目编号", required = true) @PathVariable("id") Long id,
+                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "TEACHER") String clientType) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null  || sysUser.getId() == null) {
+            return failed("用户信息获取失败");
+        }
+
+        if (ClientEnum.invalid(clientType)) {
+            return failed("无效的客户端类型");
+        }
+
+        return succeed(musicSheetService.setFavorite(sysUser.getId(),id, ClientEnum.valueOf(clientType)));
+    }
+
+    /**
+     * 我的单曲
      */
     @PostMapping("/my")
     @ApiOperation(value = "我的单曲")
@@ -214,6 +235,24 @@ public class MusicSheetController extends BaseController {
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }
 
+    /**
+     * 收藏单曲
+     */
+    @GetMapping("/favorite")
+    @ApiOperation(value = "收藏单曲")
+    public HttpResponseResult<PageInfo<MusicSheetVo>> favoriteMusic(QueryInfo query) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null  || sysUser.getId() == null) {
+            return failed("用户信息获取失败");
+        }
+        StudentMusicSheetSearch search = new StudentMusicSheetSearch();
+        search.setStudentId(sysUser.getId());
+        search.setState(YesOrNoEnum.YES);
+        search.setAuditStatus(AuthStatusEnum.PASS);
+        IPage<MusicSheetVo> sheetVoIPage = musicSheetService.favoriteMusic(PageUtil.getPage(query),search, ClientEnum.TEACHER);
+        return succeed(PageUtil.pageInfo(sheetVoIPage));
+    }
+
     @ApiOperation(value = "乐谱分享")
     @GetMapping(value="/share")
     public HttpResponseResult<MusicSheetShareVo> shareMusicSheet() {

+ 16 - 4
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicAlbumController.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicAlbumSearch;
+import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.service.MusicAlbumService;
 import com.yonge.cooleshow.biz.dal.vo.MusicAlbumVo;
 import com.yonge.cooleshow.common.controller.BaseController;
@@ -40,13 +41,18 @@ public class MusicAlbumController extends BaseController {
      */
     @PostMapping("/favorite/{id}")
     @ApiOperation(value = "专辑收藏/取消收藏")
-    public HttpResponseResult<Boolean> favorite(@ApiParam(value = "专辑编号", required = true) @PathVariable("id") Long id) {
+    public HttpResponseResult<Boolean> favorite(@ApiParam(value = "专辑编号", required = true) @PathVariable("id") Long id,
+                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
 
-        return succeed(musicAlbumService.setFavorite(sysUser.getId(),id));
+        if (ClientEnum.invalid(clientType)) {
+            return failed("无效的客户端类型");
+        }
+
+        return succeed(musicAlbumService.setFavorite(sysUser.getId(), id, ClientEnum.valueOf(clientType)));
     }
 
 
@@ -55,15 +61,21 @@ public class MusicAlbumController extends BaseController {
      */
     @GetMapping("/favorite")
     @ApiOperation(value = "学生-收藏专辑列表")
-    public HttpResponseResult<PageInfo<MusicAlbumVo>> favoriteAlbum(QueryInfo query) {
+    public HttpResponseResult<PageInfo<MusicAlbumVo>> favoriteAlbum(@ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType,
+                                                                    QueryInfo query) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
+
+        if (ClientEnum.invalid(clientType)) {
+            return failed("无效的客户端类型");
+        }
+
         StudentMusicAlbumSearch search = new StudentMusicAlbumSearch();
         search.setStudentId(sysUser.getId());
         search.setAlbumStatus(YesOrNoEnum.YES);
-        IPage<MusicAlbumVo> albumVoIPage = musicAlbumService.favoriteAlbum(PageUtil.getPage(query), search);
+        IPage<MusicAlbumVo> albumVoIPage = musicAlbumService.favoriteAlbum(PageUtil.getPage(query), search, ClientEnum.valueOf(clientType));
         return succeed(PageUtil.pageInfo(albumVoIPage));
     }
 }

+ 9 - 7
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicSheetController.java

@@ -67,16 +67,12 @@ public class MusicSheetController extends BaseController {
     @PostMapping("/favorite/{id}")
     @ApiOperation(value = "曲目收藏/取消收藏")
     public HttpResponseResult<Boolean> favorite(@ApiParam(value = "曲目编号", required = true) @PathVariable("id") Long id,
-                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false) String clientType) {
+                                                @ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
 
-        // 设置默认客户端
-        if (StringUtils.isEmpty(clientType)) {
-            clientType = ClientEnum.STUDENT.getCode();
-        }
         if (ClientEnum.invalid(clientType)) {
             return failed("无效的客户端类型");
         }
@@ -110,16 +106,22 @@ public class MusicSheetController extends BaseController {
      */
     @GetMapping("/favorite")
     @ApiOperation(value = "学生-收藏单曲")
-    public HttpResponseResult<PageInfo<MusicSheetVo>> favoriteMusic(QueryInfo query) {
+    public HttpResponseResult<PageInfo<MusicSheetVo>> favoriteMusic(@ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType,
+                                                                    QueryInfo query) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
         }
+
+        if (ClientEnum.invalid(clientType)) {
+            return failed("无效的客户端类型");
+        }
+
         StudentMusicSheetSearch search = new StudentMusicSheetSearch();
         search.setStudentId(sysUser.getId());
         search.setState(YesOrNoEnum.YES);
         search.setAuditStatus(AuthStatusEnum.PASS);
-        IPage<MusicSheetVo> sheetVoIPage = musicSheetService.favoriteMusic(PageUtil.getPage(query),search);
+        IPage<MusicSheetVo> sheetVoIPage = musicSheetService.favoriteMusic(PageUtil.getPage(query),search, ClientEnum.valueOf(clientType));
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }
 

+ 1 - 1
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/open/OpenMusicAlbumController.java

@@ -98,7 +98,7 @@ public class OpenMusicAlbumController extends BaseController {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         YesOrNoEnum favorite = YesOrNoEnum.NO;
         if (sysUser != null && sysUser.getId() != null) {
-            favorite = musicAlbumService.checkFavorite(sysUser.getId(),query.getId() );
+            favorite = musicAlbumService.checkFavorite(sysUser.getId(),query.getId(), query.getClientType());
         }
         query.setType(2);
         query.setState(YesOrNoEnum.YES);