/** * @return void */ protected function setTestData() { $productAbstract = SpyProductAbstractQuery::create()->filterBySku('test')->findOne(); if ($productAbstract === null) { $productAbstract = new SpyProductAbstract(); $productAbstract->setSku('test'); } $productAbstract->setAttributes('{}')->save(); $product = SpyProductQuery::create()->filterBySku('test2')->findOne(); if ($product === null) { $product = new SpyProduct(); $product->setSku('test2'); } $product->setFkProductAbstract($productAbstract->getIdProductAbstract())->setAttributes('{}')->save(); $stockType1 = SpyStockQuery::create()->filterByName('warehouse1')->findOneOrCreate(); $stockType1->setName('warehouse1')->save(); $stockType2 = SpyStockQuery::create()->filterByName('warehouse2')->findOneOrCreate(); $stockType2->setName('warehouse2')->save(); $stockProduct1 = SpyStockProductQuery::create()->filterByFkStock($stockType1->getIdStock())->filterByFkProduct($product->getIdProduct())->findOneOrCreate(); $stockProduct1->setFkStock($stockType1->getIdStock())->setQuantity(10)->setFkProduct($product->getIdProduct())->save(); $stockProduct2 = SpyStockProductQuery::create()->filterByFkStock($stockType2->getIdStock())->filterByFkProduct($product->getIdProduct())->findOneOrCreate(); $stockProduct2->setFkStock($stockType2->getIdStock())->setQuantity(20)->setFkProduct($product->getIdProduct())->save(); }
/** * @param \Generated\Shared\Transfer\ProductAbstractTransfer $productAbstractTransfer * * @return int */ public function createProductAbstract(ProductAbstractTransfer $productAbstractTransfer) { $sku = $productAbstractTransfer->getSku(); $encodedAttributes = $this->encodeAttributes($productAbstractTransfer->getAttributes()); $productAbstract = new SpyProductAbstract(); $productAbstract->setAttributes($encodedAttributes)->setSku($sku); $productAbstract->save(); $idProductAbstract = $productAbstract->getPrimaryKey(); $productAbstractTransfer->setIdProductAbstract($idProductAbstract); $this->createProductAbstractAttributes($productAbstractTransfer); $this->createProductAbstractImages($productAbstractTransfer); return $idProductAbstract; }
/** * @param int $taxRate * @param string $iso2Code * * @return \Orm\Zed\Product\Persistence\SpyProductAbstract */ protected function createAbstractProductWithTaxSet($taxRate, $iso2Code) { $countryEntity = SpyCountryQuery::create()->findOneByIso2Code($iso2Code); $taxRateEntity1 = new SpyTaxRate(); $taxRateEntity1->setRate($taxRate); $taxRateEntity1->setName('test rate'); $taxRateEntity1->setFkCountry($countryEntity->getIdCountry()); $taxRateEntity1->save(); $taxRateEntity2 = new SpyTaxRate(); $taxRateEntity2->setRate(13); $taxRateEntity2->setName('test rate'); $taxRateEntity2->setFkCountry($countryEntity->getIdCountry()); $taxRateEntity2->save(); $taxRateExemptEntity = new SpyTaxRate(); $taxRateExemptEntity->setRate(0); $taxRateExemptEntity->setName(TaxConstants::TAX_EXEMPT_PLACEHOLDER); $taxRateExemptEntity->save(); $taxSetEntity = new SpyTaxSet(); $taxSetEntity->setName('name of tax set'); $taxSetEntity->save(); $taxSetTaxRateEntity = new SpyTaxSetTax(); $taxSetTaxRateEntity->setFkTaxSet($taxSetEntity->getIdTaxSet()); $taxSetTaxRateEntity->setFkTaxRate($taxRateEntity1->getIdTaxRate()); $taxSetTaxRateEntity->save(); $taxSetTaxRateEntity = new SpyTaxSetTax(); $taxSetTaxRateEntity->setFkTaxSet($taxSetEntity->getIdTaxSet()); $taxSetTaxRateEntity->setFkTaxRate($taxRateEntity2->getIdTaxRate()); $taxSetTaxRateEntity->save(); $taxSetTaxRateEntity = new SpyTaxSetTax(); $taxSetTaxRateEntity->setFkTaxSet($taxSetEntity->getIdTaxSet()); $taxSetTaxRateEntity->setFkTaxRate($taxRateExemptEntity->getIdTaxRate()); $taxSetTaxRateEntity->save(); $abstractProductEntity = new SpyProductAbstract(); $abstractProductEntity->setSku('test-abstract-sku'); $abstractProductEntity->setAttributes(''); $abstractProductEntity->setFkTaxSet($taxSetEntity->getIdTaxSet()); $abstractProductEntity->save(); return $abstractProductEntity; }