Industrial-image-management.../src/apis/bussiness/bussiness.ts

120 lines
2.4 KiB
TypeScript

import http from '@/utils/http'
const { request } = http
// 文件信息
export interface KnowledgeFile {
id: string
name: string
size: string
type: string
uploadTime: string
}
// 文件夹信息
export interface KnowledgeFolder {
id: string
name: string
children?: KnowledgeFolder[]
}
// 获取文件夹树
export function getFolderTreeApi() {
return request<KnowledgeFolder[]>({
url: '/knowledge/folders',
method: 'get',
})
}
// 获取文件夹列表
export function getFolderListApi(params?: { page?: number; pageSize?: number; folderName?: string }) {
return request<{ list: KnowledgeFolder[]; total: number }>({
url: '/knowledge/folder-list',
method: 'get',
params,
})
}
// 获取文件列表(按文件夹)
export function getFilesApi(folderId: string) {
return request<KnowledgeFile[]>({
url: '/knowledge/files',
method: 'get',
params: { folderId },
})
}
// 创建文件夹
export function createFolderApi(data: { name: string; parentId?: string }) {
return request({
url: '/knowledge/create-folder',
method: 'post',
data,
})
}
// 更新文件夹
export function updateFolderApi(folderId: string, data: { name: string }) {
return request({
url: `/knowledge/update-folder/${folderId}`,
method: 'put',
data,
})
}
// 删除文件夹
export function deleteFolderApi(folderId: string) {
return request({
url: `/knowledge/delete-folder/${folderId}`,
method: 'delete',
})
}
// 删除文件
export function deleteFileApi(fileId: string) {
return request({
url: `/knowledge/delete-file/${fileId}`,
method: 'delete',
})
}
// 下载文件
export function downloadFileApi(fileId: string) {
return request<Blob>({
url: `/knowledge/download/${fileId}`,
method: 'get',
responseType: 'blob',
})
}
// 上传文件
export function uploadFileApi(data: FormData) {
return request({
url: '/knowledge/upload',
method: 'post',
data,
headers: {
'Content-Type': 'multipart/form-data',
},
})
}
// 更新文件名
export function updateFileNameApi(fileId: string, newName: string) {
return request({
url: `/knowledge/update-file-name/${fileId}`,
method: 'put',
data: { name: newName },
})
}
// 预览文件
export function previewFileApi(fileId: string) {
return request({
url: `/knowledge/preview/${fileId}`,
method: 'get',
})
}