diff --git a/src/main/modules/fileManager.ts b/src/main/modules/fileManager.ts index ae3cb93..be46448 100644 --- a/src/main/modules/fileManager.ts +++ b/src/main/modules/fileManager.ts @@ -60,13 +60,22 @@ export function initializeFileManager() { // 通用的打开目录处理 ipcMain.on('open-directory', (_, filePath) => { try { - if (fs.statSync(filePath).isDirectory()) { - shell.openPath(filePath); + // 验证文件路径 + if (!filePath) { + console.error('无效的文件路径: 路径为空'); + return; + } + + // 统一处理路径分隔符 + const normalizedPath = path.normalize(filePath); + + if (fs.statSync(normalizedPath).isDirectory()) { + shell.openPath(normalizedPath); } else { - shell.showItemInFolder(filePath); + shell.showItemInFolder(normalizedPath); } } catch (error) { - console.error('Error opening path:', error); + console.error('打开路径失败:', error); } }); diff --git a/src/renderer/api/music.ts b/src/renderer/api/music.ts index d7c97ed..236f892 100644 --- a/src/renderer/api/music.ts +++ b/src/renderer/api/music.ts @@ -13,20 +13,25 @@ export const getMusicQualityDetail = (id: number) => { }; // 根据音乐Id获取音乐播放URl -export const getMusicUrl = async (id: number) => { +export const getMusicUrl = async (id: number, isDownloaded: boolean = false) => { // 判断是否登录 - if (store.state.user) { - const res = await request.get('/song/download/url/v1', { - params: { - id, - level: store.state.setData.musicQuality || 'higher', - cookie: `${localStorage.getItem('token')} os=pc;` - } - }); + try { + if (store.state.user && isDownloaded && store.state.user.vipType !== 0) { + const url = '/song/download/url/v1'; + const res = await request.get(url, { + params: { + id, + level: store.state.setData.musicQuality || 'higher', + cookie: `${localStorage.getItem('token')} os=pc;` + } + }); - if (res.data.data.url) { - return { data: { data: [{ ...res.data.data }] } }; + if (res.data.data.url) { + return { data: { data: [{ ...res.data.data }] } }; + } } + } catch (error) { + console.error('error', error); } return await request.get('/song/url/v1', { @@ -84,8 +89,10 @@ export const likeSong = (id: number, like: boolean = true) => { }; // 获取用户喜欢的音乐列表 -export const getLikedList = () => { - return request.get('/likelist'); +export const getLikedList = (uid: number) => { + return request.get('/likelist', { + params: { uid } + }); }; // 创建歌单 diff --git a/src/renderer/components/common/DownloadDrawer.vue b/src/renderer/components/common/DownloadDrawer.vue index 3d91206..56dd0bb 100644 --- a/src/renderer/components/common/DownloadDrawer.vue +++ b/src/renderer/components/common/DownloadDrawer.vue @@ -85,7 +85,7 @@