diff --git a/src/i18n/lang/en-US/user.ts b/src/i18n/lang/en-US/user.ts index ef1b4f6..b933803 100644 --- a/src/i18n/lang/en-US/user.ts +++ b/src/i18n/lang/en-US/user.ts @@ -13,6 +13,27 @@ export default { title: 'Listening History', playCount: '{count} times' }, + follow: { + title: 'Follow List', + viewPlaylist: 'View Playlist', + noFollowings: 'No Followings', + loadMore: 'Load More', + noSignature: 'This guy is lazy, nothing left' + }, + follower: { + title: 'Follower List', + noFollowers: 'No Followers', + loadMore: 'Load More' + }, + detail: { + playlists: 'Playlists', + records: 'Listening History', + noPlaylists: 'No Playlists', + noRecords: 'No Listening History', + artist: 'Artist', + noSignature: 'This guy is lazy, nothing left', + invalidUserId: 'Invalid User ID' + }, message: { loadFailed: 'Failed to load user page', deleteSuccess: 'Successfully deleted', diff --git a/src/i18n/lang/zh-CN/user.ts b/src/i18n/lang/zh-CN/user.ts index 872a9ce..840d6f6 100644 --- a/src/i18n/lang/zh-CN/user.ts +++ b/src/i18n/lang/zh-CN/user.ts @@ -13,6 +13,27 @@ export default { title: '听歌排行', playCount: '{count}次' }, + follow: { + title: '关注列表', + viewPlaylist: '查看歌单', + noFollowings: '暂无关注', + loadMore: '加载更多', + noSignature: '这个家伙很懒,什么都没留下' + }, + follower: { + title: '粉丝列表', + noFollowers: '暂无粉丝', + loadMore: '加载更多' + }, + detail: { + playlists: '歌单', + records: '听歌排行', + noPlaylists: '暂无歌单', + noRecords: '暂无听歌记录', + artist: '歌手', + noSignature: '这个人很懒,什么都没留下', + invalidUserId: '用户ID无效' + }, message: { loadFailed: '加载用户页面失败', deleteSuccess: '删除成功', diff --git a/src/preload/index.ts b/src/preload/index.ts index 92ba3b2..be1f737 100644 --- a/src/preload/index.ts +++ b/src/preload/index.ts @@ -26,9 +26,7 @@ const api = { }, // 语言相关 onLanguageChanged: (callback: (locale: string) => void) => { - console.log('注册语言变更监听器'); ipcRenderer.on('language-changed', (_event, locale) => { - console.log('收到语言变更事件:', locale); callback(locale); }); }, diff --git a/src/renderer/api/user.ts b/src/renderer/api/user.ts index 7d9646f..2c4d125 100644 --- a/src/renderer/api/user.ts +++ b/src/renderer/api/user.ts @@ -1,3 +1,4 @@ +import type { IUserDetail, IUserFollow } from '@/type/user'; import request from '@/utils/request'; // /user/detail @@ -6,8 +7,8 @@ export function getUserDetail(uid: number) { } // /user/playlist -export function getUserPlaylist(uid: number) { - return request.get('/user/playlist', { params: { uid } }); +export function getUserPlaylist(uid: number, limit: number = 30, offset: number = 0) { + return request.get('/user/playlist', { params: { uid, limit, offset } }); } // 播放历史 @@ -15,3 +16,56 @@ export function getUserPlaylist(uid: number) { export function getUserRecord(uid: number, type: number = 0) { return request.get('/user/record', { params: { uid, type } }); } + +// 获取用户关注列表 +// /user/follows?uid=32953014 +export function getUserFollows(uid: number, limit: number = 30, offset: number = 0) { + return request.get('/user/follows', { params: { uid, limit, offset } }); +} + +// 获取用户粉丝列表 +export function getUserFollowers(uid: number, limit: number = 30, offset: number = 0) { + return request.post('/user/followeds', { uid, limit, offset }); +} + +// 获取用户账号信息 +export const getUserAccount = () => { + return request({ + url: '/user/account', + method: 'get' + }); +}; + +// 获取用户详情 +export const getUserDetailInfo = (params: { uid: string | number }) => { + return request({ + url: '/user/detail', + method: 'get', + params + }); +}; + +// 获取用户关注列表 +export const getUserFollowsInfo = (params: { + uid: string | number; + limit?: number; + offset?: number; +}) => { + return request<{ + follow: IUserFollow[]; + more: boolean; + }>({ + url: '/user/follows', + method: 'get', + params + }); +}; + +// 获取用户歌单 +export const getUserPlaylists = (params: { uid: string | number }) => { + return request({ + url: '/user/playlist', + method: 'get', + params + }); +}; diff --git a/src/renderer/layout/components/SearchBar.vue b/src/renderer/layout/components/SearchBar.vue index 60c379c..33e3375 100644 --- a/src/renderer/layout/components/SearchBar.vue +++ b/src/renderer/layout/components/SearchBar.vue @@ -1,5 +1,8 @@