refactor(music-houduan): 修改用户收藏歌单的逻辑

- 移除了 UserCollectPlaylist 中的 collectTime 字段
- 使用 createTime 字段来记录收藏时间
- 更新了相关查询和排序逻辑
This commit is contained in:
ikmkj
2025-08-10 14:23:24 +08:00
parent 0c10c7def0
commit c70a93e9f4
2 changed files with 4 additions and 4 deletions

View File

@@ -35,6 +35,7 @@ public class UserCollectPlaylist {
/** /**
* 收藏时间 * 收藏时间
*/ */
@CreationTimestamp
@Column(nullable = false, updatable = false) @Column(nullable = false, updatable = false)
private LocalDateTime collectTime; private LocalDateTime createTime;
} }

View File

@@ -375,7 +375,6 @@ public class PlaylistServiceImpl implements PlaylistService {
com.test.musichouduan.entity.UserCollectPlaylist userCollectPlaylist = new com.test.musichouduan.entity.UserCollectPlaylist(); com.test.musichouduan.entity.UserCollectPlaylist userCollectPlaylist = new com.test.musichouduan.entity.UserCollectPlaylist();
userCollectPlaylist.setUser(user); userCollectPlaylist.setUser(user);
userCollectPlaylist.setPlaylist(playlist); userCollectPlaylist.setPlaylist(playlist);
userCollectPlaylist.setCollectTime(java.time.LocalDateTime.now());
userCollectPlaylistRepository.save(userCollectPlaylist); userCollectPlaylistRepository.save(userCollectPlaylist);
// 更新收藏数 // 更新收藏数
@@ -429,7 +428,7 @@ public class PlaylistServiceImpl implements PlaylistService {
// 获取用户收藏的歌单 // 获取用户收藏的歌单
Page<Playlist> playlistPage = userCollectPlaylistRepository.findCollectedPlaylist( Page<Playlist> playlistPage = userCollectPlaylistRepository.findCollectedPlaylist(
userId, userId,
PageRequest.of(page - 1, size, Sort.by(Sort.Direction.DESC, "collectTime")) PageRequest.of(page - 1, size, Sort.by(Sort.Direction.DESC, "createTime"))
); );
// 转换为DTO // 转换为DTO
@@ -438,7 +437,7 @@ public class PlaylistServiceImpl implements PlaylistService {
PlaylistDTO dto = convertToDTO(playlist); PlaylistDTO dto = convertToDTO(playlist);
// 从收藏记录中获取收藏时间 // 从收藏记录中获取收藏时间
userCollectPlaylistRepository.findByUserIdAndPlaylistId(userId, playlist.getId()) userCollectPlaylistRepository.findByUserIdAndPlaylistId(userId, playlist.getId())
.ifPresent(ucp -> dto.setCollectTime(ucp.getCollectTime())); .ifPresent(ucp -> dto.setCollectTime(ucp.getCreateTime()));
return dto; return dto;
}) })
.collect(Collectors.toList()); .collect(Collectors.toList());