コード例 #1
0
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     /**
      * @var EntityManager $em
      */
     $em = (new OrmProvider())->getEntityManager();
     /**
      * @var GroupRepository $groupRepository
      */
     $groupRepository = $em->getRepository('LW\\Model\\Entity\\Group');
     $dict = new Dictionary();
     $users['director'] = $this->generateUser('ivanov_vu', 'ivanov_vu@test', 'ivanov_vu', $dict->userRoles()->ROLE_BOSS[0], 'Иванов', 'Василий', 'Юрьевич', 'Директор');
     $users['department_chief'] = $this->generateUser('vasiliev_va', 'vasiliev_va@test', 'vasiliev_va', $dict->userRoles()->ROLE_BOSS[0], 'Васильев', 'Владимир', 'Алексеевич', 'Начальник отдела рекламы');
     $users['designer'] = $this->generateUser('rasstrelnikov_sv', 'rasstrelnikov_sv@test', 'rasstrelnikov_sv', $dict->userRoles()->ROLE_WORKER[0], 'Расстрельников', 'Сергей', 'Викторович', 'Дизайнер');
     $users['copywriter'] = $this->generateUser('tverskaya_aa', 'tverskaya_aa@test', 'tverskaya_aa', $dict->userRoles()->ROLE_WORKER[0], 'Тверская', 'Алена', 'Александровна', 'Копирайтер');
     $users['system_administrator'] = $this->generateUser('admin', 'kolelov_in@test', '_admin_', $dict->userRoles()->ROLE_WORKER[0], 'Колелов', 'Иван', 'Николаевич', 'Системный администратор');
     $groups['organisation'] = $this->generateGroup('ООО Наша фирма');
     $groups['chief'] = $this->generateGroup('Директор');
     $groups['department_advertising'] = $this->generateGroup('Отдел рекламы');
     $groups['chief_department'] = $this->generateGroup('Начальник отдела');
     $groups['worker_department'] = $this->generateGroup('Работники');
     foreach ($users as $user) {
         $em->persist($user);
     }
     foreach ($groups as $group) {
         $group->setInnerOrder($groupRepository->getNextNumberByOwner(0));
         $em->persist($group);
     }
     $em->flush();
     $request = new Request();
     $router = new Router($request);
     $manager = new Manager($em, $router);
     $manager->addUsersToGroup($groups['chief']->getId(), array($users['director']->getId()));
     $manager->addUsersToGroup($groups['chief_department']->getId(), array($users['department_chief']->getId()));
     $manager->addUsersToGroup($groups['worker_department']->getId(), array($users['copywriter']->getId(), $users['designer']->getId()));
     $manager->moveNode($groups['chief']->getId(), $groups['organisation']->getId(), 1);
     $manager->moveNode($groups['department_advertising']->getId(), $groups['chief']->getId(), 1);
     $manager->moveNode($groups['chief_department']->getId(), $groups['department_advertising']->getId(), 1);
     $manager->moveNode($groups['worker_department']->getId(), $groups['chief_department']->getId(), 1);
     $output->writeln('Successful!');
 }
コード例 #2
0
 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;
 }