mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-13 20:12:48 +00:00
fix: 修复项目成员无法认领任务的情况
This commit is contained in:
parent
44baa743c0
commit
b4101f856a
@ -2120,14 +2120,17 @@ class ProjectController extends AbstractController
|
|||||||
//
|
//
|
||||||
$task = ProjectTask::userTask($task_id);
|
$task = ProjectTask::userTask($task_id);
|
||||||
//
|
//
|
||||||
$project = Project::userProject($task->project_id);
|
if ($task->hasOwner()) {
|
||||||
$permissionKey = ProjectPermission::TASK_UPDATE;
|
// 已经存在负责人,则需要检查权限(即:没有任务负责人时,不检查权限)
|
||||||
if (Arr::exists($param, 'times')) {
|
$project = Project::userProject($task->project_id);
|
||||||
$permissionKey = ProjectPermission::TASK_TIME;
|
$permissionKey = ProjectPermission::TASK_UPDATE;
|
||||||
} else if (Arr::exists($param, 'flow_item_id')) {
|
if (Arr::exists($param, 'times')) {
|
||||||
$permissionKey = ProjectPermission::TASK_STATUS;
|
$permissionKey = ProjectPermission::TASK_TIME;
|
||||||
|
} else if (Arr::exists($param, 'flow_item_id')) {
|
||||||
|
$permissionKey = ProjectPermission::TASK_STATUS;
|
||||||
|
}
|
||||||
|
ProjectPermission::userTaskPermission($project, $permissionKey, $task);
|
||||||
}
|
}
|
||||||
ProjectPermission::userTaskPermission($project, $permissionKey, $task);
|
|
||||||
//
|
//
|
||||||
$taskUser = ProjectTaskUser::select(['userid', 'owner'])->whereTaskId($task_id)->get();
|
$taskUser = ProjectTaskUser::select(['userid', 'owner'])->whereTaskId($task_id)->get();
|
||||||
$owners = $taskUser->where('owner', 1)->pluck('userid')->toArray();
|
$owners = $taskUser->where('owner', 1)->pluck('userid')->toArray();
|
||||||
|
|||||||
@ -128,8 +128,8 @@ class ProjectPermission extends AbstractModel
|
|||||||
/**
|
/**
|
||||||
* 更新项目权限
|
* 更新项目权限
|
||||||
*
|
*
|
||||||
* @param int $projectId
|
* @param int $projectId
|
||||||
* @param array $permissions
|
* @param $newPermissions
|
||||||
* @return ProjectPermission
|
* @return ProjectPermission
|
||||||
*/
|
*/
|
||||||
public static function updatePermissions($projectId, $newPermissions)
|
public static function updatePermissions($projectId, $newPermissions)
|
||||||
@ -146,9 +146,9 @@ class ProjectPermission extends AbstractModel
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 检查用户是否有执行特定动作的权限
|
* 检查用户是否有执行特定动作的权限
|
||||||
* @param string $action 动作名称
|
|
||||||
* @param Project $project 项目实例
|
* @param Project $project 项目实例
|
||||||
* @param ProjectTask $task 任务实例
|
* @param string $action 动作名称
|
||||||
|
* @param ProjectTask|null $task 任务实例
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
public static function userTaskPermission(Project $project, $action, ProjectTask $task = null)
|
public static function userTaskPermission(Project $project, $action, ProjectTask $task = null)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user