From 007475bce6b244ce5eee4abf0513cae88350ffd7 Mon Sep 17 00:00:00 2001 From: jmal Date: Mon, 28 Apr 2025 14:22:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E6=8C=82=E8=BD=BD?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E8=8F=9C=E5=8D=95(=E7=9B=B4=E6=8E=A5?= =?UTF-8?q?=E5=88=97=E5=87=BA=E6=89=80=E6=9C=89=E6=8C=82=E8=BD=BD=E6=96=87?= =?UTF-8?q?=E4=BB=B6),=20=E4=BC=98=E5=8C=96=E6=90=9C=E7=B4=A2=E9=80=89?= =?UTF-8?q?=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/SearchOption/index.vue | 40 +++++++++++++++++-- src/components/ShowFile/ShowFile.vue | 7 +++- src/views/fileType/audio.vue | 3 +- src/views/fileType/document.vue | 3 +- src/views/fileType/image.vue | 3 +- src/views/fileType/video.vue | 3 +- src/views/mount/index.vue | 56 +++++++++++++++++++++++++++ src/views/recently/index.vue | 3 +- src/views/setting/sys/menuManager.vue | 3 ++ 9 files changed, 110 insertions(+), 11 deletions(-) create mode 100644 src/views/mount/index.vue diff --git a/src/components/SearchOption/index.vue b/src/components/SearchOption/index.vue index 29312cf..c28d1c1 100644 --- a/src/components/SearchOption/index.vue +++ b/src/components/SearchOption/index.vue @@ -3,7 +3,14 @@
- 搜索 {{searchScope}}: + + 搜索 + + + + + : + {{ keyword }}
@@ -189,6 +196,10 @@ export default { type: Object, default: function() {} }, + queryCondition: { + type: Object, + default: function() {} + }, searchPath: { type: String, default: '/' @@ -212,9 +223,30 @@ export default { computed: { searchScope() { const queryTagId = this.$route.query.tagId - const path = this.$route.query.path; - if (queryTagId && path === '/') { - return '(当前标签)' + const isRootPath = this.$route.query.path === '/'; + if (queryTagId && isRootPath) { + return '搜索范围: 仅包含标签文件, 不含子文件' + } + if (this.queryCondition.isMount && isRootPath) { + return '搜索范围: 挂载目录里的所有文件, 不含挂载目录本身' + } + if (this.queryCondition.isFavorite && isRootPath) { + return '搜索范围: 仅包含收藏文件, 不含子文件' + } + if (this.queryCondition.audio && isRootPath) { + return '搜索范围: 仅包含音频文件' + } + if (this.queryCondition.video && isRootPath) { + return '搜索范围: 仅包含视频文件' + } + if (this.queryCondition.document && isRootPath) { + return '搜索范围: 仅包含文档文件' + } + if (this.queryCondition.image && isRootPath) { + return '搜索范围: 仅包含图片文件' + } + if (this.queryCondition.recently && isRootPath) { + return '搜索范围: 仅包含文件, 不含目录' } return '' }, diff --git a/src/components/ShowFile/ShowFile.vue b/src/components/ShowFile/ShowFile.vue index 68e568b..6024e09 100644 --- a/src/components/ShowFile/ShowFile.vue +++ b/src/components/ShowFile/ShowFile.vue @@ -186,6 +186,7 @@ :has-search-conditions-param.sync="hasSearchFilterOption" :keyword.sync="searchFileName" :filter-option-param.sync="filterOption" + :query-condition="queryCondition" :search-path="currentDirectory" :search-result-count="pagination['total']" @filter-change="searchFilterChange" > @@ -979,7 +980,7 @@ export default { queryCondition: { type: Object, default: function() { - return { isFolder: null } + return { isFolder: null, isMount: null } }, }, singleMenus: { @@ -2966,6 +2967,7 @@ export default { this.vmode }&path=${path}${keyword}${searchOpenFolder}${queryTagId}${basePath}${folder}` ) + api.searchFile({ userId: this.$store.state.user.userId, username: this.$store.state.user.name, @@ -2987,6 +2989,7 @@ export default { querySizeMin: this.filterOption.sizeMin, querySizeMax: this.filterOption.sizeMax, searchMount: this.filterOption.searchMount, + isMount: this.queryCondition.isMount, searchOverall: this.filterOption.searchOverall, }).then(res => { this.loadData(res, onLoad) @@ -3083,6 +3086,7 @@ export default { order: this.sortable.order, isFolder: this.queryCondition.isFolder, isFavorite: this.queryCondition.isFavorite, + isMount: this.queryCondition.isMount, isTrash: this.queryCondition.isTrash, tagId: this.queryCondition.tagId, queryCondition: this.queryCondition, @@ -3546,7 +3550,6 @@ export default { }, // 鼠标右击 rowContextmenu(row) { - console.log('rowContextmenu', row, row.userId, this.$store.getters.userId) if (this.selectFile) { return } diff --git a/src/views/fileType/audio.vue b/src/views/fileType/audio.vue index 1e8b3ca..69efe44 100644 --- a/src/views/fileType/audio.vue +++ b/src/views/fileType/audio.vue @@ -26,7 +26,8 @@ export default { prop: 'updateDate', order: 'descending' }, queryCondition: { - isFolder:false + isFolder:false, + audio: true }, contextMenus: [ { label: '查看', operation: 'viewMode' ,child: [ diff --git a/src/views/fileType/document.vue b/src/views/fileType/document.vue index ad0d1f6..346691a 100644 --- a/src/views/fileType/document.vue +++ b/src/views/fileType/document.vue @@ -26,7 +26,8 @@ export default { prop: 'updateDate', order: 'descending' }, queryCondition: { - isFolder: false + isFolder: false, + document: true }, contextMenus: [ { label: '查看', operation: 'viewMode' ,child: [ diff --git a/src/views/fileType/image.vue b/src/views/fileType/image.vue index 3ba22a7..1f520e4 100644 --- a/src/views/fileType/image.vue +++ b/src/views/fileType/image.vue @@ -25,7 +25,8 @@ export default { prop: 'updateDate', order: 'descending' }, queryCondition: { - isFolder: false + isFolder: false, + image: true }, contextMenus: [ { label: '查看', operation: 'viewMode' ,child: [ diff --git a/src/views/fileType/video.vue b/src/views/fileType/video.vue index d50bfbd..625edcf 100644 --- a/src/views/fileType/video.vue +++ b/src/views/fileType/video.vue @@ -26,7 +26,8 @@ export default { prop: 'updateDate', order: 'descending' }, queryCondition: { - isFolder: false + isFolder: false, + video: true }, contextMenus: [ { label: '查看', operation: 'viewMode' ,child: [ diff --git a/src/views/mount/index.vue b/src/views/mount/index.vue new file mode 100644 index 0000000..9447104 --- /dev/null +++ b/src/views/mount/index.vue @@ -0,0 +1,56 @@ + + + + + + diff --git a/src/views/recently/index.vue b/src/views/recently/index.vue index 4db3e41..a6ddea0 100644 --- a/src/views/recently/index.vue +++ b/src/views/recently/index.vue @@ -24,7 +24,8 @@ prop: 'uploadDate', order: 'descending' }, queryCondition: { - isFolder:false + isFolder: false, + recently: true }, contextMenus: [ { label: '查看', operation: 'viewMode' ,child: [ diff --git a/src/views/setting/sys/menuManager.vue b/src/views/setting/sys/menuManager.vue index cc56f41..70f081e 100644 --- a/src/views/setting/sys/menuManager.vue +++ b/src/views/setting/sys/menuManager.vue @@ -392,4 +392,7 @@ export default { >>>.box-card { max-width: 1440px; } +>>> .el-table .cell.el-tooltip { + display: flex; +}