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 @@
备份全站数据,支持下载到本地
-支持备份全站数据和数据导出,支持下载到本地
+ +