2022-03-13 14:40:38 +08:00
|
|
|
import request from '@/utils/request'
|
|
|
|
|
|
|
|
export enum UserApiNames {
|
|
|
|
FETCH_USER_ACCOUNT = 'fetchUserAccount',
|
2022-04-05 02:30:07 +08:00
|
|
|
FETCH_USER_LIKED_TRACKS_IDS = 'fetchUserLikedTracksIDs',
|
2022-03-13 14:40:38 +08:00
|
|
|
FETCH_USER_PLAYLISTS = 'fetchUserPlaylists',
|
|
|
|
}
|
2020-10-10 19:54:44 +08:00
|
|
|
|
2020-10-25 14:15:02 +08:00
|
|
|
/**
|
|
|
|
* 获取用户详情
|
|
|
|
* 说明 : 登录后调用此接口 , 传入用户 id, 可以获取用户详情
|
|
|
|
* - uid : 用户 id
|
|
|
|
* @param {number} uid
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
export function userDetail(uid: number) {
|
2020-10-10 19:54:44 +08:00
|
|
|
return request({
|
2021-04-26 15:29:47 +08:00
|
|
|
url: '/user/detail',
|
|
|
|
method: 'get',
|
2020-10-10 19:54:44 +08:00
|
|
|
params: {
|
|
|
|
uid,
|
2021-04-26 15:29:47 +08:00
|
|
|
timestamp: new Date().getTime(),
|
2020-10-10 19:54:44 +08:00
|
|
|
},
|
2022-03-13 14:40:38 +08:00
|
|
|
})
|
2020-10-10 19:54:44 +08:00
|
|
|
}
|
|
|
|
|
2022-03-13 14:40:38 +08:00
|
|
|
// 获取账号详情
|
|
|
|
export interface fetchUserAccountResponse {
|
|
|
|
code: number
|
|
|
|
account: {
|
|
|
|
anonimousUser: boolean
|
|
|
|
ban: number
|
|
|
|
baoyueVersion: number
|
|
|
|
createTime: number
|
|
|
|
donateVersion: number
|
|
|
|
id: number
|
|
|
|
paidFee: boolean
|
|
|
|
status: number
|
|
|
|
tokenVersion: number
|
|
|
|
type: number
|
|
|
|
userName: string
|
|
|
|
vipType: number
|
|
|
|
whitelistAuthority: number
|
|
|
|
} | null
|
|
|
|
profile: {
|
|
|
|
userId: number
|
|
|
|
userType: number
|
|
|
|
nickname: string
|
|
|
|
avatarImgId: number
|
|
|
|
avatarUrl: string
|
|
|
|
backgroundImgId: number
|
|
|
|
backgroundUrl: string
|
|
|
|
signature: string
|
|
|
|
createTime: number
|
|
|
|
userName: string
|
|
|
|
accountType: number
|
|
|
|
shortUserName: string
|
|
|
|
birthday: number
|
|
|
|
authority: number
|
|
|
|
gender: number
|
|
|
|
accountStatus: number
|
|
|
|
province: number
|
|
|
|
city: number
|
|
|
|
authStatus: number
|
|
|
|
description: string | null
|
|
|
|
detailDescription: string | null
|
|
|
|
defaultAvatar: boolean
|
|
|
|
expertTags: [] | null
|
|
|
|
experts: [] | null
|
|
|
|
djStatus: number
|
|
|
|
locationStatus: number
|
|
|
|
vipType: number
|
|
|
|
followed: boolean
|
|
|
|
mutual: boolean
|
|
|
|
authenticated: boolean
|
|
|
|
lastLoginTime: number
|
|
|
|
lastLoginIP: string
|
|
|
|
remarkName: string | null
|
|
|
|
viptypeVersion: number
|
|
|
|
authenticationTypes: number
|
|
|
|
avatarDetail: string | null
|
|
|
|
anchor: boolean
|
|
|
|
} | null
|
|
|
|
}
|
|
|
|
export function fetchUserAccount(): Promise<fetchUserAccountResponse> {
|
2021-03-06 18:48:53 +08:00
|
|
|
return request({
|
2021-04-26 15:29:47 +08:00
|
|
|
url: '/user/account',
|
|
|
|
method: 'get',
|
2021-03-06 18:48:53 +08:00
|
|
|
params: {
|
|
|
|
timestamp: new Date().getTime(),
|
|
|
|
},
|
2022-03-13 14:40:38 +08:00
|
|
|
})
|
2021-03-06 18:48:53 +08:00
|
|
|
}
|
|
|
|
|
2022-03-13 14:40:38 +08:00
|
|
|
// 获取用户歌单
|
|
|
|
export interface FetchUserPlaylistsParams {
|
|
|
|
uid: number
|
|
|
|
offset: number
|
|
|
|
limit?: number // default 30
|
|
|
|
}
|
2022-03-19 17:03:29 +08:00
|
|
|
export interface FetchUserPlaylistsResponse {
|
2022-03-13 14:40:38 +08:00
|
|
|
code: number
|
|
|
|
more: false
|
|
|
|
version: string
|
|
|
|
playlist: Playlist[]
|
|
|
|
}
|
|
|
|
export function fetchUserPlaylists(
|
|
|
|
params: FetchUserPlaylistsParams
|
|
|
|
): Promise<FetchUserPlaylistsResponse> {
|
2020-10-10 19:54:44 +08:00
|
|
|
return request({
|
2021-04-26 15:29:47 +08:00
|
|
|
url: '/user/playlist',
|
|
|
|
method: 'get',
|
2020-10-10 19:54:44 +08:00
|
|
|
params,
|
2022-03-13 14:40:38 +08:00
|
|
|
})
|
2020-10-10 19:54:44 +08:00
|
|
|
}
|
|
|
|
|
2022-04-05 02:30:07 +08:00
|
|
|
export interface FetchUserLikedTracksIDsParams {
|
2022-03-13 14:40:38 +08:00
|
|
|
uid: number
|
2022-01-07 21:32:00 +08:00
|
|
|
}
|
2022-04-05 02:30:07 +08:00
|
|
|
export interface FetchUserLikedTracksIDsResponse {
|
2022-03-13 14:40:38 +08:00
|
|
|
code: number
|
|
|
|
checkPoint: number
|
|
|
|
ids: number[]
|
|
|
|
}
|
2022-04-05 02:30:07 +08:00
|
|
|
export function fetchUserLikedTracksIDs(
|
|
|
|
params: FetchUserLikedTracksIDsParams
|
|
|
|
): Promise<FetchUserLikedTracksIDsResponse> {
|
2020-10-10 19:54:44 +08:00
|
|
|
return request({
|
2021-04-26 15:29:47 +08:00
|
|
|
url: '/likelist',
|
|
|
|
method: 'get',
|
2020-10-17 00:18:24 +08:00
|
|
|
params: {
|
2022-03-13 14:40:38 +08:00
|
|
|
uid: params.uid,
|
2020-10-17 00:18:24 +08:00
|
|
|
timestamp: new Date().getTime(),
|
|
|
|
},
|
2022-03-13 14:40:38 +08:00
|
|
|
})
|
2020-10-10 19:54:44 +08:00
|
|
|
}
|
2020-10-25 14:12:31 +08:00
|
|
|
|
2020-10-26 15:46:02 +08:00
|
|
|
/**
|
|
|
|
* 每日签到
|
|
|
|
* 说明 : 调用此接口可签到获取积分
|
|
|
|
* - type: 签到类型 , 默认 0, 其中 0 为安卓端签到 ,1 为 web/PC 签到
|
|
|
|
* @param {number} type
|
|
|
|
*/
|
2020-10-25 14:12:31 +08:00
|
|
|
export function dailySignin(type = 0) {
|
|
|
|
return request({
|
2021-04-26 15:29:47 +08:00
|
|
|
url: '/daily_signin',
|
|
|
|
method: 'post',
|
2020-10-25 14:12:31 +08:00
|
|
|
params: {
|
|
|
|
type,
|
2020-10-30 14:58:02 +08:00
|
|
|
timestamp: new Date().getTime(),
|
2020-10-25 14:12:31 +08:00
|
|
|
},
|
2022-03-13 14:40:38 +08:00
|
|
|
})
|
2020-10-25 14:12:31 +08:00
|
|
|
}
|
2020-10-26 15:46:02 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取收藏的专辑(需要登录)
|
|
|
|
* 说明 : 调用此接口可获取到用户收藏的专辑
|
2021-06-11 10:56:05 +08:00
|
|
|
* - limit : 返回数量 , 默认为 25
|
|
|
|
* - offset : 偏移数量,用于分页 , 如 :( 页数 -1)*25, 其中 25 为 limit 的值 , 默认为 0
|
2020-10-26 15:46:02 +08:00
|
|
|
* @param {Object} params
|
|
|
|
* @param {number} params.limit
|
|
|
|
* @param {number=} params.offset
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function likedAlbums(params) {
|
|
|
|
// return request({
|
|
|
|
// url: '/album/sublist',
|
|
|
|
// method: 'get',
|
|
|
|
// params: {
|
|
|
|
// limit: params.limit,
|
|
|
|
// timestamp: new Date().getTime(),
|
|
|
|
// },
|
|
|
|
// })
|
|
|
|
// }
|
2020-10-26 15:46:02 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取收藏的歌手(需要登录)
|
|
|
|
* 说明 : 调用此接口可获取到用户收藏的歌手
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function likedArtists(params) {
|
|
|
|
// return request({
|
|
|
|
// url: '/artist/sublist',
|
|
|
|
// method: 'get',
|
|
|
|
// params: {
|
|
|
|
// limit: params.limit,
|
|
|
|
// timestamp: new Date().getTime(),
|
|
|
|
// },
|
|
|
|
// })
|
|
|
|
// }
|
2020-10-26 15:46:02 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取收藏的MV(需要登录)
|
|
|
|
* 说明 : 调用此接口可获取到用户收藏的MV
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function likedMVs(params) {
|
|
|
|
// return request({
|
|
|
|
// url: '/mv/sublist',
|
|
|
|
// method: 'get',
|
|
|
|
// params: {
|
|
|
|
// limit: params.limit,
|
|
|
|
// timestamp: new Date().getTime(),
|
|
|
|
// },
|
|
|
|
// })
|
|
|
|
// }
|
2021-06-05 21:14:06 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 上传歌曲到云盘(需要登录)
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function uploadSong(file) {
|
|
|
|
// let formData = new FormData()
|
|
|
|
// formData.append('songFile', file)
|
|
|
|
// return request({
|
|
|
|
// url: '/cloud',
|
|
|
|
// method: 'post',
|
|
|
|
// params: {
|
|
|
|
// timestamp: new Date().getTime(),
|
|
|
|
// },
|
|
|
|
// data: formData,
|
|
|
|
// headers: {
|
|
|
|
// 'Content-Type': 'multipart/form-data',
|
|
|
|
// },
|
|
|
|
// timeout: 200000,
|
|
|
|
// }).catch(error => {
|
|
|
|
// alert(`上传失败,Error: ${error}`)
|
|
|
|
// })
|
|
|
|
// }
|
2021-06-05 21:14:06 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取云盘歌曲(需要登录)
|
|
|
|
* 说明 : 登录后调用此接口 , 可获取云盘数据 , 获取的数据没有对应 url, 需要再调用一 次 /song/url 获取 url
|
|
|
|
* - limit : 返回数量 , 默认为 200
|
|
|
|
* - offset : 偏移数量,用于分页 , 如 :( 页数 -1)*200, 其中 200 为 limit 的值 , 默认为 0
|
|
|
|
* @param {Object} params
|
|
|
|
* @param {number} params.limit
|
|
|
|
* @param {number=} params.offset
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function cloudDisk(params = {}) {
|
|
|
|
// params.timestamp = new Date().getTime()
|
|
|
|
// return request({
|
|
|
|
// url: '/user/cloud',
|
|
|
|
// method: 'get',
|
|
|
|
// params,
|
|
|
|
// })
|
|
|
|
// }
|
2021-06-05 21:14:06 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 获取云盘歌曲详情(需要登录)
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function cloudDiskTrackDetail(id) {
|
|
|
|
// return request({
|
|
|
|
// url: '/user/cloud/detail',
|
|
|
|
// method: 'get',
|
|
|
|
// params: {
|
|
|
|
// timestamp: new Date().getTime(),
|
|
|
|
// id,
|
|
|
|
// },
|
|
|
|
// })
|
|
|
|
// }
|
2021-06-05 21:14:06 +08:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 删除云盘歌曲(需要登录)
|
|
|
|
* @param {Array} id
|
|
|
|
*/
|
2022-03-17 14:45:04 +08:00
|
|
|
// export function cloudDiskTrackDelete(id) {
|
|
|
|
// return request({
|
|
|
|
// url: '/user/cloud/del',
|
|
|
|
// method: 'get',
|
|
|
|
// params: {
|
|
|
|
// timestamp: new Date().getTime(),
|
|
|
|
// id,
|
|
|
|
// },
|
|
|
|
// })
|
|
|
|
// }
|