perf: 支持查看已归档任务详情
This commit is contained in:
parent
9b0ca581f1
commit
1777153411
@ -876,6 +876,7 @@ class ProjectController extends AbstractController
|
||||
* - yes:已完成
|
||||
* - no:未完成
|
||||
* @apiParam {String} [archived] 归档状态
|
||||
* - all:所有
|
||||
* - yes:已归档
|
||||
* - no:未归档(默认)
|
||||
* @apiParam {Object} sorts 排序方式
|
||||
@ -911,7 +912,7 @@ class ProjectController extends AbstractController
|
||||
//
|
||||
$scopeAll = false;
|
||||
if ($parent_id > 0) {
|
||||
ProjectTask::userTask($parent_id);
|
||||
ProjectTask::userTask($parent_id, str_replace(['all', 'yes', 'no'], [null, false, true], $archived));
|
||||
$scopeAll = true;
|
||||
$builder->where('project_tasks.parent_id', $parent_id);
|
||||
} elseif ($parent_id === -1) {
|
||||
@ -974,6 +975,10 @@ class ProjectController extends AbstractController
|
||||
* @apiName task__one
|
||||
*
|
||||
* @apiParam {Number} task_id 任务ID
|
||||
* @apiParam {String} [archived] 归档状态
|
||||
* - all:所有
|
||||
* - yes:已归档
|
||||
* - no:未归档(默认)
|
||||
*
|
||||
* @apiSuccess {Number} ret 返回状态码(1正确、0错误)
|
||||
* @apiSuccess {String} msg 返回信息(错误描述)
|
||||
@ -984,8 +989,9 @@ class ProjectController extends AbstractController
|
||||
User::auth();
|
||||
//
|
||||
$task_id = intval(Request::input('task_id'));
|
||||
$archived = Request::input('archived', 'no');
|
||||
//
|
||||
$task = ProjectTask::userTask($task_id, true, false, ['taskUser', 'taskTag']);
|
||||
$task = ProjectTask::userTask($task_id, str_replace(['all', 'yes', 'no'], [null, false, true], $archived), false, ['taskUser', 'taskTag']);
|
||||
//
|
||||
$data = $task->toArray();
|
||||
$data['project_name'] = $task->project?->name;
|
||||
@ -1013,7 +1019,7 @@ class ProjectController extends AbstractController
|
||||
//
|
||||
$task_id = intval(Request::input('task_id'));
|
||||
//
|
||||
$task = ProjectTask::userTask($task_id);
|
||||
$task = ProjectTask::userTask($task_id, null);
|
||||
//
|
||||
return Base::retSuccess('success', $task->content ?: json_decode('{}'));
|
||||
}
|
||||
@ -1038,7 +1044,7 @@ class ProjectController extends AbstractController
|
||||
//
|
||||
$task_id = intval(Request::input('task_id'));
|
||||
//
|
||||
$task = ProjectTask::userTask($task_id);
|
||||
$task = ProjectTask::userTask($task_id, null);
|
||||
//
|
||||
return Base::retSuccess('success', $task->taskFile);
|
||||
}
|
||||
@ -1435,7 +1441,7 @@ class ProjectController extends AbstractController
|
||||
return Base::retError('记录不存在');
|
||||
}
|
||||
//
|
||||
$task = ProjectTask::userTask($projectLog->task_id, null, true);
|
||||
$task = ProjectTask::userTask($projectLog->task_id, true, true);
|
||||
//
|
||||
$record = $projectLog->record;
|
||||
if ($record['flow'] && is_array($record['flow'])) {
|
||||
|
@ -1059,7 +1059,7 @@ class ProjectTask extends AbstractModel
|
||||
/**
|
||||
* 获取任务(会员有任务权限 或 会员存在项目内)
|
||||
* @param int $task_id
|
||||
* @param bool $archived true:仅限未归档, false:不限制, null:不限制
|
||||
* @param bool $archived true:仅限未归档, false:仅限已归档, null:不限制
|
||||
* @param int|bool $mustOwner 0|false:不限制, 1|true:限制任务或项目负责人, 2:已有负责人才限制任务或项目负责人
|
||||
* @param array $with
|
||||
* @return self
|
||||
@ -1072,7 +1072,7 @@ class ProjectTask extends AbstractModel
|
||||
throw new ApiException('任务不存在', [ 'task_id' => $task_id ], -4002);
|
||||
}
|
||||
if ($archived === true && $task->archived_at != null) {
|
||||
throw new ApiException('任务已归档', [ 'task_id' => $task_id ], -4002);
|
||||
throw new ApiException('任务已归档', [ 'task_id' => $task_id ]);
|
||||
}
|
||||
if ($archived === false && $task->archived_at == null) {
|
||||
throw new ApiException('任务未归档', [ 'task_id' => $task_id ]);
|
||||
|
@ -65,7 +65,10 @@ export default {
|
||||
return;
|
||||
}
|
||||
this.loadIng++;
|
||||
this.$store.dispatch("getTaskOne", task_id).then(({data}) => {
|
||||
this.$store.dispatch("getTaskOne", {
|
||||
task_id,
|
||||
archived: 'all'
|
||||
}).then(({data}) => {
|
||||
this.loadIng--;
|
||||
this.taskInfo = data;
|
||||
this.$store.dispatch("getTaskContent", task_id);
|
||||
|
23
resources/assets/js/store/actions.js
vendored
23
resources/assets/js/store/actions.js
vendored
@ -1010,20 +1010,21 @@ export default {
|
||||
* 获取单个任务
|
||||
* @param state
|
||||
* @param dispatch
|
||||
* @param task_id
|
||||
* @param data Number|JSONObject{task_id, ?archived_at}
|
||||
* @returns {Promise<unknown>}
|
||||
*/
|
||||
getTaskOne({state, dispatch}, task_id) {
|
||||
getTaskOne({state, dispatch}, data) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
if ($A.runNum(task_id) === 0) {
|
||||
if (/^\d+$/.test(data)) {
|
||||
data = {task_id: data}
|
||||
}
|
||||
if ($A.runNum(data.task_id) === 0) {
|
||||
reject({msg: 'Parameter error'});
|
||||
return;
|
||||
}
|
||||
dispatch("call", {
|
||||
url: 'project/task/one',
|
||||
data: {
|
||||
task_id,
|
||||
},
|
||||
data,
|
||||
}).then(result => {
|
||||
dispatch("saveTask", result.data);
|
||||
resolve(result)
|
||||
@ -1125,7 +1126,10 @@ export default {
|
||||
const newIds = state.cacheTasks.filter(task => task.parent_id == parent_id && task._time >= time).map(({id}) => id)
|
||||
dispatch("forgetTask", currentIds.filter(v => newIds.indexOf(v) == -1))
|
||||
}
|
||||
dispatch("getTasks", {parent_id}).then(() => {
|
||||
dispatch("getTasks", {
|
||||
parent_id,
|
||||
archived: 'all'
|
||||
}).then(() => {
|
||||
call()
|
||||
resolve()
|
||||
}).catch(() => {
|
||||
@ -1292,7 +1296,10 @@ export default {
|
||||
}
|
||||
state.taskId = task_id;
|
||||
if (task_id > 0) {
|
||||
dispatch("getTaskOne", task_id).then(() => {
|
||||
dispatch("getTaskOne", {
|
||||
task_id,
|
||||
archived: 'all'
|
||||
}).then(() => {
|
||||
dispatch("getTaskContent", task_id);
|
||||
dispatch("getTaskFiles", task_id);
|
||||
dispatch("getTaskForParent", task_id).catch(() => {})
|
||||
|
Loading…
x
Reference in New Issue
Block a user