mirror of
https://github.com/kuaifan/dootask.git
synced 2026-07-02 20:35:11 +00:00
fix(file): 文件管理删除入口收敛为所有者/创建者,拦截只读用户
- file.vue:右键「删除」项及工具栏批量「删除」按钮对非所有者/创建者禁用, 与后端 file/remove 的 permissionFind(...,1000) 规则对齐(修复只读用户可见可点删除入口) - 同步 ai-kb:delete-restore chunk 更正前置权限为「所有者或创建者」并补只读无权限说明
This commit is contained in:
parent
bc0fe9c748
commit
eb672eaef1
@ -15,13 +15,14 @@ aliases:
|
||||
related_tools: [list_files]
|
||||
related_pages: [file]
|
||||
prerequisites:
|
||||
- 对要删除的文件有所有权或写权限
|
||||
- 必须是该文件的所有者或创建者(仅这两类人可删除)
|
||||
negative:
|
||||
- 只读或仅可读写(非创建者)的共享成员无删除权限:删除入口在界面被禁用,后端 file/remove 也会拒绝并返回「仅限所有者或创建者操作」
|
||||
- 文件删除采用软删除(数据库 soft delete),但前端无回收站 UI,普通用户无法自助恢复
|
||||
- 一次最多删除 100 个文件 / 文件夹
|
||||
- 删文件夹会级联删除其内所有文件与子文件夹
|
||||
- 删除会同时清理共享配置(FileUser)和分享链接(FileLink)
|
||||
last_verified: v1.7.90
|
||||
last_verified: v1.8.45
|
||||
---
|
||||
|
||||
# 删除文件或恢复文件
|
||||
|
||||
@ -73,7 +73,7 @@
|
||||
<span v-show="showBtnText">{{$L('打包下载')}}</span>
|
||||
</div>
|
||||
</Button>
|
||||
<Button size="small" type="error" @click="deleteFile(selectedItems.map(({id}) => id))">
|
||||
<Button size="small" type="error" :disabled="batchDeleteDisabled" @click="deleteFile(selectedItems.map(({id}) => id))">
|
||||
<div class="tool-box">
|
||||
<Icon type="ios-trash" />
|
||||
<span v-show="showBtnText">{{$L('删除')}}</span>
|
||||
@ -252,7 +252,7 @@
|
||||
<DropdownItem name="download" :disabled="contextMenuItem.ext == '' || (contextMenuItem.userid != userId && contextMenuItem.permission == 0)">{{$L('下载')}}</DropdownItem>
|
||||
<DropdownItem v-if="selectedItems.length > 1" name="downloadzip" :disabled="contextMenuItem.userid != userId && contextMenuItem.permission == 0">{{$L('打包下载')}}</DropdownItem>
|
||||
|
||||
<DropdownItem name="delete" divided style="color:red">{{$L('删除')}}</DropdownItem>
|
||||
<DropdownItem name="delete" divided style="color:red" :disabled="contextMenuItem.userid != userId && contextMenuItem.created_id != userId">{{$L('删除')}}</DropdownItem>
|
||||
</template>
|
||||
<template v-else>
|
||||
<DropdownItem
|
||||
@ -973,6 +973,11 @@ export default {
|
||||
return !!this.fileList?.find((res) => res._checked && res.permission < 1)
|
||||
},
|
||||
|
||||
batchDeleteDisabled() {
|
||||
// 与后端 file/remove 一致:仅所有者或创建者可删除(getPermission 返回 1000)
|
||||
return !!this.fileList?.find((res) => res._checked && res.userid != this.userId && res.created_id != this.userId)
|
||||
},
|
||||
|
||||
maxSize() {
|
||||
if(this.systemConfig?.file_upload_limit){
|
||||
return this.systemConfig.file_upload_limit * 1024
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user