/**
  * 商品を生成する.
  *
  * @return void
  */
 function createProducts()
 {
     // 既存のランク最大値を取得
     $q = $this->em->createQuery('SELECT MAX (c.rank) from Eccube\\Entity\\ProductImage c');
     $existingProductImageMaxRank = $q->getSingleResult()[1];
     // 全プロダクト共通の値
     $common_val = array();
     $common_val['creator'] = $this->app['eccube.repository.member']->find(2);
     $common_val['del_flg'] = (string) '0';
     $common_val['status'] = $this->app['eccube.repository.master.disp']->find(Eccube\Entity\Master\Disp::DISPLAY_SHOW);
     $common_val['note'] = "コメント";
     $common_val['free_area'] = "コメント";
     print "商品を生成しています...\n";
     for ($i = 0; $i < PRODUCTS_VOLUME; $i++) {
         $Product = new \Eccube\Entity\Product();
         $Product->setCreator($common_val['creator'])->setDelFlg($common_val['del_flg'])->setName(sprintf("商品%d", $i))->setStatus($common_val['status'])->setNote($common_val['note'])->setFreeArea($common_val['free_area']);
         $this->saveEntity($Product);
         $ProductImage = new \Eccube\Entity\ProductImage();
         $ProductImage->setCreator($common_val['creator'])->setProduct($Product)->setFileName("fork-1.jpg")->setRank($existingProductImageMaxRank + $i + 1);
         $this->saveEntity($ProductImage);
         $this->arrProduct[] = $Product;
         print "*";
     }
     print "\n";
 }