任务增删改
This commit is contained in:
parent
6ca8c7456d
commit
4799c10858
@ -703,6 +703,7 @@ class ProjectController extends AbstractController
|
|||||||
$task = ProjectTask::userTask($task_id);
|
$task = ProjectTask::userTask($task_id);
|
||||||
//
|
//
|
||||||
$updateComplete = false;
|
$updateComplete = false;
|
||||||
|
$updateContent = false;
|
||||||
if (Base::isDate($data['complete_at'])) {
|
if (Base::isDate($data['complete_at'])) {
|
||||||
// 标记已完成
|
// 标记已完成
|
||||||
if ($task->complete_at) {
|
if ($task->complete_at) {
|
||||||
@ -719,11 +720,12 @@ class ProjectController extends AbstractController
|
|||||||
$updateComplete = true;
|
$updateComplete = true;
|
||||||
} else {
|
} else {
|
||||||
// 更新任务
|
// 更新任务
|
||||||
$result = $task->updateTask($data);
|
$result = $task->updateTask($data, $updateContent);
|
||||||
}
|
}
|
||||||
if (Base::isSuccess($result)) {
|
if (Base::isSuccess($result)) {
|
||||||
$result['data'] = $task->toArray();
|
$result['data'] = $task->toArray();
|
||||||
$result['data']['is_update_complete'] = $updateComplete;
|
$result['data']['is_update_complete'] = $updateComplete;
|
||||||
|
$result['data']['is_update_content'] = $updateContent;
|
||||||
$task->pushMsg('update', $result['data']);
|
$task->pushMsg('update', $result['data']);
|
||||||
}
|
}
|
||||||
return $result;
|
return $result;
|
||||||
@ -814,7 +816,9 @@ class ProjectController extends AbstractController
|
|||||||
if (empty($task->dialog_id)) {
|
if (empty($task->dialog_id)) {
|
||||||
return Base::retError('创建聊天失败');
|
return Base::retError('创建聊天失败');
|
||||||
}
|
}
|
||||||
|
$task->pushMsg('dialog');
|
||||||
return Base::retSuccess('success', [
|
return Base::retSuccess('success', [
|
||||||
|
'id' => $task->id,
|
||||||
'dialog_id' => $task->dialog_id,
|
'dialog_id' => $task->dialog_id,
|
||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
|
@ -347,11 +347,12 @@ class ProjectTask extends AbstractModel
|
|||||||
/**
|
/**
|
||||||
* 修改任务
|
* 修改任务
|
||||||
* @param $data
|
* @param $data
|
||||||
|
* @param $updateContent
|
||||||
* @return array
|
* @return array
|
||||||
*/
|
*/
|
||||||
public function updateTask($data)
|
public function updateTask($data, &$updateContent)
|
||||||
{
|
{
|
||||||
return AbstractModel::transaction(function () use ($data) {
|
return AbstractModel::transaction(function () use ($data, &$updateContent) {
|
||||||
// 标题
|
// 标题
|
||||||
if (Arr::exists($data, 'name') && $this->name != $data['name']) {
|
if (Arr::exists($data, 'name') && $this->name != $data['name']) {
|
||||||
if (empty($data['name'])) {
|
if (empty($data['name'])) {
|
||||||
@ -436,6 +437,7 @@ class ProjectTask extends AbstractModel
|
|||||||
]);
|
]);
|
||||||
$this->desc = Base::getHtml($data['content']);
|
$this->desc = Base::getHtml($data['content']);
|
||||||
$this->addLog("修改任务详细描述");
|
$this->addLog("修改任务详细描述");
|
||||||
|
$updateContent = true;
|
||||||
}
|
}
|
||||||
// 优先级
|
// 优先级
|
||||||
$p = false;
|
$p = false;
|
||||||
@ -624,7 +626,7 @@ class ProjectTask extends AbstractModel
|
|||||||
/**
|
/**
|
||||||
* 推送消息
|
* 推送消息
|
||||||
* @param string $action
|
* @param string $action
|
||||||
* @param array $data 发送内容,默认为[id, parent_id, project_id, column_id]
|
* @param array $data 发送内容,默认为[id, parent_id, project_id, column_id, dialog_id]
|
||||||
* @param array $userid 指定会员,默认为项目所有成员
|
* @param array $userid 指定会员,默认为项目所有成员
|
||||||
*/
|
*/
|
||||||
public function pushMsg($action, $data = null, $userid = null)
|
public function pushMsg($action, $data = null, $userid = null)
|
||||||
@ -638,6 +640,7 @@ class ProjectTask extends AbstractModel
|
|||||||
'parent_id' => $this->parent_id,
|
'parent_id' => $this->parent_id,
|
||||||
'project_id' => $this->project_id,
|
'project_id' => $this->project_id,
|
||||||
'column_id' => $this->column_id,
|
'column_id' => $this->column_id,
|
||||||
|
'dialog_id' => $this->dialog_id,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
if ($userid === null) {
|
if ($userid === null) {
|
||||||
|
@ -996,12 +996,8 @@ export default {
|
|||||||
task_id: this.taskDetail.id,
|
task_id: this.taskDetail.id,
|
||||||
},
|
},
|
||||||
}).then(({data}) => {
|
}).then(({data}) => {
|
||||||
this.$store.dispatch("saveTask", {
|
this.$store.commit("taskDialogSuccess", data);
|
||||||
id: this.taskDetail.id,
|
|
||||||
dialog_id: data.dialog_id
|
|
||||||
});
|
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$store.dispatch("getDialogMsgList", data.dialog_id);
|
|
||||||
this.$refs.dialog.sendMsg(this.msgText);
|
this.$refs.dialog.sendMsg(this.msgText);
|
||||||
this.msgText = "";
|
this.msgText = "";
|
||||||
});
|
});
|
||||||
|
13
resources/assets/js/store/actions.js
vendored
13
resources/assets/js/store/actions.js
vendored
@ -685,7 +685,15 @@ export default {
|
|||||||
data: post,
|
data: post,
|
||||||
method: 'post',
|
method: 'post',
|
||||||
}).then(result => {
|
}).then(result => {
|
||||||
commit("taskUpdateSuccess", result.data)
|
const {data} = result;
|
||||||
|
if (data.is_update_content === true) {
|
||||||
|
state.projectTaskContent[data.id] = post['content'];
|
||||||
|
if (data.id == state.projectOpenTask.id) {
|
||||||
|
state.projectOpenTask = Object.assign({}, state.projectOpenTask, {content: post['content']});
|
||||||
|
}
|
||||||
|
data.is_update_content = false;
|
||||||
|
}
|
||||||
|
commit("taskUpdateSuccess", data)
|
||||||
resolve(result)
|
resolve(result)
|
||||||
}).catch(result => {
|
}).catch(result => {
|
||||||
dispatch("getTaskBasic", post.task_id);
|
dispatch("getTaskBasic", post.task_id);
|
||||||
@ -1169,6 +1177,9 @@ export default {
|
|||||||
case 'upload':
|
case 'upload':
|
||||||
commit("taskUploadSuccess", data)
|
commit("taskUploadSuccess", data)
|
||||||
break;
|
break;
|
||||||
|
case 'dialog':
|
||||||
|
commit("taskDialogSuccess", data)
|
||||||
|
break;
|
||||||
case 'archived':
|
case 'archived':
|
||||||
case 'delete':
|
case 'delete':
|
||||||
commit("taskDeleteSuccess", data)
|
commit("taskDeleteSuccess", data)
|
||||||
|
15
resources/assets/js/store/mutations.js
vendored
15
resources/assets/js/store/mutations.js
vendored
@ -102,9 +102,12 @@ export default {
|
|||||||
if (data.parent_id) {
|
if (data.parent_id) {
|
||||||
this.dispatch("getTaskBasic", data.parent_id);
|
this.dispatch("getTaskBasic", data.parent_id);
|
||||||
}
|
}
|
||||||
if (data.is_update_complete) {
|
if (data.is_update_complete === true) {
|
||||||
this.dispatch("getProjectBasic", {id: data.project_id});
|
this.dispatch("getProjectBasic", {id: data.project_id});
|
||||||
}
|
}
|
||||||
|
if (data.is_update_content === true) {
|
||||||
|
this.dispatch("getTaskContent", data.id);
|
||||||
|
}
|
||||||
this.dispatch("saveTask", data);
|
this.dispatch("saveTask", data);
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -138,6 +141,16 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务打开聊天
|
||||||
|
* @param state
|
||||||
|
* @param data
|
||||||
|
*/
|
||||||
|
taskDialogSuccess(state, data) {
|
||||||
|
this.dispatch("saveTask", data);
|
||||||
|
this.dispatch("getDialogMsgList", data.dialog_id);
|
||||||
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除任务
|
* 删除任务
|
||||||
* @param state
|
* @param state
|
||||||
|
Loading…
x
Reference in New Issue
Block a user