public function import($file, OutputInterface $output) { $csvFile = new CsvFile($file); $csv = $csvFile->getCsv(); $cpt = 0; $configuration = $this->dm->getRepository('AppBundle:Configuration')->findConfiguration(); if (!$configuration) { $configuration = new Configuration(); $configuration->setId(Configuration::PREFIX); } foreach ($csv as $data) { $produit = new Produit(); $produit->setIdentifiant(strtoupper(Transliterator::urlize(trim(preg_replace("/[ ]+/", " ", $data[self::CSV_NOM]))))); $produit->setNom(ucfirst(strtolower($data[self::CSV_NOM]))); $produit->setConditionnement($data[self::CSV_CONDITIONNEMENT]); $produit->setPrixHt($data[self::CSV_PRIX_HT]); $produit->setPrixPrestation($data[self::CSV_PRIX_PRESTATION]); $produit->setPrixVente($data[self::CSV_PRIX_VENTE]); if ($data[self::CSV_STATUT]) { $produit->setStatut(Produit::PRODUIT_ACTIF); } else { $produit->setStatut(Produit::PRODUIT_INACTIF); } $configuration->addProduit($produit); $this->dm->persist($configuration); } $this->dm->flush(); }
/** * Add produit * * @param AppBundle\Document\Produit $produit */ public function addProduit(\AppBundle\Document\Produit $produit) { foreach ($this->getProduits() as $prod) { if ($prod->getIdentifiant() == $produit->getIdentifiant()) { return; } } $this->produits[] = $produit; }