diff --git a/music-houduan/src/main/java/com/test/musichouduan/repository/PlaylistRepository.java b/music-houduan/src/main/java/com/test/musichouduan/repository/PlaylistRepository.java index 6ed73d4..e3bc8e0 100644 --- a/music-houduan/src/main/java/com/test/musichouduan/repository/PlaylistRepository.java +++ b/music-houduan/src/main/java/com/test/musichouduan/repository/PlaylistRepository.java @@ -7,6 +7,8 @@ import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; +import org.springframework.data.jpa.domain.Specification; +import org.springframework.data.jpa.repository.EntityGraph; import org.springframework.data.jpa.repository.Query; import org.springframework.stereotype.Repository; @@ -18,6 +20,9 @@ import java.util.List; @Repository public interface PlaylistRepository extends JpaRepository, JpaSpecificationExecutor { + @EntityGraph(attributePaths = {"musics", "creator", "type"}) + Page findAll(Specification spec, Pageable pageable); + @Query("SELECT pt.name, COUNT(p) FROM Playlist p JOIN p.type pt GROUP BY pt.name") List countByPlaylistType(); diff --git a/music-qianduan/src/views/Playlist.vue b/music-qianduan/src/views/Playlist.vue index f1b6a73..40f55cb 100644 --- a/music-qianduan/src/views/Playlist.vue +++ b/music-qianduan/src/views/Playlist.vue @@ -3,7 +3,7 @@ import { ref, onMounted } from 'vue' import { useRouter } from 'vue-router' import { useUserStore } from '../stores/user' import { ElMessage } from 'element-plus' -import { Search } from '@element-plus/icons-vue' +import { Search, Headset } from '@element-plus/icons-vue' import { getPlaylistList, getHotPlaylist, toggleCollectPlaylist, isPlaylistCollected, uncollectPlaylist, collectPlaylist } from '../api/playlist' import { getPlaylistTypeList } from '../api/playlistType' @@ -259,6 +259,10 @@ onMounted(() => { {{ formatPlayCount(playlist.playCount) }} +
+ + {{ playlist.musicCount || 0 }} +
{
{{ playlist.description }}
by {{ playlist.creator?.username || '未知用户' }} - {{ playlist.songCount || 0 }}首歌曲
@@ -303,6 +306,10 @@ onMounted(() => { {{ formatPlayCount(playlist.playCount) }} +
+ + {{ playlist.musicCount || 0 }} +
{
{{ playlist.description }}
by {{ playlist.creator?.username || '未知用户' }} - {{ playlist.songCount || 0 }}首歌曲