/**
  * {@inheritdoc}
  */
 public function load(ObjectManager $manager)
 {
     /** @var EntityManager $manager */
     $user = $this->getUser($manager);
     $businessUnit = $user->getOwner();
     $organization = $user->getOrganization();
     $locator = $this->container->get('file_locator');
     $filePath = $locator->locate('@OroB2BProductBundle/Migrations/Data/Demo/ORM/data/products.csv');
     if (is_array($filePath)) {
         $filePath = current($filePath);
     }
     $handler = fopen($filePath, 'r');
     $headers = fgetcsv($handler, 1000, ',');
     $inventoryStatuses = $this->getAllEnumValuesByCode($manager, 'prod_inventory_status');
     $visibilities = $this->getAllEnumValuesByCode($manager, 'prod_visibility');
     $statuses = $this->getAllEnumValuesByCode($manager, 'prod_status');
     while (($data = fgetcsv($handler, 1000, ',')) !== false) {
         $row = array_combine($headers, array_values($data));
         $product = new Product();
         $product->setOwner($businessUnit)->setOrganization($organization)->setSku($row['productCode'])->setInventoryStatus($inventoryStatuses[array_rand($inventoryStatuses)])->setVisibility($visibilities[array_rand($visibilities)])->setStatus($statuses[array_rand($statuses)]);
         $manager->persist($product);
     }
     fclose($handler);
     $manager->flush();
 }
Example #2
0
 /**
  * @param ObjectManager $manager
  * @param string $sku
  * @return Product
  */
 protected function createProduct(ObjectManager $manager, $sku)
 {
     $businessUnit = $manager->getRepository('OroOrganizationBundle:BusinessUnit')->getFirst();
     $organization = $manager->getRepository('OroOrganizationBundle:Organization')->getFirst();
     $product = new Product();
     $product->setSku($sku);
     $product->setOwner($businessUnit);
     $product->setOrganization($organization);
     $manager->persist($product);
     $this->addReference($sku, $product);
     return $product;
 }
 /**
  * {@inheritdoc}
  */
 public function load(ObjectManager $manager)
 {
     /** @var EntityManager $manager */
     $user = $this->getUser($manager);
     $businessUnit = $user->getOwner();
     $organization = $user->getOrganization();
     foreach ($this->products as $item) {
         $product = new Product();
         $product->setOwner($businessUnit)->setOrganization($organization)->setSku($item['productCode']);
         $manager->persist($product);
     }
     $manager->flush();
 }
 /**
  * {@inheritdoc}
  */
 public function load(ObjectManager $manager)
 {
     /** @var EntityManager $manager */
     $user = $this->getUser($manager);
     $businessUnit = $user->getOwner();
     $organization = $user->getOrganization();
     foreach ($this->products as $item) {
         $product = new Product();
         $product->setOwner($businessUnit)->setOrganization($organization)->setSku($item['productCode']);
         $name = new LocalizedFallbackValue();
         $product->addName($name);
         $name->setString($item['productCode']);
         $manager->persist($product);
         $this->addReference($item['productCode'], $product);
     }
     $manager->flush();
 }