update for Moadian plugin
This commit is contained in:
parent
dd78e12a7a
commit
484c7a0a64
|
@ -555,6 +555,7 @@ class TaxSettingsController extends AbstractController
|
|||
$itemDiscountType = $row->getDiscountType() ?? 'fixed';
|
||||
$itemDiscountPercent = $row->getDiscountPercent() ?? 0;
|
||||
$itemTax = $row->getTax() ?? 0;
|
||||
$count = $row->getCommdityCount() ?? 0;
|
||||
|
||||
if ($itemDiscountType === 'percent' && $itemDiscountPercent > 0) {
|
||||
$originalPrice = $basePrice / (1 - ($itemDiscountPercent / 100));
|
||||
|
@ -562,8 +563,8 @@ class TaxSettingsController extends AbstractController
|
|||
} else {
|
||||
$originalPrice = $basePrice + $itemDiscount;
|
||||
}
|
||||
|
||||
$unitPrice = $row->getCommdityCount() > 0 ? $originalPrice / $row->getCommdityCount() : 0;
|
||||
$unitPrice = $count > 0 ? $originalPrice / $count : 0;
|
||||
$es = $count > 0 ? ($unitPrice * $count) : $originalPrice;
|
||||
|
||||
$netPrice = $basePrice;
|
||||
$totalInvoice += $netPrice;
|
||||
|
@ -574,8 +575,9 @@ class TaxSettingsController extends AbstractController
|
|||
'name' => $row->getCommodity()->getName(),
|
||||
'code' => $row->getCommodity()->getCode()
|
||||
],
|
||||
'count' => $row->getCommdityCount(),
|
||||
'count' => $count,
|
||||
'price' => $unitPrice,
|
||||
'prdis' => $es,
|
||||
'discountPercent' => $itemDiscountPercent,
|
||||
'discountAmount' => $itemDiscount,
|
||||
'total' => $netPrice,
|
||||
|
@ -1229,7 +1231,7 @@ class TaxSettingsController extends AbstractController
|
|||
->setScc(null)
|
||||
->setCrn(null)
|
||||
->setBillid(null)
|
||||
->setTprdis($data['totalInvoice'])
|
||||
->setTprdis(array_sum(array_column($data['items'], 'prdis')))
|
||||
->setTdis($data['totalDiscount'])
|
||||
->setTadis($data['totalInvoice'] - $data['totalDiscount'])
|
||||
->setTvam($totalTax)
|
||||
|
@ -1244,10 +1246,20 @@ class TaxSettingsController extends AbstractController
|
|||
|
||||
foreach ($data['items'] as $item) {
|
||||
$itemTax = $item['tax'];
|
||||
$itemTotal = $item['total'] + $itemTax;
|
||||
|
||||
$vra = $this->calculateVra($item['total'], $itemTax, $invoice);
|
||||
|
||||
$prdis = $item['count'] * $item['price'];
|
||||
|
||||
$adis = $prdis - $item['discountAmount'];
|
||||
|
||||
$ks = ($adis * $vra) / 100;
|
||||
|
||||
$ks2 = 0;
|
||||
$ks3 = 0;
|
||||
|
||||
$os = $adis + $ks + $ks2 + $ks3;
|
||||
|
||||
$bodyDto = (new \SnappMarketPro\Moadian\Dto\InvoiceBodyDto())
|
||||
->setSstid($this->getCommodityTaxCodeFromInvoice($invoice, $item['name']['id']))
|
||||
->setSstt($item['name']['name'])
|
||||
|
@ -1257,11 +1269,11 @@ class TaxSettingsController extends AbstractController
|
|||
->setCfee(null)
|
||||
->setCut(null)
|
||||
->setExr(null)
|
||||
->setPrdis($item['total'])
|
||||
->setPrdis($prdis)
|
||||
->setDis($item['discountAmount'])
|
||||
->setAdis($item['total'] - $item['discountAmount'])
|
||||
->setAdis($adis)
|
||||
->setVra($vra)
|
||||
->setVam($itemTax)
|
||||
->setVam($ks)
|
||||
->setOdt(null)
|
||||
->setOdr(null)
|
||||
->setOdam(null)
|
||||
|
@ -1275,7 +1287,7 @@ class TaxSettingsController extends AbstractController
|
|||
->setCop(null)
|
||||
->setVop(null)
|
||||
->setBsrn(null)
|
||||
->setTsstam($itemTotal);
|
||||
->setTsstam($os);
|
||||
|
||||
$bodyItems[] = $bodyDto;
|
||||
}
|
||||
|
@ -1611,7 +1623,6 @@ class TaxSettingsController extends AbstractController
|
|||
$buyerEconomicCode = null;
|
||||
$missingFields = [];
|
||||
|
||||
// دریافت شخص خریدار از ردیفهای فاکتور
|
||||
foreach ($invoice->getHesabdariRows() as $row) {
|
||||
if ($row->getPerson()) {
|
||||
$buyerPerson = $row->getPerson();
|
||||
|
|
Loading…
Reference in a new issue