47 lines
1.6 KiB
TypeScript
47 lines
1.6 KiB
TypeScript
import { httpDelete, httpGet, httpPut } from '@/utils/request'
|
|
import type { PageResult } from '@/types/common'
|
|
import type {
|
|
UserBanRequest,
|
|
UserDetailResponse,
|
|
UserListItem,
|
|
UserListQuery,
|
|
UserQuotaAdjustRequest,
|
|
UserUnbanRequest,
|
|
UserVIPAdjustRequest,
|
|
} from '@/types/user'
|
|
|
|
/** 用户分页列表 */
|
|
export function getUserList(query: UserListQuery): Promise<PageResult<UserListItem>> {
|
|
return httpGet<PageResult<UserListItem>>('/users', { ...query })
|
|
}
|
|
|
|
/** 用户详情(含四类额度) */
|
|
export function getUserDetail(uuid: string): Promise<UserDetailResponse> {
|
|
return httpGet<UserDetailResponse>(`/users/${uuid}`)
|
|
}
|
|
|
|
/** 封禁用户 */
|
|
export function banUser(uuid: string, data: UserBanRequest): Promise<Record<string, never>> {
|
|
return httpPut<Record<string, never>>(`/users/${uuid}/ban`, data)
|
|
}
|
|
|
|
/** 解封用户 */
|
|
export function unbanUser(uuid: string, data: UserUnbanRequest): Promise<Record<string, never>> {
|
|
return httpPut<Record<string, never>>(`/users/${uuid}/unban`, data)
|
|
}
|
|
|
|
/** 额度人工调整 */
|
|
export function adjustUserQuota(uuid: string, data: UserQuotaAdjustRequest): Promise<Record<string, never>> {
|
|
return httpPut<Record<string, never>>(`/users/${uuid}/quota`, data)
|
|
}
|
|
|
|
/** VIP 人工调整 */
|
|
export function adjustUserVip(uuid: string, data: UserVIPAdjustRequest): Promise<Record<string, never>> {
|
|
return httpPut<Record<string, never>>(`/users/${uuid}/vip`, data)
|
|
}
|
|
|
|
/** 回收额度凭证 */
|
|
export function revokeGrant(uuid: string, grantId: number): Promise<Record<string, never>> {
|
|
return httpDelete<Record<string, never>>(`/users/${uuid}/grants/${grantId}`)
|
|
}
|