diff --git a/resources/assets/js/pages/manage/calendar.vue b/resources/assets/js/pages/manage/calendar.vue index 26d1e100..61599597 100644 --- a/resources/assets/js/pages/manage/calendar.vue +++ b/resources/assets/js/pages/manage/calendar.vue @@ -44,7 +44,7 @@ import 'tui-date-picker/dist/tui-date-picker.css'; import 'tui-time-picker/dist/tui-time-picker.css'; import 'tui-calendar-hi/dist/tui-calendar-hi.css' -import {mapState} from "vuex"; +import {mapState, mapGetters} from "vuex"; import Calendar from "./components/Calendar"; import moment from "moment"; @@ -76,17 +76,10 @@ export default { computed: { ...mapState(['userId', 'projects', 'tasks']), + ...mapGetters(['ownerTask']), + list() { - let datas = $A.cloneJSON(this.tasks); - datas = datas.filter((data) => { - if (data.complete_at) { - return false; - } - if (!data.end_at) { - return false; - } - return data.owner; - }) + const datas = $A.cloneJSON(this.ownerTask); return datas.map(data => { let isAllday = $A.rightExists(data.start_at, "00:00:00") && $A.rightExists(data.end_at, "23:59:59") let task = { @@ -109,11 +102,14 @@ export default { if (data.p_name) { task.priority = '' + data.p_name + ''; } + if (data.top_task === true) { + task.title = '[' + this.$L('子任务') + '] ' + task.title + } if (data.overdue) { - task.title = '[' + $A.L('超期') + '] ' + task.title + task.title = '[' + this.$L('超期') + '] ' + task.title task.color = "#f56c6c" task.bgColor = "#fef0f0" - task.priority+= '' + $A.L('超期未完成') + ''; + task.priority+= '' + this.$L('超期未完成') + ''; } if (!task.borderColor) { task.borderColor = task.bgColor; @@ -286,7 +282,7 @@ export default { break; case "edit": - this.$store.dispatch("openTask", data.id) + this.$store.dispatch("openTask", data) break; case "delete": diff --git a/resources/assets/js/pages/manage/components/ProjectList.vue b/resources/assets/js/pages/manage/components/ProjectList.vue index 11831923..d9db11b0 100644 --- a/resources/assets/js/pages/manage/components/ProjectList.vue +++ b/resources/assets/js/pages/manage/components/ProjectList.vue @@ -532,6 +532,8 @@ export default { ...mapGetters(['projectData', 'tablePanel']), + ...mapGetters(['ownerTask']), + userWaitRemove() { const {userids, useridbak} = this.userData; if (!userids) { @@ -570,8 +572,8 @@ export default { }, myList() { - const {projectId, tasks, searchText, userId, completeTask, sortField, sortType} = this; - const array = tasks.filter((task) => { + const {projectId, ownerTask, searchText, completeTask, sortField, sortType} = this; + const array = ownerTask.filter((task) => { if (task.project_id != projectId) { return false; } @@ -585,7 +587,7 @@ export default { return false; } } - return task.task_user && task.task_user.find(({userid, owner}) => userid == userId && owner == 1); + return true; }); return array.sort((a, b) => { if (sortType == 'asc') { @@ -605,7 +607,7 @@ export default { helpList() { const {projectId, tasks, searchText, userId, completeTask, sortField, sortType} = this; const array = tasks.filter((task) => { - if (task.project_id != projectId) { + if (task.project_id != projectId || task.parent_id > 0) { return false; } if (!this.tablePanel('completedTask')) { @@ -638,7 +640,7 @@ export default { undoneList() { const {projectId, tasks, searchText, completeTask, sortField, sortType} = this; const array = tasks.filter((task) => { - if (task.project_id != projectId) { + if (task.project_id != projectId || task.parent_id > 0) { return false; } if (!this.tablePanel('completedTask')) { @@ -671,7 +673,7 @@ export default { completedCount() { const {projectId, tasks} = this; return tasks.filter((task) => { - if (task.project_id != projectId) { + if (task.project_id != projectId || task.parent_id > 0) { return false; } return task.complete_at; @@ -681,7 +683,7 @@ export default { completedList() { const {projectId, tasks, searchText} = this; const array = tasks.filter((task) => { - if (task.project_id != projectId) { + if (task.project_id != projectId || task.parent_id > 0) { return false; } if (searchText) { @@ -1154,11 +1156,7 @@ export default { }, openTask(task, receive) { - if (task.parent_id > 0) { - this.$store.dispatch("openTask", task.parent_id) - } else { - this.$store.dispatch("openTask", task.id) - } + this.$store.dispatch("openTask", task) if (receive === true) { // 向任务窗口发送领取任务请求 setTimeout(() => { diff --git a/resources/assets/js/pages/manage/components/TaskDetail.vue b/resources/assets/js/pages/manage/components/TaskDetail.vue index 784d44d4..130f5585 100644 --- a/resources/assets/js/pages/manage/components/TaskDetail.vue +++ b/resources/assets/js/pages/manage/components/TaskDetail.vue @@ -108,8 +108,7 @@ class="pick" :title="$L('你确认领取任务吗?')" placement="bottom" - @on-ok="onOwner(true)" - transfer> + @on-ok="onOwner(true)"> diff --git a/resources/assets/js/pages/manage/components/TaskRow.vue b/resources/assets/js/pages/manage/components/TaskRow.vue index c1e81d2d..c55925a3 100644 --- a/resources/assets/js/pages/manage/components/TaskRow.vue +++ b/resources/assets/js/pages/manage/components/TaskRow.vue @@ -2,7 +2,7 @@
- + -
{{item.name}}
+
{{$L('子任务')}}{{item.name}}
@@ -71,10 +71,11 @@
{{columnName(item.column_id)}}
@@ -86,10 +87,11 @@ {{item.p_name}} @@ -210,6 +212,10 @@ export default { }, }, methods: { + isTopTask(item) { + return item.parent_id === 0 || item.top_task === true + }, + columnName(column_id) { const column = this.columns.find(({id}) => id == column_id) return column ? column.name : ''; @@ -249,11 +255,7 @@ export default { }, openTask(task, receive) { - if (task.parent_id > 0) { - this.$store.dispatch("openTask", task.parent_id) - } else { - this.$store.dispatch("openTask", task.id) - } + this.$store.dispatch("openTask", task) if (receive === true) { // 向任务窗口发送领取任务请求 setTimeout(() => { diff --git a/resources/assets/js/pages/manage/dashboard.vue b/resources/assets/js/pages/manage/dashboard.vue index 3e57234d..cbf1f837 100644 --- a/resources/assets/js/pages/manage/dashboard.vue +++ b/resources/assets/js/pages/manage/dashboard.vue @@ -35,9 +35,9 @@ :key="item.id" :class="{complete: item.complete_at}" :style="item.color ? {backgroundColor: item.color} : {}" - @click="$store.dispatch('openTask', item.id)"> + @click="openTask(item)"> -
{{item.name}}
+
{{$L('子任务')}}{{item.name}}
@@ -102,6 +102,7 @@