From 98ec63e332c6f61ebea820a445ca3eed6517eb32 Mon Sep 17 00:00:00 2001 From: Ryan Wang Date: Tue, 17 Mar 2020 15:15:44 +0800 Subject: [PATCH] feat: support export database. (#101) --- src/api/backup.js | 39 ++++- src/views/system/ToolList.vue | 38 +++-- ...ckupDrawer.vue => BackupWorkDirDrawer.vue} | 28 ++-- .../system/components/ExportDataDrawer.vue | 152 ++++++++++++++++++ 4 files changed, 226 insertions(+), 31 deletions(-) rename src/views/system/components/{BackupDrawer.vue => BackupWorkDirDrawer.vue} (87%) create mode 100644 src/views/system/components/ExportDataDrawer.vue diff --git a/src/api/backup.js b/src/api/backup.js index c977e549..8f4876f9 100644 --- a/src/api/backup.js +++ b/src/api/backup.js @@ -6,7 +6,7 @@ const backupApi = {} backupApi.importMarkdown = (formData, uploadProgress, cancelToken) => { return service({ - url: `${baseUrl}/import/markdown`, + url: `${baseUrl}/markdown`, timeout: 8640000, // 24 hours data: formData, // form data onUploadProgress: uploadProgress, @@ -15,24 +15,49 @@ backupApi.importMarkdown = (formData, uploadProgress, cancelToken) => { }) } -backupApi.backupHalo = () => { +backupApi.backupWorkDir = () => { return service({ - url: `${baseUrl}/halo`, + url: `${baseUrl}/work-dir`, method: 'post', timeout: 8640000 // 24 hours }) } -backupApi.listHaloBackups = () => { +backupApi.listWorkDirBackups = () => { return service({ - url: `${baseUrl}/halo`, + url: `${baseUrl}/work-dir`, method: 'get' }) } -backupApi.deleteHaloBackup = filename => { +backupApi.deleteWorkDirBackup = filename => { return service({ - url: `${baseUrl}/halo`, + url: `${baseUrl}/work-dir`, + params: { + filename: filename + }, + method: 'delete' + }) +} + +backupApi.exportData = () => { + return service({ + url: `${baseUrl}/data`, + method: 'post', + timeout: 8640000 // 24 hours + }) +} + +backupApi.listExportedData = () => { + return service({ + url: `${baseUrl}/data`, + method: 'get' + }) +} + +backupApi.deleteExportedData = filename => { + return service({ + url: `${baseUrl}/data`, params: { filename: filename }, diff --git a/src/views/system/ToolList.vue b/src/views/system/ToolList.vue index e5e8d4bb..3bd6aa31 100644 --- a/src/views/system/ToolList.vue +++ b/src/views/system/ToolList.vue @@ -64,12 +64,27 @@
博客备份
-

备份全站数据,支持下载到本地

- 备份 +

支持备份全站数据和数据导出,支持下载到本地

+ + + + + 整站备份 + + + 数据导出 + + + 备份 + + + - + + @@ -119,13 +135,15 @@