From 91b6deeb0da52efa76b4c06153168cd5f274f96a Mon Sep 17 00:00:00 2001 From: chengyiming <2026642010@qq.com> Date: Fri, 1 Aug 2025 16:53:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=A4=B9=E5=88=9B=E5=BB=BA?= =?UTF-8?q?=EF=BC=8Clist=E6=96=87=E4=BB=B6=E5=A4=B9=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/apis/bussiness/bussiness.js | 117 ++ src/views/bussiness-data/bussiness.vue | 2070 +++++++++++++++++++----- 2 files changed, 1808 insertions(+), 379 deletions(-) create mode 100644 src/apis/bussiness/bussiness.js diff --git a/src/apis/bussiness/bussiness.js b/src/apis/bussiness/bussiness.js new file mode 100644 index 0000000..8e1a5fc --- /dev/null +++ b/src/apis/bussiness/bussiness.js @@ -0,0 +1,117 @@ +// @/apis/bussiness/bussiness.js(改为纯JS文件) +import http from '@/utils/http'; + +const { request } = http; + +// 获取文件夹列表(分页) +export function getFolderListApi(params) { + return request({ + url: '/businessData/folder/list', + method: 'get', + params: { + page: params?.page || 1, + pageSize: params?.pageSize || 10, + parentId: params?.parentId, + keyword: params?.keyword + } + }); +} + +// 获取文件列表(分页) +export function getFilesApi(params) { + return request({ + url: '/businessData/file/list', + method: 'get', + params: { + folderId: params.folderId, + page: params.page || 1, + pageSize: params.pageSize || 10 + } + }); +} + +// 创建文件夹 +export function createFolderApi(data) { + return request({ + url: '/businessData/folder/creatFolder', + method: 'post', + data, + }); +} + +// 更新文件夹(文档未明确提供,按常规REST风格适配) +// 假设后端支持:/businessData/folder/update(PUT) +// Body参数:folderId、name、parentId +export function updateFolderApi(id, data) { + return request({ + url: '/businessData/folder/update', + method: 'put', + data: { + folderId: id, // 文件夹ID(必填) + name: data.name, // 新名称 + parentId: data.parentId // 新父级ID + } + }); +} + +// 删除文件夹 +export function deleteFolderApi(folderId) { + return request({ + url: `/businessData/delete-folder/${folderId}`, + method: 'delete', + }); +} + +// 上传文件API调用(关键参数改为file和folderId) +export function uploadFileApi(file, folderId, onUploadProgress) { + // 创建FormData对象 + const formData = new FormData(); + // 添加关键参数:file(文件对象)和folderId(目标文件夹ID) + formData.append('file', file); + formData.append('folderId', folderId); + + return request({ + url: '/businessData/file/add', + method: 'post', + data: formData, + // 支持上传进度回调 + onUploadProgress + }); +} + + + +// 预览文件 +export function previewFileApi(fileId) { + return request({ + url: `/businessData/preview/${fileId}`, + method: 'get', + responseType: 'blob', + }); +} + +// 下载文件 +export function downloadFileApi(fileId) { + return request({ + url: `/businessData/download/${fileId}`, + method: 'get', + responseType: 'blob', + }); +} + +// 更新文件名 +export function updateFileNameApi(id, data) { + return request({ + url: `/businessData/update-file/${id}`, + method: 'put', + data, + }); +} + +// 删除文件 +export function deleteFileApi(fileId) { + return request({ + url: `/businessData/delete-file/${fileId}`, + method: 'delete', + }); +} \ No newline at end of file diff --git a/src/views/bussiness-data/bussiness.vue b/src/views/bussiness-data/bussiness.vue index 80dceac..6f04afe 100644 --- a/src/views/bussiness-data/bussiness.vue +++ b/src/views/bussiness-data/bussiness.vue @@ -1,467 +1,1779 @@