1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- /**
- * 2007-2021 PrestaShop
- *
- * NOTICE OF LICENSE
- *
- * This source file is subject to the Academic Free License (AFL 3.0)
- * that is bundled with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://opensource.org/licenses/afl-3.0.php
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@prestashop.com so we can send you a copy immediately.
- *
- * DISCLAIMER
- *
- * Do not edit or add to this file if you wish to upgrade PrestaShop to newer
- * versions in the future. If you wish to customize PrestaShop for your
- * needs please refer to http://www.prestashop.com for more information.
- *
- * @author PrestaShop SA <contact@prestashop.com>
- * @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 InvoiceItemFactory extends OrderItemFactory
- {
- public function createInvoiceProduct(
- $product_ids,
- $product_name,
- $ean,
- $sku,
- $upc,
- $currency_code,
- $price,
- $taxRate,
- $quantity,
- $taxIncluded = false
- ) {
- $invoiceProduct = new \Core\App\Entity\OrderItem();
- $taxRate = $this->getTaxRate($taxRate) ;
- $pretFtva = $this->getPretftva($price, $taxRate, 0, $taxIncluded);
- $pretCtva = $this->getPretctva($price, $taxRate, 0, $taxIncluded);
- $invoiceProduct->setFacturiProdNume($this->stripSpecialChars($product_name));
- $invoiceProduct->setFacturiProdMoneda($currency_code);
- $invoiceProduct->setFacturiProdPretftva($pretFtva);
- $invoiceProduct->setFacturiProdPretctva($pretCtva);
- $invoiceProduct->setFacturiProdTva($this->getTaxName($taxRate));
- $invoiceProduct->setFacturiProdCant($quantity);
- $invoiceProduct->setFacturiProdVal($pretFtva * $quantity);
- $invoiceProduct->setFacturiProdValTva(($pretCtva - $pretFtva) * $quantity);
- $invoiceProduct->setFacturiProdValTot($pretCtva * $quantity);
- $invoiceProduct->setFacturiProdUm(self::UM);
- $invoiceProduct->setProdCod($ean);
- $invoiceProduct->setProdSku($sku);
- $invoiceProduct->setProdUpc($upc);
- $invoiceProduct->setProdCod1((trim($upc) != '') ? $upc : ($this->getPrefix() . $product_ids));
- $invoiceProduct->setProdCodCautare('all');
-
- return $invoiceProduct;
- }
- }
|