public function editTask(User $user, Task $task) { $dictionary = new Dictionary(); if ($user->getRole() != $dictionary->userRoles()->ROLE_BOSS[0]) { return; } $this->task = $task; $newUserList = $task->getUsers(); foreach ($newUserList as $userTask) { if ($userTask->getUserId() == $user->getId() && $userTask->getRole() == $dictionary->taskRoles()->CREATOR[0]) { continue; } if ($userTask->getId() != null) { $this->dataRepository->remove($userTask); continue; } $userTask->setRole($dictionary->taskRoles()->EXECUTOR[0]); $userTask->setUser($this->dataRepository->findUser($userTask->getUserId())); $this->dataRepository->persist($userTask); } $this->wasChanged = true; }