From a131510ea80df64c1ae889516f53945d96283861 Mon Sep 17 00:00:00 2001 From: Julie Lenaerts Date: Tue, 24 Aug 2021 15:55:03 +0200 Subject: [PATCH] dataFixtures made but not tested --- .../src/DataFixtures/LoadAsideActivity.php | 91 +++++++++++++++++++ .../LoadAsideActivityCategory.php | 53 +++++++++++ 2 files changed, 144 insertions(+) create mode 100644 src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivity.php create mode 100644 src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivityCategory.php diff --git a/src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivity.php b/src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivity.php new file mode 100644 index 000000000..04163119a --- /dev/null +++ b/src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivity.php @@ -0,0 +1,91 @@ +faker = FakerFactory::create('fr_FR'); + } + + public function getOrder() + { + return 16400; + } + + /** + * Return a random asideActivityCategory + * + * @return \Chill\AsideActivityBundle\Entity\AsideActivityCategory + */ + private function getRandomAsideActivityCategory() + { + $catRef = LoadAsideActivityCategory::$references[array_rand(LoadAsideActivityCategory::$references)]; + return $this->getReference($catRef); + } + + /** + * Return a random user + * + * @return \Chill\MainBundle\Entity\User + */ + private function getRandomUser() + { + $userRef = array_rand(LoadUsers::$refs); + return $this->getReference($userRef); + } + + public function newRandomActivity() + { + $asideactivity = (new AsideActivity()) + ->setAgent($this->getRandomUser()) + ->setDate($this->faker->dateTimeThisYear()) + ->setDuration($this->faker->dateTime(36000)) + ->setType($this->getRandomAsideActivityCategory()); + + return $asideactivity; + } + + public function load(ObjectManager $manager) + { + $users = $this->container->get('doctrine.orm.entity_manager') + ->getRepository('ChillMainBundle:User') + ->findAll(); + + foreach($users as $user) { + $activityNbr = rand(0,3); + $ref = 'activity_'.$user->getUsernameCanonical(); + + for($i = 0; $i < $activityNbr; $i ++) { + print "Creating an aside activity for : ".$user." (ref: ".$ref.") \n"; + $asideactivity = $this->newRandomActivity($user); + $manager->persist($asideactivity); + } + + $this->setReference($ref, $asideactivity); + } + $manager->flush(); + } +} diff --git a/src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivityCategory.php b/src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivityCategory.php new file mode 100644 index 000000000..8df2ec5f9 --- /dev/null +++ b/src/Bundle/ChillAsideActivityBundle/src/DataFixtures/LoadAsideActivityCategory.php @@ -0,0 +1,53 @@ + ['fr' => 'Formation', 'en' => 'Training'], + 'ref' => 'training', + ], + [ + 'title' => ['fr' => 'Team building', 'en' => 'Team building'], + 'ref' => 'teambuilding', + ], + ]; + + foreach ($categories as $cat) { + print "Creating aside activity type category : " . $cat['ref'] . "\n"; + + $newCat = (new AsideActivityCategory()) + ->setTitle(($cat['title'])); + + $manager->persist($newCat); + $reference = 'activity_type_cat_'.$cat['ref']; + + $this->addReference($reference, $newCat); + static::$references[] = $reference; + } + + $manager->flush(); + } +} \ No newline at end of file