From ac43f630d32242d2dccbb262bd206ec0b9a52c90 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Tue, 1 Sep 2026 03:07:48 +0000 Subject: [PATCH] =?UTF-8?q?fix(task):=20=E6=94=AF=E6=8C=81=E4=B8=BA?= =?UTF-8?q?=E6=9C=AA=E9=A2=86=E5=8F=96=E4=BB=BB=E5=8A=A1=E6=8C=87=E5=AE=9A?= =?UTF-8?q?=E8=B4=9F=E8=B4=A3=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ai-kb/zh/concept/task/owner-assist.md | 11 +++++++--- .../js/pages/manage/components/TaskDetail.vue | 21 +++++++++++++++++-- 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/resources/ai-kb/zh/concept/task/owner-assist.md b/resources/ai-kb/zh/concept/task/owner-assist.md index 460081663..d505abaf9 100644 --- a/resources/ai-kb/zh/concept/task/owner-assist.md +++ b/resources/ai-kb/zh/concept/task/owner-assist.md @@ -15,10 +15,10 @@ related_tools: [update_task, get_task] related_pages: [task_detail] prerequisites: [] negative: - - 一个任务必须至少有一个负责人,不能"无主" + - 任务暂时没有负责人时只能自己领取,不能指定其他项目成员 - 协作者不能完成任务,只有负责人能(或有 TASK_UPDATE 权限的项目角色) - 负责人 / 协作者不会自动获得评论权限以外的项目权限 -last_verified: v1.7.90 +last_verified: v1.9.18 --- # 负责人与协作者 @@ -28,7 +28,12 @@ DooTask 通过 `ProjectTaskUser` 表维护任务参与人:每条记录 `userid - `owner=1` — **负责人** - `owner=0` — **协作者**(assist) -一个任务允许多个负责人(多 owner=1)和多个协作者,但每个任务必须至少 1 个负责人。 +一个任务允许多个负责人(多 owner=1)和多个协作者,也可以暂时没有负责人。 + +## 设置入口 +- 已有负责人:打开任务详情,在「负责人」字段中增删项目成员 +- 暂无负责人:既可以通过顶部「领取任务」将自己设为负责人,也可以在详情底部的「添加」菜单选择「负责人」,再指定项目成员 +- 「负责人」和「协助人员」未设置时都收纳在详情底部的统一「添加」菜单中,设置后显示为独立字段 ## 权限差异 diff --git a/resources/assets/js/pages/manage/components/TaskDetail.vue b/resources/assets/js/pages/manage/components/TaskDetail.vue index e438b1309..a31938040 100755 --- a/resources/assets/js/pages/manage/components/TaskDetail.vue +++ b/resources/assets/js/pages/manage/components/TaskDetail.vue @@ -203,16 +203,17 @@ - +
{{$L('负责人')}}
owner === 1))) { + list.push({ + command: 'owner', + icon: '', + name: '负责人', + }); + } if (!($A.isArray(taskDetail.task_user) && taskDetail.task_user.find(({owner}) => owner === 0 ))) { list.push({ command: 'assist', @@ -1061,6 +1070,7 @@ export default { this.timeForce = false; this.loopForce = false; this.tagForce = false; + this.ownerForce = false; this.assistForce = false; this.visibleForce = false; this.addsubForce = false; @@ -1839,6 +1849,13 @@ export default { }) break; + case 'owner': + this.ownerForce = true; + this.$nextTick(() => { + this.$refs.owner.onSelection(); + }); + break; + case 'assist': this.assistForce = true; this.$nextTick(() => {