feat: add admin detail policy actions

This commit is contained in:
Lan
2026-06-03 05:45:02 +08:00
parent 4ab0c0e7dc
commit 167d5cce3f
6 changed files with 273 additions and 1 deletions
+20
View File
@@ -7,6 +7,7 @@ import type {
AdminFilePatchPayload,
AdminFileDetailResponse,
AdminFileListParams,
AdminFilePolicyActionRequest,
AdminFilePreviewResponse,
ApiResponse,
ChunkUploadCompleteRequest,
@@ -37,6 +38,11 @@ const toUrlEncodedForm = (data: Record<string, string | number>) => {
return form
}
const isMethodFallbackError = (error: unknown) => {
const status = (error as { response?: { status?: number } })?.response?.status
return status === 404 || status === 405
}
export class FileService {
static async uploadFile(
file: File,
@@ -139,6 +145,20 @@ export class FileService {
return api.patch('/admin/file/update', data)
}
static async applyAdminFilePolicyAction(
data: AdminFilePolicyActionRequest
): Promise<ApiResponse<AdminFileDetailResponse>> {
try {
return await api.patch('/admin/file/policy-action', data)
} catch (error: unknown) {
if (!isMethodFallbackError(error)) {
throw error
}
return api.post('/admin/file/policy-action', data)
}
}
static async updateAdminFiles(
data: AdminBatchUpdateFilesRequest
): Promise<ApiResponse<AdminBatchUpdateFilesResponse>> {