From 65672708be15d1a7c756fa90a88e72c91e62e00e Mon Sep 17 00:00:00 2001 From: chabai <14799297+dhasjklhdfjkasfbhfasfj@user.noreply.gitee.com> Date: Tue, 5 Aug 2025 21:42:39 +0800 Subject: [PATCH] fx --- src/apis/bussiness/bussiness.js | 103 +- src/views/bussiness-data/bussiness.vue | 1189 +++++++++++++++++------- 2 files changed, 925 insertions(+), 367 deletions(-) diff --git a/src/apis/bussiness/bussiness.js b/src/apis/bussiness/bussiness.js index 8e1a5fc..11e6c85 100644 --- a/src/apis/bussiness/bussiness.js +++ b/src/apis/bussiness/bussiness.js @@ -1,4 +1,4 @@ -// @/apis/bussiness/bussiness.js(改为纯JS文件) +// @/apis/bussiness/bussiness.js - 根据后端接口重新编写 import http from '@/utils/http'; const { request } = http; @@ -11,8 +11,7 @@ export function getFolderListApi(params) { params: { page: params?.page || 1, pageSize: params?.pageSize || 10, - parentId: params?.parentId, - keyword: params?.keyword + folderName: params?.folderName } }); } @@ -23,9 +22,9 @@ export function getFilesApi(params) { url: '/businessData/file/list', method: 'get', params: { - folderId: params.folderId, - page: params.page || 1, - pageSize: params.pageSize || 10 + page: params?.page || 1, + pageSize: params?.pageSize || 10, + folderId: params?.folderId || 0 } }); } @@ -35,21 +34,21 @@ export function createFolderApi(data) { return request({ url: '/businessData/folder/creatFolder', method: 'post', - data, + data: { + name: data.name, + parentId: data.parentId || 0 + } }); } -// 更新文件夹(文档未明确提供,按常规REST风格适配) -// 假设后端支持:/businessData/folder/update(PUT) -// Body参数:folderId、name、parentId -export function updateFolderApi(id, data) { +// 重命名文件夹 +export function updateFolderApi(folderId, newName) { return request({ - url: '/businessData/folder/update', + url: '/businessData/folder/rename', method: 'put', - data: { - folderId: id, // 文件夹ID(必填) - name: data.name, // 新名称 - parentId: data.parentId // 新父级ID + params: { + folderId: folderId, + newName: newName } }); } @@ -57,61 +56,71 @@ export function updateFolderApi(id, data) { // 删除文件夹 export function deleteFolderApi(folderId) { return request({ - url: `/businessData/delete-folder/${folderId}`, + url: '/businessData/folder/delete', method: 'delete', + params: { + folderId: folderId + } }); } -// 上传文件API调用(关键参数改为file和folderId) -export function uploadFileApi(file, folderId, onUploadProgress) { - // 创建FormData对象 +// 上传文件 +export function uploadFileApi(file, folderId, onUploadProgress, cancelToken) { const formData = new FormData(); - // 添加关键参数:file(文件对象)和folderId(目标文件夹ID) formData.append('file', file); - formData.append('folderId', folderId); return request({ url: '/businessData/file/add', method: 'post', + params: { + folderId: folderId + }, data: formData, - // 支持上传进度回调 - onUploadProgress - }); -} - - - -// 预览文件 -export function previewFileApi(fileId) { - return request({ - url: `/businessData/preview/${fileId}`, - method: 'get', - responseType: 'blob', + onUploadProgress, + cancelToken, + headers: { + 'Content-Type': 'multipart/form-data' + } }); } // 下载文件 export function downloadFileApi(fileId) { return request({ - url: `/businessData/download/${fileId}`, + url: '/businessData/file/download', method: 'get', - responseType: 'blob', - }); -} - -// 更新文件名 -export function updateFileNameApi(id, data) { - return request({ - url: `/businessData/update-file/${id}`, - method: 'put', - data, + params: { + fileId: fileId + }, + responseType: 'blob' }); } // 删除文件 export function deleteFileApi(fileId) { return request({ - url: `/businessData/delete-file/${fileId}`, + url: '/businessData/file/delete', method: 'delete', + params: { + fileId: fileId + } }); +} + +// 预览文件(后端没有提供预览接口,使用下载接口) +export function previewFileApi(fileId) { + return request({ + url: '/businessData/file/download', + method: 'get', + params: { + fileId: fileId + }, + responseType: 'blob' + }); +} + +// 重命名文件(后端没有提供重命名接口,需要先删除再上传) +export function updateFileNameApi(fileId, data) { + // 注意:后端没有提供文件重命名接口,这里返回一个Promise.reject + return Promise.reject(new Error('后端暂不支持文件重命名功能')); } \ No newline at end of file diff --git a/src/views/bussiness-data/bussiness.vue b/src/views/bussiness-data/bussiness.vue index 6f04afe..5b0dded 100644 --- a/src/views/bussiness-data/bussiness.vue +++ b/src/views/bussiness-data/bussiness.vue @@ -12,21 +12,14 @@ @expand="handleSidebarExpand" > @@ -51,36 +46,17 @@ - - - - -
- -
- 根目录 - - -
- - - -
-
- - + +
+ + 搜索 "{{ searchKeyword }}" 的结果:共 {{ totalFolders }} 个文件夹 + +
+ + + + + -
- -
+
+ +
{{ folder.name }}
- - - + + + + + +
+ - -
+ + @@ -230,33 +226,33 @@
- +
- {{ file.name }} -
{{ file.fileName }}
+ {{ file.fileName || file.name }} +
{{ file.fileName || file.name }}
-
{{ fileTypeText(file.fileType) }}
+
{{ fileTypeText(getFileExtension(file.fileName || file.name)) }}
-
{{ formatFileSize(file.fileSize) }}
+
{{ formatFileSize(file.fileSize || file.size) }}
-
{{ formatUploadTime(file.uploadTime) }}
+
{{ formatUploadTime(file.uploadTime || file.uploadTime) }}
@@ -268,7 +264,6 @@ size="small" tooltip="预览" @click="handlePreview(file)" - class="action-btn" > @@ -278,7 +273,6 @@ size="small" tooltip="下载" @click="handleDownload(file)" - class="action-btn" > @@ -288,7 +282,6 @@ size="small" tooltip="重命名" @click="handleEditFile(file)" - class="action-btn" > @@ -380,43 +373,46 @@ :validate-status="!hasFiles ? 'error' : ''" :help="!hasFiles ? '请选择需要上传的文件' : ''" > - -
-
- -
点击或拖拽文件到此处上传
-
- 支持 {{ allowedFileTypesText }} 等格式,单个文件不超过 {{ maxFileSizeText }} -
-
+
+ + + + + 点击选择文件 + + + + +
+ 支持 {{ allowedFileTypesText }} 等格式,单个文件不超过 {{ maxFileSizeText }}
- +
- +
-
-
{{ file.name }}
+
+
{{ file.name }}
{{ formatFileSize(file.size) }} - {{ file.error }} + {{ file.error }}
@@ -437,8 +433,8 @@ type="text" shape="circle" size="small" - @click="handleRemoveFile(file)" - tooltip="移除" + @click="removeFile(file)" + class="remove-btn" > @@ -447,8 +443,8 @@ type="text" shape="circle" size="small" - @click="handleCancelUpload(file)" - tooltip="取消" + @click="cancelUpload(file)" + class="cancel-btn" > @@ -480,12 +476,32 @@ + + + + + + + + +