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,