feat: 初始化音乐项目后台管理系统- 新增后台管理相关页面和功能组件
- 实现管理员评论管理、数据统计等功能 - 添加后台布局和路由管理 -配置数据库和Redis连接 - 实现文件上传和访问路径配置 - 添加Sa-Token安全配置
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
package com.test.musichouduan.service;
|
||||
|
||||
import com.test.musichouduan.dto.PageResult;
|
||||
import com.test.musichouduan.dto.SingerDTO;
|
||||
import com.test.musichouduan.entity.Singer;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 歌手服务接口
|
||||
*/
|
||||
public interface SingerService {
|
||||
|
||||
/**
|
||||
* 根据ID获取歌手
|
||||
*
|
||||
* @param id 歌手ID
|
||||
* @return 歌手DTO
|
||||
*/
|
||||
SingerDTO getSingerById(Long id);
|
||||
|
||||
/**
|
||||
* 分页获取歌手列表
|
||||
*
|
||||
* @param page 页码
|
||||
* @param size 每页大小
|
||||
* @param keyword 关键字
|
||||
* @param typeId 类型ID
|
||||
* @return 分页结果
|
||||
*/
|
||||
PageResult<SingerDTO> getSingerList(Integer page, Integer size, String keyword, Long typeId);
|
||||
|
||||
/**
|
||||
* 获取最新歌手列表
|
||||
*
|
||||
* @param limit 限制数量
|
||||
* @return 歌手列表
|
||||
*/
|
||||
List<SingerDTO> getLatestSinger(Integer limit);
|
||||
|
||||
/**
|
||||
* 获取热门歌手列表
|
||||
*
|
||||
* @param limit 限制数量
|
||||
* @return 歌手列表
|
||||
*/
|
||||
List<SingerDTO> getHotSinger(Integer limit);
|
||||
|
||||
/**
|
||||
* 添加歌手
|
||||
*
|
||||
* @param singerDTO 歌手DTO
|
||||
* @param avatar 头像文件
|
||||
* @return 歌手DTO
|
||||
*/
|
||||
SingerDTO addSinger(SingerDTO singerDTO, MultipartFile avatar);
|
||||
|
||||
/**
|
||||
* 更新歌手
|
||||
*
|
||||
* @param id 歌手ID
|
||||
* @param singerDTO 歌手DTO
|
||||
* @param avatar 头像文件
|
||||
* @return 歌手DTO
|
||||
*/
|
||||
SingerDTO updateSinger(Long id, SingerDTO singerDTO, MultipartFile avatar);
|
||||
|
||||
/**
|
||||
* 删除歌手
|
||||
*
|
||||
* @param id 歌手ID
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean deleteSinger(Long id);
|
||||
|
||||
/**
|
||||
* 收藏歌手
|
||||
*
|
||||
* @param id 歌手ID
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean collectSinger(Long id);
|
||||
|
||||
/**
|
||||
* 取消收藏歌手
|
||||
*
|
||||
* @param id 歌手ID
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean uncollectSinger(Long id);
|
||||
|
||||
/**
|
||||
* 获取用户收藏的歌手列表
|
||||
*
|
||||
* @param page 页码
|
||||
* @param size 每页大小
|
||||
* @return 分页结果
|
||||
*/
|
||||
PageResult<SingerDTO> getCollectedSinger(Integer page, Integer size);
|
||||
|
||||
/**
|
||||
* 添加音乐到歌手
|
||||
* @param singerId 歌手ID
|
||||
* @param musicId 音乐ID
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean addMusicToSinger(Long singerId, Long musicId);
|
||||
|
||||
/**
|
||||
* 从歌手移除音乐
|
||||
* @param singerId 歌手ID
|
||||
* @param musicId 音乐ID
|
||||
* @return 是否成功
|
||||
*/
|
||||
boolean removeMusicFromSinger(Long singerId, Long musicId);
|
||||
|
||||
/**
|
||||
* 根据ID获取歌手实体
|
||||
*
|
||||
* @param id 歌手ID
|
||||
* @return 歌手实体
|
||||
*/
|
||||
Singer getById(Long id);
|
||||
}
|
||||
Reference in New Issue
Block a user