This commit is contained in:
Pang 2021-06-18 00:09:21 +08:00
parent 3da0a41155
commit a97b7f158a
9 changed files with 82 additions and 66 deletions

View File

@ -42,11 +42,11 @@ class DialogController extends AbstractController
} }
/** /**
* 单个对话信息 * 获取会话基础信息
* *
* @apiParam {Number} dialog_id 对话ID * @apiParam {Number} dialog_id 对话ID
*/ */
public function one() public function basic()
{ {
$user = User::auth(); $user = User::auth();
// //

View File

@ -24,7 +24,7 @@ use Request;
class ProjectController extends AbstractController class ProjectController extends AbstractController
{ {
/** /**
* 项目列表 * 获取项目列表
* *
* @apiParam {Number} [page] 当前页,默认:1 * @apiParam {Number} [page] 当前页,默认:1
* @apiParam {Number} [pagesize] 每页显示数量,默认:100,最大:200 * @apiParam {Number} [pagesize] 每页显示数量,默认:100,最大:200
@ -43,11 +43,11 @@ class ProjectController extends AbstractController
} }
/** /**
* 单个项目信息 * 获取项目基础信息
* *
* @apiParam {Number} project_id 项目ID * @apiParam {Number} project_id 项目ID
*/ */
public function one() public function basic()
{ {
user::auth(); user::auth();
// //
@ -59,7 +59,7 @@ class ProjectController extends AbstractController
} }
/** /**
* 单个项目详情(比"单个项目信息"多) * 获取项目详细信息
* *
* @apiParam {Number} project_id 项目ID * @apiParam {Number} project_id 项目ID
*/ */
@ -508,11 +508,11 @@ class ProjectController extends AbstractController
} }
/** /**
* 获取任务 * 获取任务基础信息
* *
* @apiParam {Number} task_id 任务ID * @apiParam {Number} task_id 任务ID
*/ */
public function task__one() public function task__basic()
{ {
user::auth(); user::auth();
// //

View File

@ -343,7 +343,7 @@ class UsersController extends AbstractController
} }
/** /**
* @api {get} api/users/basic 09. 获取指定会员基信息 * @api {get} api/users/basic 09. 获取指定会员基信息
* *
* @apiDescription 需要token身份 * @apiDescription 需要token身份
* @apiVersion 1.0.0 * @apiVersion 1.0.0

View File

@ -573,9 +573,10 @@ class ProjectTask extends AbstractModel
// 归档任务 // 归档任务
$this->archived_at = $archived_at; $this->archived_at = $archived_at;
$this->addLog("任务归档:" . $this->name); $this->addLog("任务归档:" . $this->name);
$this->pushMsg('archived', $this->toArray());
} }
$this->save(); $this->save();
return Base::retSuccess('修改成功', $this->toArray()); return Base::retSuccess('保存成功', $this->toArray());
}); });
} }
@ -589,12 +590,10 @@ class ProjectTask extends AbstractModel
if ($this->dialog_id) { if ($this->dialog_id) {
WebSocketDialog::whereId($this->dialog_id)->delete(); WebSocketDialog::whereId($this->dialog_id)->delete();
} }
if ($this->delete()) { $this->delete();
$this->addLog("删除{任务}" . $this->name); $this->addLog("删除{任务}" . $this->name);
$this->pushMsg('delete', $this->toArray());
return Base::retSuccess('删除成功', $this->toArray()); return Base::retSuccess('删除成功', $this->toArray());
} else {
return Base::retError('删除失败', $this->toArray());
}
}); });
} }

View File

@ -332,7 +332,7 @@ class User extends AbstractModel
} }
/** /**
* userid 获取 信息 * userid 获取 信息
* @param int $userid 会员ID * @param int $userid 会员ID
* @return self * @return self
*/ */

View File

@ -785,7 +785,7 @@ export default {
if (index > -1) { if (index > -1) {
this.projectDetail.project_column.splice(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}) => { }).catch(({msg}) => {
$A.modalError(msg, 301); $A.modalError(msg, 301);
this.$set(column, 'loading', false); this.$set(column, 'loading', false);

View File

@ -817,7 +817,7 @@ export default {
$A.messageSuccess(msg); $A.messageSuccess(msg);
this.ownerLoad--; this.ownerLoad--;
this.ownerShow = false; this.ownerShow = false;
this.$store.dispatch("getTaskOne", this.taskDetail.id); this.$store.dispatch("getTaskBasic", this.taskDetail.id);
}).catch(({msg}) => { }).catch(({msg}) => {
$A.modalError(msg); $A.modalError(msg);
this.ownerLoad--; this.ownerLoad--;
@ -847,7 +847,7 @@ export default {
$A.messageSuccess(msg); $A.messageSuccess(msg);
this.assistLoad--; this.assistLoad--;
this.assistShow = false; this.assistShow = false;
this.$store.dispatch("getTaskOne", this.taskDetail.id); this.$store.dispatch("getTaskBasic", this.taskDetail.id);
}).catch(({msg}) => { }).catch(({msg}) => {
$A.modalError(msg); $A.modalError(msg);
this.assistLoad--; this.assistLoad--;

View File

@ -188,7 +188,7 @@ export default {
}, },
/** /**
* 获取用户基信息 * 获取用户基信息
* @param state * @param state
* @param dispatch * @param dispatch
* @param params {userid, success, complete} * @param params {userid, success, complete}
@ -316,12 +316,12 @@ export default {
* @param dispatch * @param dispatch
* @param project_id * @param project_id
*/ */
getProjectOne({state, dispatch}, project_id) { getProjectBasic({state, dispatch}, project_id) {
if (state.method.runNum(project_id) === 0) { if (state.method.runNum(project_id) === 0) {
return; return;
} }
dispatch("call", { dispatch("call", {
url: 'project/one', url: 'project/basic',
data: { data: {
project_id: project_id, project_id: project_id,
}, },
@ -419,7 +419,7 @@ export default {
if (!data.start_at || !data.end_at) { if (!data.start_at || !data.end_at) {
return; return;
} }
if (!data.userid != state.userId) { if (!data.owner) {
return; return;
} }
let task = { let task = {
@ -489,10 +489,10 @@ export default {
* @param task_id * @param task_id
* @returns {Promise<unknown>} * @returns {Promise<unknown>}
*/ */
getTaskOne({state, dispatch}, task_id) { getTaskBasic({state, dispatch}, task_id) {
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
dispatch("call", { dispatch("call", {
url: 'project/task/one', url: 'project/task/basic',
data: { data: {
task_id, task_id,
}, },
@ -605,7 +605,7 @@ export default {
data.sub_task = state.projectSubTask[data.id] || [] data.sub_task = state.projectSubTask[data.id] || []
// //
state.projectOpenTask = Object.assign({}, data, {_show: true}); state.projectOpenTask = Object.assign({}, data, {_show: true});
dispatch("getTaskOne", data.id); dispatch("getTaskBasic", data.id);
dispatch("getTaskContent", data.id); dispatch("getTaskContent", data.id);
dispatch("getTaskFiles", data.id); dispatch("getTaskFiles", data.id);
dispatch("getSubTask", data.id); dispatch("getSubTask", data.id);
@ -678,15 +678,15 @@ export default {
method: 'post', method: 'post',
}).then(result => { }).then(result => {
if (result.data.parent_id) { if (result.data.parent_id) {
dispatch("getTaskOne", result.data.parent_id); dispatch("getTaskBasic", result.data.parent_id);
} }
if (typeof post.complete_at !== "undefined") { if (typeof post.complete_at !== "undefined") {
dispatch("getProjectOne", result.data.project_id); dispatch("getProjectBasic", result.data.project_id);
} }
dispatch("saveTask", result.data); dispatch("saveTask", result.data);
resolve(result) resolve(result)
}).catch(result => { }).catch(result => {
dispatch("getTaskOne", post.task_id); dispatch("getTaskBasic", post.task_id);
reject(result) reject(result)
}); });
}); });
@ -694,12 +694,12 @@ export default {
/** /**
* 删除或归档任务 * 删除或归档任务
* @param state
* @param dispatch * @param dispatch
* @param commit
* @param data {task_id, type} * @param data {task_id, type}
* @returns {Promise<unknown>} * @returns {Promise<unknown>}
*/ */
taskArchivedOrRemove({state, dispatch}, data) { taskArchivedOrRemove({dispatch, commit}, data) {
let {task_id, type} = data; let {task_id, type} = data;
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
dispatch("call", { dispatch("call", {
@ -708,27 +708,7 @@ export default {
task_id, task_id,
}, },
}).then(result => { }).then(result => {
const {data} = result; commit("taskRemoveSuccess", result.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)
}
dispatch("getProjectOne", data.project_id);
resolve(result); resolve(result);
}).catch(result => { }).catch(result => {
reject(result) reject(result)
@ -803,14 +783,14 @@ export default {
}, },
/** /**
* 获取单个会话 * 获取会话基础信息
* @param state * @param state
* @param dispatch * @param dispatch
* @param dialog_id * @param dialog_id
*/ */
getDialogOne({state, dispatch}, dialog_id) { getDialogBasic({state, dispatch}, dialog_id) {
dispatch("call", { dispatch("call", {
url: 'dialog/one', url: 'dialog/basic',
data: { data: {
dialog_id, dialog_id,
}, },
@ -1104,7 +1084,7 @@ export default {
if (dialog) { if (dialog) {
dialog.last_msg = data; dialog.last_msg = data;
} else { } else {
dispatch("getDialogOne", dialog_id); dispatch("getDialogBasic", dialog_id);
} }
if (mode === "add") { if (mode === "add") {
// 更新对话列表 // 更新对话列表
@ -1136,8 +1116,14 @@ export default {
case "projectTask": case "projectTask":
(function (msg) { (function (msg) {
const {action, data} = msg; const {action, data} = msg;
if (action == 'add') { switch (action) {
case 'add':
commit("taskAddSuccess", data) commit("taskAddSuccess", data)
break;
case 'archived':
case 'delete':
commit("taskRemoveSuccess", data)
break;
} }
})(msgDetail); })(msgDetail);
break; break;

View File

@ -1,6 +1,6 @@
export default { export default {
/** /**
* 添加任务 * 添加任务
* @param state * @param state
* @param data * @param data
*/ */
@ -14,6 +14,8 @@ export default {
} }
const column = state.projectDetail.project_column.find(({id}) => id === task.column_id); const column = state.projectDetail.project_column.find(({id}) => id === task.column_id);
if (column) { if (column) {
let index = column.project_task.findIndex(({id}) => id === task.id)
if (index === -1) {
if (in_top) { if (in_top) {
column.project_task.unshift(task); column.project_task.unshift(task);
} else { } else {
@ -21,7 +23,8 @@ export default {
} }
} }
} }
this.dispatch("getProjectOne", task.project_id); }
this.dispatch("getProjectBasic", task.project_id);
} else { } else {
// 添加子任务 // 添加子任务
if (state.projectDetail.id == task.project_id) { if (state.projectDetail.id == task.project_id) {
@ -42,8 +45,36 @@ export default {
state.projectOpenTask.sub_task.push(task); state.projectOpenTask.sub_task.push(task);
} }
} }
this.dispatch("getTaskOne", task.parent_id); this.dispatch("getTaskBasic", task.parent_id);
} }
this.dispatch("saveTask", task); 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);
}
} }