diff --git a/src/api/logManage/exportFile.ts b/src/api/logManage/exportFile.ts index 19f7b068..2ce72877 100644 --- a/src/api/logManage/exportFile.ts +++ b/src/api/logManage/exportFile.ts @@ -53,43 +53,3 @@ export function delFile(query: Record) { params: query, }); } - -/** - * 更新FTP信息 - * @param data 数据 - * @returns object - */ -export function updateFTPInfo(data: Record) { - return request({ - url: `/lm/table/ftp`, - method: 'POST', - data: data, - crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false', - }); -} - -/** - * 获取FTP信息 - * @param data 数据 - * @returns object - */ -export function getFTPInfo() { - return request({ - url: `/lm/table/ftp`, - method: 'GET', - crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false', - }); -} - -/** - * 发送FTP文件 - * @param data 数据 - * @returns object - */ -export function putFTPInfo(filePath: string, fileName: string) { - return request({ - url: `/lm/table/ftp`, - method: 'PUT', - data: { filePath, fileName }, - }); -} diff --git a/src/api/ne/neConfigBackup.ts b/src/api/ne/neConfigBackup.ts index e6b8c817..af63fdea 100644 --- a/src/api/ne/neConfigBackup.ts +++ b/src/api/ne/neConfigBackup.ts @@ -83,43 +83,3 @@ export function importNeConfigBackup(data: Record) { data: data, }); } - -/** - * 更新FTP信息 - * @param data 数据 - * @returns object - */ -export function updateFTPInfo(data: Record) { - return request({ - url: `/ne/config/backup/ftp`, - method: 'POST', - data: data, - crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false', - }); -} - -/** - * 获取FTP信息 - * @param data 数据 - * @returns object - */ -export function getFTPInfo() { - return request({ - url: `/ne/config/backup/ftp`, - method: 'GET', - crypto: sessionGet(CACHE_SESSION_CRYPTO_API) !== 'false', - }); -} - -/** - * 发送FTP文件 - * @param data 数据 - * @returns object - */ -export function putFTPInfo(path: string) { - return request({ - url: `/ne/config/backup/ftp`, - method: 'PUT', - data: { path }, - }); -} diff --git a/src/api/neData/backup.ts b/src/api/neData/backup.ts new file mode 100644 index 00000000..eeb3781c --- /dev/null +++ b/src/api/neData/backup.ts @@ -0,0 +1,38 @@ +import { request } from '@/plugins/http-fetch'; + +/** + * 备份文件-获取FTP配置 + * @returns object + */ +export function getBackupFTP() { + return request({ + url: '/neData/backup/ftp', + method: 'GET', + }); +} + +/** + * 备份文件-文件FTP发送 + * @param data 对象 + * @returns object + */ +export function pushBackupFTP(data: Record) { + return request({ + url: '/neData/backup/ftp', + method: 'POST', + data, + }); +} + +/** + * 备份文件-更新FTP配置 + * @param data 对象 + * @returns object + */ +export function updateBackupFTP(data: Record) { + return request({ + url: '/neData/backup/ftp', + method: 'PUT', + data, + }); +} diff --git a/src/api/tool/file.ts b/src/api/tool/file.ts index 5a29df83..ff31c5ae 100644 --- a/src/api/tool/file.ts +++ b/src/api/tool/file.ts @@ -210,6 +210,50 @@ export function chunkUpload(data: FormData) { }); } +/** + * 本地文件列表 + * @param path 文件路径 + * @param search search prefix + * @returns object + */ +export async function listFile(query: Record) { + return request({ + url: `/file/list`, + method: 'GET', + params: query, + }); +} + +/** + * 本地文件获取下载 + * @param path 文件路径 + * @param fileName 文件名 + * @returns object + */ +export async function getFile(path: string, fileName: string) { + return request({ + url: `/file`, + method: 'GET', + params: { path, fileName }, + responseType: 'blob', + timeout: 60_000, + }); +} + +/** + * 本地文件删除 + * @param path 文件路径 + * @param fileName 文件名 + * @returns object + */ +export async function delFile(path: string, fileName: string) { + return request({ + url: `/file`, + method: 'DELETE', + params: { path, fileName }, + }); +} + /** * 转存上传文件到静态资源 * @returns object diff --git a/src/utils/parse-utils.ts b/src/utils/parse-utils.ts index 8e13fd43..ada8afec 100644 --- a/src/utils/parse-utils.ts +++ b/src/utils/parse-utils.ts @@ -101,7 +101,14 @@ export function parseObjLineToHump(obj: any): any { * @param decimalPlaces 保留小数位,默认2位 * @returns 单位 xB */ -export function parseSizeFromFile(bytes: number, decimalPlaces: number = 2) { +export function parseSizeFromFile( + bytes: number, + decimalPlaces: number = 2 +): string { + if (typeof bytes !== 'number' || isNaN(bytes) || bytes < 0) { + return `${bytes}`; + } + if (bytes === 0) return '0 B'; const units = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; let i = 0; while (bytes >= 1024 && i < units.length - 1) { diff --git a/src/views/logManage/exportFile/index.vue b/src/views/logManage/exportFile/index.vue index b39391db..d7a2ba2a 100644 --- a/src/views/logManage/exportFile/index.vue +++ b/src/views/logManage/exportFile/index.vue @@ -1,38 +1,57 @@