@@ -129,13 +129,13 @@ discard block |
||
129 | 129 | |
130 | 130 | private function addInvoiceTaxes() { |
131 | 131 | $Invoice = $this->invoiceDocument; |
132 | - $currencyID = $Invoice->getCurrencyType(); // Tipo de moneda |
|
133 | - $totalTaxableOperations = $Invoice->getTotalTaxableOperations(); // Total operaciones gravadas |
|
134 | - $totalTaxes = $Invoice->getTotalTaxes(); // Total operaciones gravadas |
|
135 | - $Igv = $Invoice->getIGV(); // Total IGV |
|
136 | - $totalExemptedOperations = $Invoice->getTotalExemptedOperations(); // Total operaciones exoneradas |
|
132 | + $currencyID = $Invoice->getCurrencyType(); // Tipo de moneda |
|
133 | + $totalTaxableOperations = $Invoice->getTotalTaxableOperations(); // Total operaciones gravadas |
|
134 | + $totalTaxes = $Invoice->getTotalTaxes(); // Total operaciones gravadas |
|
135 | + $Igv = $Invoice->getIGV(); // Total IGV |
|
136 | + $totalExemptedOperations = $Invoice->getTotalExemptedOperations(); // Total operaciones exoneradas |
|
137 | 137 | $totalUnaffectedOperations = $Invoice->getTotalUnaffectedOperations(); // Total operaciones inafectas |
138 | - $totalFreeOpertions = $Invoice->getTotalFreeOperations(); // Total operaciones gratuitas |
|
138 | + $totalFreeOpertions = $Invoice->getTotalFreeOperations(); // Total operaciones gratuitas |
|
139 | 139 | |
140 | 140 | // XML nodes |
141 | 141 | $TaxTotal = new TaxTotal(); |
@@ -146,7 +146,7 @@ discard block |
||
146 | 146 | } |
147 | 147 | // Total operaciones exoneradas |
148 | 148 | if ($totalExemptedOperations) { |
149 | - UblHelper::addTaxSubtotal($TaxTotal, $currencyID, 0, $totalExemptedOperations, Catalogo::CAT5_EXO); |
|
149 | + UblHelper::addTaxSubtotal($TaxTotal, $currencyID, 0, $totalExemptedOperations, Catalogo::CAT5_EXO); |
|
150 | 150 | } |
151 | 151 | // Total operaciones inafectas |
152 | 152 | if ($totalUnaffectedOperations) { |
@@ -154,7 +154,7 @@ discard block |
||
154 | 154 | } |
155 | 155 | // Total operaciones gratuitas solo aplica a FACTURA |
156 | 156 | if ($totalFreeOpertions && $Invoice->getInvoiceType() === Catalogo::CAT1_FACTURA) { |
157 | - UblHelper::addTaxSubtotal($TaxTotal, $currencyID, 0, $totalFreeOpertions, Catalogo::CAT5_GRA); |
|
157 | + UblHelper::addTaxSubtotal($TaxTotal, $currencyID, 0, $totalFreeOpertions, Catalogo::CAT5_GRA); |
|
158 | 158 | } |
159 | 159 | |
160 | 160 | // Total impuestos |
@@ -280,8 +280,8 @@ discard block |
||
280 | 280 | $Invoice = $this->invoiceDocument; |
281 | 281 | $Items = $this->getItems(); |
282 | 282 | $currencyID = $this->getDocumentCurrencyCode(); // Tipo de moneda |
283 | - $totalAllowances = $Invoice->getTotalAllowances(); // Total descuentos |
|
284 | - $payableAmount = $Invoice->getPayableAmount(); // Total a pagar |
|
283 | + $totalAllowances = $Invoice->getTotalAllowances(); // Total descuentos |
|
284 | + $payableAmount = $Invoice->getPayableAmount(); // Total a pagar |
|
285 | 285 | $billableAmount = $Invoice->getBillableValue(); |
286 | 286 | // LegalMonetaryTotal |
287 | 287 | $LegalMonetaryTotal = new LegalMonetaryTotal(); |
@@ -65,7 +65,7 @@ discard block |
||
65 | 65 | 'COL_ITEM_PAYABLE_AMOUNT [base_imponible+IGV]' |
66 | 66 | ]; |
67 | 67 | |
68 | - public function populate($items, $currencyCode) { |
|
68 | + public function populate($items, $currencyCode) { |
|
69 | 69 | foreach ($items as $idx => $item) { |
70 | 70 | $allowances = isset($item['allowances']) ? $item['allowances'] : []; |
71 | 71 | $charges = isset($item['charges']) ? $item['charges'] : []; |
@@ -74,42 +74,42 @@ discard block |
||
74 | 74 | $grossUnitValue = $item['unitValue']; |
75 | 75 | $igvIncluded = $item['igvIncluded']; |
76 | 76 | |
77 | - $unitValue = $this->calcUnitValue($igvAffectCode, $grossUnitValue, $igvIncluded); // Valor unitario |
|
77 | + $unitValue = $this->calcUnitValue($igvAffectCode, $grossUnitValue, $igvIncluded); // Valor unitario |
|
78 | 78 | $unitTaxedValue = $this->calcUnitTaxedValue($igvAffectCode, $grossUnitValue, $igvIncluded); // Valor unitario incluyendo impuestos si son aplicables |
79 | - $unitBillableValue = $this->calcUnitBillableValue($unitValue, $priceType); // Valor unitario facturable |
|
79 | + $unitBillableValue = $this->calcUnitBillableValue($unitValue, $priceType); // Valor unitario facturable |
|
80 | 80 | $quantity = $item['quantity']; // Cantidad |
81 | 81 | |
82 | - $itemValue = $unitValue * $quantity; // Valor de item |
|
82 | + $itemValue = $unitValue * $quantity; // Valor de item |
|
83 | 83 | $itemBillableValue = $unitBillableValue * $quantity; // Valor de item |
84 | 84 | $itemAllowancesAmount = Operations::getTotalAllowanceCharge($itemBillableValue, $allowances); // Descuentos de item |
85 | - $itemChargesAmount = Operations::getTotalAllowanceCharge($itemValue, $charges); // Cargos de item |
|
86 | - $itemTaxableAmount = $this->calcItemTaxableAmount($itemValue, $priceType, $allowances, $charges); // Valor de venta del ítem = (Valor del item - Descuentos + Cargos), 0 si el valor del item es referencial! |
|
85 | + $itemChargesAmount = Operations::getTotalAllowanceCharge($itemValue, $charges); // Cargos de item |
|
86 | + $itemTaxableAmount = $this->calcItemTaxableAmount($itemValue, $priceType, $allowances, $charges); // Valor de venta del ítem = (Valor del item - Descuentos + Cargos), 0 si el valor del item es referencial! |
|
87 | 87 | $igvAmount = $this->calcIgvAmount($igvAffectCode, $itemTaxableAmount); // Afectación al IGV por item |
88 | 88 | |
89 | 89 | $itemIgvTaxed = $itemBillableValue + $igvAmount; |
90 | 90 | |
91 | - $this->set(self::COL_PRODUCT_CODE, $idx, $item['productCode']); |
|
92 | - $this->set(self::COL_UNPSC, $idx, $item['sunatProductCode']); |
|
93 | - $this->set(self::COL_UNIT_CODE, $idx, $item['unitCode']); |
|
94 | - $this->set(self::COL_QUANTITY, $idx, $quantity); |
|
95 | - $this->set(self::COL_DESCRIPTION, $idx, $item['description']); |
|
96 | - $this->set(self::COL_CURRENCY_CODE, $idx, $currencyCode); |
|
91 | + $this->set(self::COL_PRODUCT_CODE, $idx, $item['productCode']); |
|
92 | + $this->set(self::COL_UNPSC, $idx, $item['sunatProductCode']); |
|
93 | + $this->set(self::COL_UNIT_CODE, $idx, $item['unitCode']); |
|
94 | + $this->set(self::COL_QUANTITY, $idx, $quantity); |
|
95 | + $this->set(self::COL_DESCRIPTION, $idx, $item['description']); |
|
96 | + $this->set(self::COL_CURRENCY_CODE, $idx, $currencyCode); |
|
97 | 97 | // Códigos de catálogos predefinidos |
98 | - $this->set(self::COL_PRICE_TYPE, $idx, $priceType); |
|
99 | - $this->set(self::COL_TAX_TYPE, $idx, $item['taxType']); |
|
100 | - $this->set(self::COL_IGV_AFFECTATION, $idx, $item['igvAffectationCode']); |
|
98 | + $this->set(self::COL_PRICE_TYPE, $idx, $priceType); |
|
99 | + $this->set(self::COL_TAX_TYPE, $idx, $item['taxType']); |
|
100 | + $this->set(self::COL_IGV_AFFECTATION, $idx, $item['igvAffectationCode']); |
|
101 | 101 | |
102 | - $this->set(self::COL_UNIT_VALUE, $idx, $unitValue); |
|
102 | + $this->set(self::COL_UNIT_VALUE, $idx, $unitValue); |
|
103 | 103 | $this->set(self::COL_UNIT_BILLABLE_VALUE, $idx, $unitBillableValue); |
104 | - $this->set(self::COL_UNIT_TAXED_VALUE, $idx, $unitTaxedValue); |
|
105 | - $this->set(self::COL_ITEM_VALUE, $idx, $itemValue); |
|
104 | + $this->set(self::COL_UNIT_TAXED_VALUE, $idx, $unitTaxedValue); |
|
105 | + $this->set(self::COL_ITEM_VALUE, $idx, $itemValue); |
|
106 | 106 | $this->set(self::COL_ITEM_BILLABLE_VALUE, $idx, $itemBillableValue); |
107 | - $this->set(self::COL_ALLOWANCES, $idx, $allowances); |
|
108 | - $this->set(self::COL_ALLOWANCES_AMOUNT, $idx, $itemAllowancesAmount); |
|
109 | - $this->set(self::COL_CHARGES, $idx, $charges); |
|
110 | - $this->set(self::COL_CHARGES_AMOUNT, $idx, $itemChargesAmount); |
|
107 | + $this->set(self::COL_ALLOWANCES, $idx, $allowances); |
|
108 | + $this->set(self::COL_ALLOWANCES_AMOUNT, $idx, $itemAllowancesAmount); |
|
109 | + $this->set(self::COL_CHARGES, $idx, $charges); |
|
110 | + $this->set(self::COL_CHARGES_AMOUNT, $idx, $itemChargesAmount); |
|
111 | 111 | $this->set(self::COL_ITEM_TAXABLE_AMOUNT, $idx, $itemTaxableAmount); |
112 | - $this->set(self::COL_IGV, $idx, $igvAmount); |
|
112 | + $this->set(self::COL_IGV, $idx, $igvAmount); |
|
113 | 113 | $this->set(self::COL_ITEM_PAYABLE_AMOUNT, $idx, $itemIgvTaxed); |
114 | 114 | } |
115 | 115 | } |
@@ -137,7 +137,7 @@ |
||
137 | 137 | |
138 | 138 | |
139 | 139 | private static function getVariablesGlobales(InvoiceDocument $Invoice) { |
140 | - $data=[]; |
|
140 | + $data = []; |
|
141 | 141 | $currencyType = $Invoice->getCurrencyType(); |
142 | 142 | $allowances = $Invoice->getAllowances(); |
143 | 143 | $charges = $Invoice->getCharges(); |