diff --git a/src/api/upload-api.js b/src/api/upload-api.js
index 9191503..ed67a21 100644
--- a/src/api/upload-api.js
+++ b/src/api/upload-api.js
@@ -74,13 +74,36 @@ export default {
params
})
},
- // 搜索文件🔍
+ // 搜索文件🔍-打开目录
searchFileAndOpenDir: function(params) {
return request({
url: 'search-file-open',
method: 'get',
params
})
+ },
+ // 查找下级目录
+ queryFileTree: function(params) {
+ return request({
+ url: 'query-file-tree',
+ method: 'get',
+ params
+ })
+ },
+ // 移动文件/文件夹
+ move: function(params) {
+ return request({
+ url: 'move',
+ method: 'get',
+ params
+ })
+ },
+ // 复制文件/文件夹
+ copy: function(params) {
+ return request({
+ url: 'copy',
+ method: 'get',
+ params
+ })
}
-
}
diff --git a/src/components/Icon/IconFile.vue b/src/components/Icon/IconFile.vue
index a706b95..a1368fd 100644
--- a/src/components/Icon/IconFile.vue
+++ b/src/components/Icon/IconFile.vue
@@ -6,7 +6,7 @@
-
+
diff --git a/src/icons/svg/open-folder.svg b/src/icons/svg/open-folder.svg
new file mode 100644
index 0000000..c346bbd
--- /dev/null
+++ b/src/icons/svg/open-folder.svg
@@ -0,0 +1 @@
+
diff --git a/src/layout/index.vue b/src/layout/index.vue
index 990d151..3876e65 100644
--- a/src/layout/index.vue
+++ b/src/layout/index.vue
@@ -50,8 +50,10 @@ export default {
mounted() {
if(/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {
this.isShow = false
+ window.pc = false
} else {
this.isShow = true
+ window.pc = true
}
},
methods: {
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 8e8ae01..f0fb6cb 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -56,6 +56,7 @@
+
+
+
+
+
+
+
+
1){
+ fileId = node.data.id
+ }
+
+ api.queryFileTree({
+ userId: this.$store.state.user.userId,
+ username: this.$store.state.user.name,
+ fileId: fileId,
+ }).then(res => {
+ const nextNodes = res.data
+ return resolve(nextNodes)
+ })
+ },
+ // 点击文件树
+ treeNodeClick(row,node,event) {
+ this.selectTreeNode = row
+ this.selectTreeNode.showName = ' "' + row.name + '"'
+ },
+ // 节点被展开时触发
+ treeNodeExpand(row,node,event) {
+ },
+ // 移动文件
+ moveFileTree() {
+ this.$refs.directoryTree.append(this.rowContextData,this.selectTreeNode.id)
+ // this.dialogMoveOrCopyVisible = false
+ },
+ // 复制文件
+ copyFileTree() {
+ // this.dialogMoveOrCopyVisible = false
+ console.log(this.selectTreeNode)
+ this.$refs.directoryTree.append(this.rowContextData,this.selectTreeNode.id)
+ api.copy({
+ userId: this.$store.state.user.userId,
+ username: this.$store.state.user.username,
+ from: this.rowContextData.id,
+ to: this.selectTreeNode.id
+ }).then(res => {
+ console.log(res)
+ })
+ },
+ renderContent(h, { node, data, store }) {
+ if(node.expanded){
+ return (
+
+
+ {node.label}
+
+
+ );
+ }else{
+ return (
+
+
+ {node.label}
+
+
+ );
+ }
+ },
downloadFile() {
let totalSize = 0
this.selectRowData.forEach(item => {
@@ -958,11 +1073,11 @@ export default {
})
if (totalSize > 0) {
var fileIds = [];
- if (this.menusIsMultiple) {
- this.selectRowData.forEach(value => {
+ if (this.menusIsMultiple) {
+ this.selectRowData.forEach(value => {
fileIds.push(value.id)
- })
- } else {
+ })
+ } else {
fileIds.push(this.rowContextData.id)
}
window.open(process.env.VUE_APP_BASE_FILE_API + 'download?jmal-token=' + this.$store.state.user.token + '&fileIds=' + fileIds, '_self')
@@ -1265,5 +1380,36 @@ export default {
margin-top: 50px;
}
+ /deep/ .el-dialog__header {
+ padding: 20px 20px 20px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ }
+ /deep/ .el-dialog__title {
+ font-size: 16px;
+ }
+ /deep/ .el-dialog__body {
+ padding: 0 20px 0 20px;
+ }
+ /deep/ .el-tree-node__content {
+ height: 35px;
+ /*border-bottom: 1px solid #ccc;*/
+ position: relative;
+ }
+
+ /deep/ .custom-tree-node {
+ flex: 1;
+ display: flex;
+ align-items: center;
+ font-size: 14px;
+ padding-right: 8px;
+ }
+
+ /deep/ .el-tree-node.is-expanded>.el-tree-node__children {
+ max-height: 500px;
+ overflow: auto;
+ }
+