重构项目,方便开发
This commit is contained in:
88
frontend-vue/src/shared/api/brand.ts
Normal file
88
frontend-vue/src/shared/api/brand.ts
Normal file
@@ -0,0 +1,88 @@
|
||||
import { requestDeleteJson, requestGetJson, requestPostJson } from '@/shared/api/http'
|
||||
|
||||
export interface BrandExpandFolderResponse {
|
||||
success: boolean
|
||||
paths?: string[]
|
||||
error?: string
|
||||
}
|
||||
|
||||
export interface BrandTaskResultPaths {
|
||||
zip_url?: string
|
||||
}
|
||||
|
||||
export interface BrandTaskItem {
|
||||
id: number | string
|
||||
status?: 'pending' | 'running' | 'success' | 'failed' | 'cancelled' | string
|
||||
desc?: string
|
||||
file_paths?: string[]
|
||||
created_at?: string
|
||||
progress_total?: number
|
||||
progress_current?: number
|
||||
result_paths?: BrandTaskResultPaths
|
||||
}
|
||||
|
||||
export interface BrandTaskListResponse {
|
||||
success: boolean
|
||||
items?: BrandTaskItem[]
|
||||
error?: string
|
||||
}
|
||||
|
||||
export interface BrandTaskDetailResponse {
|
||||
success: boolean
|
||||
task?: BrandTaskItem
|
||||
error?: string
|
||||
}
|
||||
|
||||
export interface BrandTaskMutationResponse {
|
||||
success: boolean
|
||||
task_id?: string
|
||||
error?: string
|
||||
}
|
||||
|
||||
export function getBrandTaskEventsUrl(taskId: string | number) {
|
||||
return `/api/brand/tasks/${taskId}/events`
|
||||
}
|
||||
|
||||
export function getBrandTaskDownloadUrl(taskId: string | number) {
|
||||
return `/api/brand/download/${taskId}`
|
||||
}
|
||||
|
||||
export function getBrandTemplateXlsxUrl() {
|
||||
return '/static/品牌文档格式_模板.xlsx'
|
||||
}
|
||||
|
||||
export function getBrandTemplateZipUrl() {
|
||||
return '/static/模板2-以文件夹方式上传.zip'
|
||||
}
|
||||
|
||||
export function expandBrandFolder(folder: string) {
|
||||
return requestPostJson<BrandExpandFolderResponse>('/api/brand/expand-folder', { folder })
|
||||
}
|
||||
|
||||
export function runBrandNow(paths: string[], strategy: string) {
|
||||
return requestPostJson<BrandTaskMutationResponse>('/api/brand/run', { paths, strategy })
|
||||
}
|
||||
|
||||
export function createBrandTask(paths: string[], strategy: string) {
|
||||
return requestPostJson<BrandTaskMutationResponse>('/api/brand/tasks', { paths, strategy })
|
||||
}
|
||||
|
||||
export function getBrandTasks() {
|
||||
return requestGetJson<BrandTaskListResponse>('/api/brand/tasks')
|
||||
}
|
||||
|
||||
export function getBrandTask(taskId: string | number) {
|
||||
return requestGetJson<BrandTaskDetailResponse>(`/api/brand/tasks/${taskId}`)
|
||||
}
|
||||
|
||||
export function cancelBrandTask(taskId: string | number) {
|
||||
return requestPostJson<BrandTaskMutationResponse>(`/api/brand/tasks/${taskId}/cancel`)
|
||||
}
|
||||
|
||||
export function deleteBrandTask(taskId: string | number) {
|
||||
return requestDeleteJson<BrandTaskMutationResponse>(`/api/brand/tasks/${taskId}`)
|
||||
}
|
||||
|
||||
export function createBrandTaskEvents(taskId: string | number) {
|
||||
return new EventSource(getBrandTaskEventsUrl(taskId))
|
||||
}
|
||||
Reference in New Issue
Block a user