/** * Load data fixtures with the passed EntityManager * * @param \Doctrine\Common\Persistence\ObjectManager $manager */ function load(ObjectManager $manager) { $securities = $manager->getRepository('WealthbotAdminBundle:Security')->findAll(); $securityPrice = null; mt_srand(0); foreach ($securities as $security) { $iterations = 6; $firstDate = new \DateTime('04-01-2013 08:05:00'); for ($i = 0; $i < $iterations; $i++) { $securityPrice = new SecurityPrice(); $securityPrice->setSecurity($security); $securityPrice->setSource('admin'); $securityPrice->setPrice($this->getRandom(25, 150)); $securityPrice->setIsCurrent(false); $currentDate = clone $firstDate->add(new \DateInterval('P7D')); $securityPrice->setDatetime($currentDate); $manager->persist($securityPrice); } if ($securityPrice) { $securityPrice->setIsCurrent(true); $manager->persist($securityPrice); } } $manager->flush(); }
/** * Create new SecurityPrice for security * * @param Security $security * @param float $price */ private function createPriceHistory(Security $security, $price) { $author = $this->getAuthor(); $source = $author->getFirstName() ? $author->getFirstName() . ' ' . $author->getLastName() : $author->getUsername(); $securityPrice = new SecurityPrice(); $securityPrice->setSecurity($security); $securityPrice->setPrice($price); $securityPrice->setSource($source); $securityPrice->setIsCurrent(true); $security->addSecurityPrice($securityPrice); }