From a97b7f158a280235eb49a7e500ca80961ec965ff Mon Sep 17 00:00:00 2001 From: Pang Date: Fri, 18 Jun 2021 00:09:21 +0800 Subject: [PATCH] nomsg --- app/Http/Controllers/Api/DialogController.php | 4 +- .../Controllers/Api/ProjectController.php | 12 ++-- app/Http/Controllers/Api/UsersController.php | 2 +- app/Models/ProjectTask.php | 13 ++-- app/Models/User.php | 2 +- .../pages/manage/components/ProjectList.vue | 2 +- .../js/pages/manage/components/TaskDetail.vue | 4 +- resources/assets/js/store/actions.js | 64 ++++++++----------- resources/assets/js/store/mutations.js | 45 +++++++++++-- 9 files changed, 82 insertions(+), 66 deletions(-) diff --git a/app/Http/Controllers/Api/DialogController.php b/app/Http/Controllers/Api/DialogController.php index bb40fd05..9b432ceb 100755 --- a/app/Http/Controllers/Api/DialogController.php +++ b/app/Http/Controllers/Api/DialogController.php @@ -42,11 +42,11 @@ class DialogController extends AbstractController } /** - * 单个对话信息 + * 获取会话基础信息 * * @apiParam {Number} dialog_id 对话ID */ - public function one() + public function basic() { $user = User::auth(); // diff --git a/app/Http/Controllers/Api/ProjectController.php b/app/Http/Controllers/Api/ProjectController.php index 16cff9c5..a853f780 100755 --- a/app/Http/Controllers/Api/ProjectController.php +++ b/app/Http/Controllers/Api/ProjectController.php @@ -24,7 +24,7 @@ use Request; class ProjectController extends AbstractController { /** - * 项目列表 + * 获取项目列表 * * @apiParam {Number} [page] 当前页,默认:1 * @apiParam {Number} [pagesize] 每页显示数量,默认:100,最大:200 @@ -43,11 +43,11 @@ class ProjectController extends AbstractController } /** - * 单个项目信息 + * 获取项目基础信息 * * @apiParam {Number} project_id 项目ID */ - public function one() + public function basic() { user::auth(); // @@ -59,7 +59,7 @@ class ProjectController extends AbstractController } /** - * 单个项目详情(比"单个项目信息"多) + * 获取项目详细信息 * * @apiParam {Number} project_id 项目ID */ @@ -508,11 +508,11 @@ class ProjectController extends AbstractController } /** - * 获取任务 + * 获取任务基础信息 * * @apiParam {Number} task_id 任务ID */ - public function task__one() + public function task__basic() { user::auth(); // diff --git a/app/Http/Controllers/Api/UsersController.php b/app/Http/Controllers/Api/UsersController.php index be9e108c..4f1759e6 100755 --- a/app/Http/Controllers/Api/UsersController.php +++ b/app/Http/Controllers/Api/UsersController.php @@ -343,7 +343,7 @@ class UsersController extends AbstractController } /** - * @api {get} api/users/basic 09. 获取指定会员基本信息 + * @api {get} api/users/basic 09. 获取指定会员基础信息 * * @apiDescription 需要token身份 * @apiVersion 1.0.0 diff --git a/app/Models/ProjectTask.php b/app/Models/ProjectTask.php index 360baf49..f8bc53e6 100644 --- a/app/Models/ProjectTask.php +++ b/app/Models/ProjectTask.php @@ -573,9 +573,10 @@ class ProjectTask extends AbstractModel // 归档任务 $this->archived_at = $archived_at; $this->addLog("任务归档:" . $this->name); + $this->pushMsg('archived', $this->toArray()); } $this->save(); - return Base::retSuccess('修改成功', $this->toArray()); + return Base::retSuccess('保存成功', $this->toArray()); }); } @@ -589,12 +590,10 @@ class ProjectTask extends AbstractModel if ($this->dialog_id) { WebSocketDialog::whereId($this->dialog_id)->delete(); } - if ($this->delete()) { - $this->addLog("删除{任务}:" . $this->name); - return Base::retSuccess('删除成功', $this->toArray()); - } else { - return Base::retError('删除失败', $this->toArray()); - } + $this->delete(); + $this->addLog("删除{任务}:" . $this->name); + $this->pushMsg('delete', $this->toArray()); + return Base::retSuccess('删除成功', $this->toArray()); }); } diff --git a/app/Models/User.php b/app/Models/User.php index 0de3fb6d..a162325e 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -332,7 +332,7 @@ class User extends AbstractModel } /** - * userid 获取 基本信息 + * userid 获取 基础信息 * @param int $userid 会员ID * @return self */ diff --git a/resources/assets/js/pages/manage/components/ProjectList.vue b/resources/assets/js/pages/manage/components/ProjectList.vue index c8e66553..b7f1b4ca 100644 --- a/resources/assets/js/pages/manage/components/ProjectList.vue +++ b/resources/assets/js/pages/manage/components/ProjectList.vue @@ -785,7 +785,7 @@ export default { if (index > -1) { this.projectDetail.project_column.splice(index, 1); } - this.$store.dispatch("getProjectOne", column.project_id); + this.$store.dispatch("getProjectBasic", column.project_id); }).catch(({msg}) => { $A.modalError(msg, 301); this.$set(column, 'loading', false); diff --git a/resources/assets/js/pages/manage/components/TaskDetail.vue b/resources/assets/js/pages/manage/components/TaskDetail.vue index 8fc2d31a..499b78a3 100644 --- a/resources/assets/js/pages/manage/components/TaskDetail.vue +++ b/resources/assets/js/pages/manage/components/TaskDetail.vue @@ -817,7 +817,7 @@ export default { $A.messageSuccess(msg); this.ownerLoad--; this.ownerShow = false; - this.$store.dispatch("getTaskOne", this.taskDetail.id); + this.$store.dispatch("getTaskBasic", this.taskDetail.id); }).catch(({msg}) => { $A.modalError(msg); this.ownerLoad--; @@ -847,7 +847,7 @@ export default { $A.messageSuccess(msg); this.assistLoad--; this.assistShow = false; - this.$store.dispatch("getTaskOne", this.taskDetail.id); + this.$store.dispatch("getTaskBasic", this.taskDetail.id); }).catch(({msg}) => { $A.modalError(msg); this.assistLoad--; diff --git a/resources/assets/js/store/actions.js b/resources/assets/js/store/actions.js index b6dc2fb3..f7aad0b1 100644 --- a/resources/assets/js/store/actions.js +++ b/resources/assets/js/store/actions.js @@ -188,7 +188,7 @@ export default { }, /** - * 获取用户基本信息 + * 获取用户基础信息 * @param state * @param dispatch * @param params {userid, success, complete} @@ -316,12 +316,12 @@ export default { * @param dispatch * @param project_id */ - getProjectOne({state, dispatch}, project_id) { + getProjectBasic({state, dispatch}, project_id) { if (state.method.runNum(project_id) === 0) { return; } dispatch("call", { - url: 'project/one', + url: 'project/basic', data: { project_id: project_id, }, @@ -419,7 +419,7 @@ export default { if (!data.start_at || !data.end_at) { return; } - if (!data.userid != state.userId) { + if (!data.owner) { return; } let task = { @@ -489,10 +489,10 @@ export default { * @param task_id * @returns {Promise} */ - getTaskOne({state, dispatch}, task_id) { + getTaskBasic({state, dispatch}, task_id) { return new Promise(function (resolve, reject) { dispatch("call", { - url: 'project/task/one', + url: 'project/task/basic', data: { task_id, }, @@ -605,7 +605,7 @@ export default { data.sub_task = state.projectSubTask[data.id] || [] // state.projectOpenTask = Object.assign({}, data, {_show: true}); - dispatch("getTaskOne", data.id); + dispatch("getTaskBasic", data.id); dispatch("getTaskContent", data.id); dispatch("getTaskFiles", data.id); dispatch("getSubTask", data.id); @@ -678,15 +678,15 @@ export default { method: 'post', }).then(result => { if (result.data.parent_id) { - dispatch("getTaskOne", result.data.parent_id); + dispatch("getTaskBasic", result.data.parent_id); } if (typeof post.complete_at !== "undefined") { - dispatch("getProjectOne", result.data.project_id); + dispatch("getProjectBasic", result.data.project_id); } dispatch("saveTask", result.data); resolve(result) }).catch(result => { - dispatch("getTaskOne", post.task_id); + dispatch("getTaskBasic", post.task_id); reject(result) }); }); @@ -694,12 +694,12 @@ export default { /** * 删除或归档任务 - * @param state * @param dispatch + * @param commit * @param data {task_id, type} * @returns {Promise} */ - taskArchivedOrRemove({state, dispatch}, data) { + taskArchivedOrRemove({dispatch, commit}, data) { let {task_id, type} = data; return new Promise(function (resolve, reject) { dispatch("call", { @@ -708,27 +708,7 @@ export default { task_id, }, }).then(result => { - const {data} = result; - const column = state.projectDetail.project_column.find(({id}) => id === data.column_id); - if (column) { - let index = column.project_task.findIndex(({id}) => id === data.id); - if (index > -1) { - column.project_task.splice(index, 1); - } - } - if (data.id == state.projectOpenTask.id) { - state.projectOpenTask = Object.assign({}, state.projectOpenTask, {_show: false}); - } else if (data.parent_id == state.projectOpenTask.id && state.projectOpenTask.sub_task) { - let index = state.projectOpenTask.sub_task.findIndex(({id}) => id === data.id); - if (index > -1) { - state.projectOpenTask.sub_task.splice(index, 1) - } - } - let index = state.calendarTask.findIndex(({id}) => id === data.id); - if (index > -1) { - state.calendarTask.splice(index, 1) - } - dispatch("getProjectOne", data.project_id); + commit("taskRemoveSuccess", result.data); resolve(result); }).catch(result => { reject(result) @@ -803,14 +783,14 @@ export default { }, /** - * 获取单个会话 + * 获取会话基础信息 * @param state * @param dispatch * @param dialog_id */ - getDialogOne({state, dispatch}, dialog_id) { + getDialogBasic({state, dispatch}, dialog_id) { dispatch("call", { - url: 'dialog/one', + url: 'dialog/basic', data: { dialog_id, }, @@ -1104,7 +1084,7 @@ export default { if (dialog) { dialog.last_msg = data; } else { - dispatch("getDialogOne", dialog_id); + dispatch("getDialogBasic", dialog_id); } if (mode === "add") { // 更新对话列表 @@ -1136,8 +1116,14 @@ export default { case "projectTask": (function (msg) { const {action, data} = msg; - if (action == 'add') { - commit("taskAddSuccess", data) + switch (action) { + case 'add': + commit("taskAddSuccess", data) + break; + case 'archived': + case 'delete': + commit("taskRemoveSuccess", data) + break; } })(msgDetail); break; diff --git a/resources/assets/js/store/mutations.js b/resources/assets/js/store/mutations.js index 56c3b7fe..c37efb84 100644 --- a/resources/assets/js/store/mutations.js +++ b/resources/assets/js/store/mutations.js @@ -1,6 +1,6 @@ export default { /** - * 添加任务完成 + * 添加任务成功 * @param state * @param data */ @@ -14,14 +14,17 @@ export default { } const column = state.projectDetail.project_column.find(({id}) => id === task.column_id); if (column) { - if (in_top) { - column.project_task.unshift(task); - } else { - column.project_task.push(task); + let index = column.project_task.findIndex(({id}) => id === task.id) + if (index === -1) { + if (in_top) { + column.project_task.unshift(task); + } else { + column.project_task.push(task); + } } } } - this.dispatch("getProjectOne", task.project_id); + this.dispatch("getProjectBasic", task.project_id); } else { // 添加子任务 if (state.projectDetail.id == task.project_id) { @@ -42,8 +45,36 @@ export default { state.projectOpenTask.sub_task.push(task); } } - this.dispatch("getTaskOne", task.parent_id); + this.dispatch("getTaskBasic", task.parent_id); } this.dispatch("saveTask", task); }, + + /** + * 移除任务成功 + * @param state + * @param data + */ + taskRemoveSuccess(state, data) { + const column = state.projectDetail.project_column.find(({id}) => id === data.column_id); + if (column) { + let index = column.project_task.findIndex(({id}) => id === data.id); + if (index > -1) { + column.project_task.splice(index, 1); + } + } + if (data.id == state.projectOpenTask.id) { + state.projectOpenTask = Object.assign({}, state.projectOpenTask, {_show: false}); + } else if (data.parent_id == state.projectOpenTask.id && state.projectOpenTask.sub_task) { + let index = state.projectOpenTask.sub_task.findIndex(({id}) => id === data.id); + if (index > -1) { + state.projectOpenTask.sub_task.splice(index, 1) + } + } + let index = state.calendarTask.findIndex(({id}) => id === data.id); + if (index > -1) { + state.calendarTask.splice(index, 1) + } + this.dispatch("getProjectBasic", data.project_id); + } }