From 7b3d071fd371ec933d447054651c838c446068e9 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Thu, 23 Dec 2021 01:08:12 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=8D=8F=E5=8A=A9=E7=9A=84=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pages/manage/components/ProjectList.vue | 43 +++++++++++++++++++ resources/assets/js/store/actions.js | 1 + resources/assets/js/store/getters.js | 1 + 3 files changed, 45 insertions(+) diff --git a/resources/assets/js/pages/manage/components/ProjectList.vue b/resources/assets/js/pages/manage/components/ProjectList.vue index cf7d4969..d03bf5d0 100644 --- a/resources/assets/js/pages/manage/components/ProjectList.vue +++ b/resources/assets/js/pages/manage/components/ProjectList.vue @@ -252,6 +252,21 @@ + +
+ + + +
{{$L('协助的任务')}}
+
({{helpList.length}})
+ + + + + +
+ +
@@ -523,6 +538,34 @@ export default { }); }, + helpList() { + const {projectId, tasks, searchText, userId} = this; + const array = tasks.filter((task) => { + if (task.project_id != projectId) { + return false; + } + if (!this.tablePanel('completedTask')) { + if (task.complete_at) { + return false; + } + } + if (searchText) { + if (!$A.strExists(task.name, searchText) && !$A.strExists(task.desc, searchText)) { + return false; + } + } + return task.task_user && task.task_user.find(({userid, owner}) => userid == userId && owner == 0); + }); + return array.sort((a, b) => { + if (a.p_level != b.p_level) { + return a.p_level - b.p_level; + } + let at1 = $A.Date(a.end_at), + at2 = $A.Date(b.end_at); + return at1 - at2; + }); + }, + undoneList() { const {projectId, tasks, searchText} = this; const array = tasks.filter((task) => { diff --git a/resources/assets/js/store/actions.js b/resources/assets/js/store/actions.js index 999185e3..4d3d8609 100644 --- a/resources/assets/js/store/actions.js +++ b/resources/assets/js/store/actions.js @@ -162,6 +162,7 @@ export default { cardInit: false, chat: false, showMy: true, + showHelp: true, showUndone: true, showCompleted: false, completedTask: false, diff --git a/resources/assets/js/store/getters.js b/resources/assets/js/store/getters.js index 29df02c5..62196fac 100644 --- a/resources/assets/js/store/getters.js +++ b/resources/assets/js/store/getters.js @@ -63,6 +63,7 @@ export default { cardInit: false, chat: false, showMy: true, + showHelp: true, showUndone: true, showCompleted: false, completedTask: false,