yunzer_go/pc/src/api/file.js
2025-10-29 23:07:53 +08:00

100 lines
1.8 KiB
JavaScript

import request from "@/utils/request";
/**
* 获取所有文件
* @returns {Promise}
*/
export function getAllFiles() {
return request({
url: "/api/files",
method: "get",
});
}
/**
* 获取我的文件
* @returns {Promise}
*/
export function getMyFiles() {
return request({
url: "/api/files/my",
method: "get",
});
}
/**
* 根据ID获取文件
* @param {number|string} id 文件ID
* @returns {Promise}
*/
export function getFileById(id) {
return request({
url: `/api/files/${id}`,
method: "get",
});
}
/**
* 上传文件
* @param {FormData} formData 文件数据
* @param {Object} options 额外选项
* @param {string} [options.category]
* @param {string} [options.tenantId]
* @returns {Promise}
*/
export function uploadFile(formData, options = {}) {
if (options.category) {
formData.append('category', options.category);
}
if (options.tenantId) {
formData.append('tenant_id', options.tenantId);
}
return request({
url: "/api/files",
method: "post",
data: formData,
headers: {
"Content-Type": "multipart/form-data"
}
});
}
/**
* 更新文件信息
* @param {number|string} id 文件ID
* @param {Object} fileData 更新的数据
* @returns {Promise}
*/
export function updateFile(id, fileData) {
return request({
url: `/api/files/${id}`,
method: "put",
data: fileData,
});
}
/**
* 删除文件
* @param {number|string} id 文件ID
* @returns {Promise}
*/
export function deleteFile(id) {
return request({
url: `/api/files/${id}`,
method: "delete",
});
}
/**
* 搜索文件
* @param {string} keyword 关键字
* @returns {Promise}
*/
export function searchFiles(keyword) {
return request({
url: `/api/files/search`,
method: "get",
params: { keyword },
});
}