* @copyright 2007-2021 PrestaShop SA * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ namespace Core\App\Factory; class ExpfacturaItemFactory extends OrderItemFactory { public function createExpfacturaProduct( $product_ids, $product_name, $ean, $sku, $upc, $currency_code, $price, $taxRate, $quantity, $taxIncluded = false ) { $proformaProduct = new \Core\App\Entity\OrderItem(); $taxRate = $this->getTaxRate($taxRate); $pretFtva = $this->getPretftva($price, $taxRate, 0, $taxIncluded); $pretCtva = $this->getPretctva($price, $taxRate, 0, $taxIncluded); $proformaProduct->setFacturiProdNume($this->stripSpecialChars($product_name)); $proformaProduct->setFacturiProdMoneda($currency_code); $proformaProduct->setFacturiProdPretftva($pretFtva); $proformaProduct->setFacturiProdPretctva($pretCtva); $proformaProduct->setFacturiProdTva($this->getTaxName($taxRate)); $proformaProduct->setFacturiProdCant($quantity); $proformaProduct->setFacturiProdVal($pretFtva * $quantity); $proformaProduct->setFacturiProdValTva(($pretCtva - $pretFtva) * $quantity); $proformaProduct->setFacturiProdValTot($pretCtva * $quantity); $proformaProduct->setFacturiProdUm(self::UM); $proformaProduct->setProdCod($ean); $proformaProduct->setProdSku($sku); $proformaProduct->setProdUpc($upc); $proformaProduct->setProdCod1((trim($upc) != '') ? $upc : ($this->getPrefix() . $product_ids)); $proformaProduct->setProdCodCautare('all'); return $proformaProduct; } }