mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-13 03:52:50 +00:00
fix: 修复任务可见性 - 任务重覆获取, 子任务负责人看不到任务问题
This commit is contained in:
parent
0737a9fae7
commit
ef273bd9dd
@ -1062,11 +1062,16 @@ class ProjectController extends AbstractController
|
||||
$query->on('project_task_visibility_users.task_id', '=', 'project_tasks.id');
|
||||
$query->where('project_task_visibility_users.userid', $userid);
|
||||
});
|
||||
$builder->leftJoin('project_task_visibility_users as project_sub_task_visibility_users', function ($query) use($userid) {
|
||||
$query->on('project_sub_task_visibility_users.task_id', '=', 'project_tasks.parent_id');
|
||||
$query->where('project_sub_task_visibility_users.userid', $userid);
|
||||
});
|
||||
$builder->where(function ($query) use ($userid) {
|
||||
$query->where("project_tasks.visibility", 1);
|
||||
$query->orWhere("project_users.userid", $userid);
|
||||
$query->orWhere("project_task_users.userid", $userid);
|
||||
$query->orWhere("project_task_visibility_users.userid", $userid);
|
||||
$query->orWhere("project_sub_task_visibility_users.userid", $userid);
|
||||
});
|
||||
// 优化子查询汇总
|
||||
$builder->leftJoinSub(function ($query) {
|
||||
|
||||
@ -113,7 +113,7 @@ class ProjectTaskObserver
|
||||
break;
|
||||
case 2:
|
||||
case 3:
|
||||
$dataType = $projectTask->visibility == 2 ? ['task'] : ['visibility'];
|
||||
$dataType = $projectTask->visibility == 2 ? ['task'] : ['task', 'visibility'];
|
||||
$forgetUserids = self::userids($projectTask, $dataType);
|
||||
$projectOwnerUserIds = self::userids($projectTask, 'projectOwnerUser');
|
||||
$recordUserids = array_diff($projectUserids, $forgetUserids, $projectOwnerUserIds);
|
||||
|
||||
@ -17,6 +17,9 @@ class ProjectTaskUserObserver
|
||||
public function created(ProjectTaskUser $projectTaskUser)
|
||||
{
|
||||
Deleted::forget('projectTask', $projectTaskUser->task_id, $projectTaskUser->userid);
|
||||
if ($projectTaskUser->task_pid) {
|
||||
Deleted::forget('projectTask', $projectTaskUser->task_pid, $projectTaskUser->userid);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user