归档项目

This commit is contained in:
kuaifan
2021-06-23 11:52:19 +08:00
parent f9031aec57
commit f2b32c2161
4 changed files with 119 additions and 7 deletions

View File

@@ -60,6 +60,10 @@ class ProjectController extends AbstractController
/**
* 获取项目列表
*
* @apiParam {String} [archived] 归档状态
* - no未归档默认
* - yes已归档
*
* @apiParam {Number} [page] 当前页,默认:1
* @apiParam {Number} [pagesize] 每页显示数量,默认:100最大:200
*/
@@ -67,10 +71,15 @@ class ProjectController extends AbstractController
{
User::auth();
//
$list = Project::select(Project::projectSelect)
->authData()
->orderByDesc('projects.id')
->paginate(Base::getPaginate(200, 100));
$archived = Request::input('archived', 'no');
//
$builder = Project::select(Project::projectSelect)->authData();
if ($archived == 'yes') {
$builder->whereNotNull('archived_at');
} elseif ($archived == 'no') {
$builder->whereNull('archived_at');
}
$list = $builder->orderByDesc('projects.id')->paginate(Base::getPaginate(200, 100));
//
return Base::retSuccess('success', $list);
}
@@ -357,6 +366,26 @@ class ProjectController extends AbstractController
return Base::retSuccess('退出成功', ['id' => $project->id]);
}
/**
* 归档项目
*
* @apiParam {Number} project_id 项目ID
*/
public function archived()
{
User::auth();
//
$project_id = intval(Request::input('project_id'));
//
$project = Project::userProject($project_id);
if (!$project->owner) {
return Base::retError('你不是项目负责人');
}
//
$project->archivedProject(Carbon::now());
return Base::retSuccess('设置成功', ['id' => $project->id]);
}
/**
* 删除项目
*
@@ -513,6 +542,9 @@ class ProjectController extends AbstractController
* - all所有默认
* - yes已完成
* - no未完成
* @apiParam {String} [archived] 归档状态
* - yes已归档
* - no未归档默认
*/
public function task__lists()
{
@@ -525,7 +557,8 @@ class ProjectController extends AbstractController
$name = Request::input('name');
$time = Request::input('time');
$time_before = Request::input('time_before');
$complete = Request::input('complete');
$complete = Request::input('complete', 'all');
$archived = Request::input('archived', 'no');
//
if ($parent_id > 0) {
ProjectTask::userTask($parent_id);
@@ -563,6 +596,12 @@ class ProjectController extends AbstractController
$builder->whereNull('complete_at');
}
//
if ($archived == 'yes') {
$builder->whereNotNull('archived_at');
} elseif ($archived == 'no') {
$builder->whereNull('archived_at');
}
//
$list = $builder->orderByDesc('id')->paginate(Base::getPaginate(200, 100));
//
return Base::retSuccess('success', $list);