Commit Graph

66 Commits

Author SHA1 Message Date
ikmkj
b29cc352cc fix(login): 修复登录错误处理并统一后端异常抛出
- 前端登录失败时添加错误处理标识检查,避免重复显示错误消息
- 后端服务层统一使用BusinessException替代RuntimeException
- 用户注册时用户名、邮箱、密码验证失败统一抛出业务异常
- 用户登录时用户名密码错误、账号禁用情况统一抛出业务异常
- 用户查询、更新、删除操作时用户不存在情况统一抛出业务异常
- 密码修改时旧密码错误、密码不一致情况统一抛出业务异常
2026-03-11 00:05:46 +08:00
root
1a00afd628 fix(comment): align houbb sensitive-word integration with official usage 2026-03-08 15:02:15 +08:00
root
e2e5d1a3a4 fix(deps): use correct houbb sensitive-word artifact 2026-03-08 14:57:44 +08:00
root
b96a39ff04 fix: 使用SensitiveWordBs替代旧Helper导入 2026-03-08 14:53:51 +08:00
root
d116403db4 refactor(comment): migrate sensitive word filter to houbb sensitive-word 2026-03-08 14:51:22 +08:00
root
bd5af140fe feat(comment): 新增敏感词过滤并拦截评论发送 2026-03-08 14:43:58 +08:00
root
63d71c01dd feat(admin-backend): add user avatar upload endpoint for admins 2026-03-08 14:27:17 +08:00
root
24eb4ec5d6 fix(music-detail): show global like/collect counts on music detail page 2026-03-08 14:09:10 +08:00
ikmkj
6f0e59cd28 config(database): 更新数据库连接URL配置
- 移除过时的字符编码和时区参数
- 添加allowPublicKeyRetrieval=true参数以解决公钥检索问题
- 简化数据库连接URL配置项
2026-03-08 13:38:41 +08:00
ikmkj
b46a7f8b1b feat(playlist): 实现热门歌单缓存更新功能
- 添加定时任务每小时更新热门歌单缓存
- 实现分页查询所有歌单并计算热门分数- 使用并行流提升歌单评分计算性能
- 按照热门分数排序并限制返回数量
- 将热门歌单列表序列化后存入Redis缓存
- 添加详细的JavaDoc注释说明方法用途
-优化查询逻辑中的条件组合说明- 增强错误处理和日志记录机制
2025-10-10 22:35:55 +08:00
ikmkj
4a379bed83 feat(playlist): 实现歌单收藏与取消收藏功能- 添加收藏状态检查逻辑
- 支持取消已收藏的歌单
- 更新歌单收藏计数- 保存用户收藏记录
- 返回收藏操作结果状态
2025-10-10 22:30:49 +08:00
ikmkj
1546cdb3c4 feat(singer): 添加歌手类型相关功能
- 在 pom.xml 中添加 Hutool 工具库依赖
- 优化前端 Singer.vue 中的歌手数据处理逻辑
- 在后端 SingerServiceImpl 中添加默认歌手类型设置功能
2025-08-10 19:36:38 +08:00
ikmkj
a36ef7a561 feat(comment): 优化评论加载效率并添加回复功能
- 在 CommentRepository 中添加 findByParentIdInOrderByCreateTimeAsc 方法,实现批量查询子评论
- 重构 CommentServiceImpl 中的 findCommentsByMusicId 方法,提升评论加载效率
- 在前端 MusicDetail 组件中增加回复功能,支持二级评论和回复展开/收起
- 优化 WebSocket订阅逻辑,实现实时更新评论列表
2025-08-10 16:23:12 +08:00
ikmkj
e30011cee2 refactor(time): 优化时间格式反序列化并统一时间格式- 新增 LocalDateTimeDeserializer 类,用于自定义 LocalDateTime 类型的反序列化逻辑
- 在 MusicDTO、PlaylistDTO、SingerDTO 和 UserDTO 中使用 LocalDateTimeDeserializer
-统一时间格式为 "yyyy-MM-dd HH:mm:ss"
- 移除了 SaTokenConfig 和 StpInterfaceImpl 中的调试信息打印
2025-08-10 14:42:23 +08:00
ikmkj
bf27209022 fix(music-houduan): 修复轮播图图片路径问题
- 修改了 BannerServiceImpl 类中的图片上传逻辑
- 使用 replace 方法移除了绝对路径中的项目目录和操作系统分隔符
-确保保存的图片路径为相对路径,格式为 /upload/images/...
2025-08-10 14:30:55 +08:00
ikmkj
c70a93e9f4 refactor(music-houduan): 修改用户收藏歌单的逻辑
- 移除了 UserCollectPlaylist 中的 collectTime 字段
- 使用 createTime 字段来记录收藏时间
- 更新了相关查询和排序逻辑
2025-08-10 14:23:24 +08:00
ikmkj
0c10c7def0 feat(playlist): 添加歌单收藏时间并优化相关功能
- 在 PlaylistDTO 中添加 collectTime 字段,用于显示收藏时间
- 修改收藏歌单逻辑,记录收藏时间
- 更新取消收藏歌单逻辑,使用 deleteByUserAndPlaylist 方法
- 在获取用户收藏的歌单列表时,添加收藏时间信息
- 重命名 UserCollectPlaylist
2025-08-10 14:16:40 +08:00
ikmkj
19f41c5e84 refactor(file): 优化文件上传和访问路径处理
- 修改 BannerServiceImpl 中图片 URL 的处理逻辑,确保使用相对路径
- 更新 FileServiceImpl 中文件上传方法,返回文件的绝对物理路径
- 在 MusicDTO 中为日期时间字段添加 JsonFormat 注解,统一日期格式
2025-08-10 14:04:56 +08:00
ikmkj
d48864b79b refactor(music-houduan): 优化文件上传和轮播图逻辑
- 修改 BannerServiceImpl 中的图片 URL 设置逻辑,保留原有的 /upload/images/... 格式
- 更新 FileServiceImpl 中的文件上传方法,返回文件的相对访问 URL 而非绝对物理路径
2025-08-10 13:48:37 +08:00
ikmkj
0eae203bd1 fix(music-houduan): 优化删除功能并添加相关操作
- 在删除音乐、歌单和歌手时,同时删除相关的收藏、点赞和播放历史记录
- 新增按音乐ID、歌单ID和歌手ID删除收藏记录的功能
- 新增按音乐ID删除点赞记录的功能
- 新增按歌单ID删除收藏记录的功能- 优化歌单收藏和取消收藏的逻辑
- 重构部分代码以提高可维护性
2025-08-10 13:27:05 +08:00
ikmkj
878bc326c3 refactor(music-houduan): 优化 SnowflakeIdUtil 和 TimeUtil 类
- 为 SnowflakeIdUtil 类添加详细注释,解释各个字段和方法的作用- 为 TimeUtil 类添加方法注释,说明各个方法的功能- 优化代码结构,提高可读性和可维护性
2025-08-10 12:24:33 +08:00
ikmkj
6ed9f73732 docs(README): 更新前后端部署说明
- 优化数据库配置步骤,增加创建数据库和导入SQL文件的详细说明
- 更新配置文件修改说明,提供更具体的配置示例
- 补充API文档访问说明
- 完善前端部署步骤,包括运行开发服务器和生产构建
- 增加SnowflakeIdUtil和TimeUtil工具类
2025-07-29 23:00:58 +08:00
ikmkj
96c7dee405 feat(playlist): 为音乐 DTO 添加歌手名称列表
- 在 PlaylistServiceImpl 类中,为 MusicDTO 对象添加歌手名称列表
-通过流操作获取音乐对象的歌手列表,并转换为歌手名称列表- 仅在音乐对象的歌手列表不为空时执行此操作
2025-07-29 20:56:10 +08:00
ikmkj
34a3358ea4 feat(playlist): 优化歌单详情页面加载逻辑
- 将评论获取移至歌单详情获取成功后
- 添加评论数到歌单 DTO
- 优化前端歌单详情展示
2025-07-29 20:27:57 +08:00
ikmkj
b0efe29b3b feat(playlist): 添加歌曲数量字段并标记音乐数量为已弃用
- 在 PlaylistDTO 中添加 songCount 字段,用于表示歌曲数量
- 将 musicCount 字段标记为 @Deprecated,准备在未来版本中移除
- 在 PlaylistServiceImpl 中实现 songCount 的设置逻辑
2025-07-29 20:20:48 +08:00
ikmkj
f67c6f2262 feat(singer): 优化歌手搜索功能
- 修改了前端 Singer.vue 文件,增加了对 keyword 的判断,以显示不同的标题
- 更新了后端 SingerServiceImpl 文件,改进了搜索逻辑,支持多字段查询
2025-07-29 19:56:08 +08:00
ikmkj
8aa076ded1 feat(search): 实现歌单搜索功能
- 在前端 Playlist.vue 中添加搜索结果展示逻辑
- 在后端 PlaylistServiceImpl 中实现关键词搜索的查询条件
- 优化搜索性能,使用 distinct 查询避免重复结果
- 搜索范围包括歌单名、描述、创建者用户名以及歌单内的音乐名
2025-07-29 19:48:43 +08:00
ikmkj
e8c66e0dd2 refactor(music-houduan): 重构 Jackson 配置并优化日期序列化
- 移除 application.yml 中的 Jackson 配置
- 新增 JacksonConfig 类,自定义 LocalDateTime 序列化
- 删除 SingerServiceImpl 中未使用的导入
2025-07-29 19:28:40 +08:00
ikmkj
d513685a6c fix(music-houduan): 修复歌手和音乐关联同步问题
- 在添加音乐到歌手时,同时添加歌手到音乐
- 在移除音乐和歌手关联时,同时从音乐中移除歌手
2025-07-29 00:13:48 +08:00
ikmkj
331245f8e6 feat(singer): 添加歌手评论数和收藏数功能
- 在 SingerDetail.vue 中添加评论数和收藏数的格式化计算属性
- 更新后端 SingerServiceImpl 类,添加评论数和收藏数的查询逻辑
- 在前端页面中使用格式化的评论数和收藏数
2025-07-29 00:06:48 +08:00
ikmkj
f15a50a2c0 feat(playlist): 增加歌单播放次数功能
- 在前端 PlaylistDetail.vue 中添加播放全部歌曲时增加播放次数的逻辑- 在后端 PlaylistServiceImpl 中实现 playPlaylist 方法,增加歌单播放次数
- 优化了播放全部歌曲的功能,包括处理播放次数增加失败的情况
2025-07-28 22:33:09 +08:00
ikmkj
01bbf8204c refactor(music): 优化歌单相关功能
- 初始化歌单属性默认值,避免空值- 调整歌单信息布局,优化界面显示
-修复歌单播放次数空值问题,提升数据准确性
2025-07-28 21:37:15 +08:00
ikmkj
7950a12855 feat(playlist): 优化歌单页面展示逻辑
- 移除歌单首歌曲数量的冗余展示
- 增加歌单总歌曲数量的展示
- 更新歌单列表和歌单详情页面的样式
- 在后端增加@EntityGraph注解,优化数据查询性能
2025-07-28 21:22:54 +08:00
ikmkj
6a1e67bc99 refactor(music-houduan): 优化头像上传逻辑- 在 SingerServiceImpl 和 UserController 中添加 File 类的导入
- 修改头像上传逻辑,将物理路径转换为相对于项目目录的路径
- 统一处理头像上传的方式,提高代码复用性
2025-07-27 16:00:59 +08:00
ikmkj
9fe317bffb fix(music): 修复音乐和封面上传路径问题
- 将音乐和封面的物理路径转换为相对于项目目录的路径
- 使用 '/' 替换系统文件分隔符,确保路径格式一致
2025-07-27 15:58:17 +08:00
ikmkj
e024184bbd feat(playlist): 添加歌单编辑功能
- 在前端 PlaylistDetail组件中添加编辑歌单的对话框和相关逻辑
- 在后端 PlaylistServiceImpl 中实现更新歌单信息和封面的方法
- 优化封面上传逻辑,将物理路径转换为相对路径
2025-07-27 15:55:44 +08:00
ikmkj
384b6b667f feat(file): 重构文件服务并优化音乐时长计算
-引入 mp3agic 库替换 jaudiotagger,使用纯 Java 解析 MP3 文件
- 修改 getMusicDuration 方法签名,使用 File 替代 MultipartFile
-优化 uploadMusic 方法,返回音乐文件的物理路径
- 更新 MusicServiceImpl 中的音乐上传逻辑
-移除不必要的临时文件操作
2025-07-27 14:41:27 +08:00
ikmkj
a5e2d13435 feat(music): 优化音乐数据加载和展示
- 优化音乐时长获取日志,增加文件名信息
- 添加歌手头像字段并处理相关逻辑
- 修改相关音乐推荐为热门音乐推荐- 优化相关音乐封面展示逻辑
- 使用 JOIN FETCH 优化音乐数据加载性能
2025-07-27 14:24:35 +08:00
ikmkj
b1d795337c refactor(layout): 优化 AdminLayout 页面布局和滚动功能
- 在 el-main 组件中添加 scroll-wrapper 类,实现内容区域的滚动功能
- 调整 admin-main 和 scroll-wrapper 的样式,确保滚动效果正常
- 修改 CommentDTO、PlaylistDTO 和 PlaylistServiceImpl 中的歌单类型相关字段和方法
2025-07-26 22:56:10 +08:00
ikmkj
a1e5294fdd feat(music): 支持音乐关联多个歌手
- 修改 Music 和 Singer 实体,使用 @ManyToMany 注解实现多对多关联- 在 MusicServiceImpl 中实现歌手名称字符串的分割和处理
- 删除 singer_music 表,改为在代码中处理关联关系
2025-07-26 22:23:05 +08:00
ikmkj
35db37ca12 feat(music): 优化音乐和歌手相关数据结构和功能
- 在 MusicDTO 中添加 typeName 和 releaseDate 字段
- 在 SingerDTO 中将 type 替换为 typeId 和 typeName
- 更新 MusicServiceImpl 和 SingerServiceImpl 中的相关逻辑
- 在前端 SingerDetail 组件中使用 typeName 替换类型代码
2025-07-26 22:12:39 +08:00
ikmkj
6d944ad56a cache(invalidate): 更新热门歌曲、歌单和歌手缓存
- 在添加、更新和删除音乐时更新热门歌曲缓存
- 在添加、更新和删除歌单时更新热门歌单缓存
- 在添加、更新和删除歌手时更新热门歌手缓存
2025-07-26 17:51:45 +08:00
ikmkj
5da1eab7b9 feat(music): 添加音乐收藏和点赞功能
- 在 MusicServiceImpl 中添加创建时间字段并设置为当前时间
- 在 UserLikeMusic 实体中添加创建时间字段并使用 @CreationTimestamp 注解
2025-07-26 17:26:41 +08:00
ikmkj
5b30905577 feat(music): 增加歌单和歌手的收藏数和评论数字段
- 在 PlaylistDTO 和 SingerDTO 中添加 collectCount 和 commentCount 字段
- 更新前端 Singer 组件,使用 getSingerById API 获取歌手信息
2025-07-26 13:00:38 +08:00
ikmkj
678149df79 feat(playlist): 增加歌单收藏状态检查功能
- 新增 isPlaylistCollected 接口和相关实现
- 修改 toggleCollectPlaylist 函数,增加当前收藏状态参数
- 在前端 PlaylistDetail 组件中添加收藏状态检查逻辑
- 后端增加对应的控制层、服务层和实现类方法
2025-07-26 12:44:51 +08:00
ikmkj
258215a4e6 feat(user): 为收藏音乐页面添加更多操作功能
- 添加下拉菜单,支持多种操作
- 实现添加到播放列表、下一首播放、下载音乐、下载歌词等功能
- 优化用户交互,增加确认对话框和提示消息
2025-07-26 12:07:45 +08:00
ikmkj
5d9eca4929 feat(singer): 实现歌手热度分计算和缓存机制
- 新增 HotSingerScoreUtil工具类,用于计算歌手热度分数
- 在 Singer 实体中添加 hotScore 字段,用于存储热度分数
- 在 SingerDTO 中添加 hotScore 字段,用于展示热度分数
- 修改 SingerServiceImpl 中的 getHotSinger 方法,支持从 Redis 缓存中获取热门歌手列表
- 实现定时任务和异步方法,用于定期更新和缓存热门歌手列表
2025-07-26 11:05:02 +08:00
ikmkj
7ec4c60110 feat(music-houduan): 实现歌单热度分数计算和缓存机制
- 新增 HotPlaylistScoreUtil 工具类用于计算歌单热度分数
- 在 Playlist 实体中添加 hotScore 字段
- 更新 PlaylistDTO 以包含热度分数
- 实现异步计算和缓存热门歌单的功能
- 添加定时任务每天更新热门歌单缓存
2025-07-26 10:52:30 +08:00
ikmkj
2af40c5a32 feat(singer): 添加歌手评论和收藏功能
- 在 CommentServiceImpl 中增加对歌手评论的处理逻辑- 在 SingerServiceImpl 中实现歌手收藏和取消收藏的功能
- 在前端 SingerDetail 组件中添加歌手的评论数、收藏数显示和相关操作
2025-07-26 10:39:51 +08:00
ikmkj
f3a6f99992 feat(playlist): 增加歌单收藏和评论功能
- 在 CommentServiceImpl 中添加歌单评论相关逻辑
- 在 PlaylistServiceImpl 中实现歌单收藏和取消收藏功能
- 在 PlaylistDetail.vue 中显示歌单的收藏数和评论数
- 更新数据库模型,在 Singer 实体中添加收藏数和评论数字段
2025-07-26 10:22:33 +08:00