diff --git a/app/Http/Controllers/Api/ProjectController.php b/app/Http/Controllers/Api/ProjectController.php index 9776da6e..ec16974f 100755 --- a/app/Http/Controllers/Api/ProjectController.php +++ b/app/Http/Controllers/Api/ProjectController.php @@ -1579,8 +1579,9 @@ class ProjectController extends AbstractController User::auth(); // $project_id = intval(Request::input('project_id')); + $is_filter = intval(Request::input('is_filter',0)); // - $project = Project::userProject($project_id, true, true); + $project = Project::userProject($project_id, true, true, $is_filter); // $list = ProjectFlow::with(['ProjectFlowItem'])->whereProjectId($project->id)->get(); return Base::retSuccess('success', $list); diff --git a/app/Models/Project.php b/app/Models/Project.php index 76e452a3..0b1bab82 100644 --- a/app/Models/Project.php +++ b/app/Models/Project.php @@ -354,10 +354,11 @@ class Project extends AbstractModel * 获取项目信息(用于判断会员是否存在项目内) * @param int $project_id * @param null|bool $archived true:仅限未归档, false:仅限已归档, null:不限制 - * @param null|bool $mustOwner true:仅限项目负责人, false:仅限非项目负责人, null:不限制 + * @param null $mustOwner true:仅限项目负责人, false:仅限非项目负责人, null:不限制 + * @param int $is_filter 是否是用筛选列表 * @return self */ - public static function userProject($project_id, $archived = true, $mustOwner = null) + public static function userProject($project_id, $archived = true, $mustOwner = null, $is_filter = 0) { $project = self::authData()->where('projects.id', intval($project_id))->first(); if (empty($project)) { @@ -369,10 +370,10 @@ class Project extends AbstractModel if ($archived === false && $project->archived_at == null) { throw new ApiException('项目未归档', [ 'project_id' => $project_id ]); } - if ($mustOwner === true && !$project->owner) { + if ($mustOwner === true && !$project->owner && $is_filter === 0) { throw new ApiException('仅限项目负责人操作', [ 'project_id' => $project_id ]); } - if ($mustOwner === false && $project->owner) { + if ($mustOwner === false && $project->owner && $is_filter === 0) { throw new ApiException('禁止项目负责人操作', [ 'project_id' => $project_id ]); } return $project; diff --git a/resources/assets/js/pages/manage/components/ProjectList.vue b/resources/assets/js/pages/manage/components/ProjectList.vue index 71596ea0..9a1f5460 100644 --- a/resources/assets/js/pages/manage/components/ProjectList.vue +++ b/resources/assets/js/pages/manage/components/ProjectList.vue @@ -72,6 +72,17 @@