Issue #1979 fixexd

This commit is contained in:
Jitendra Singh 2020-01-09 17:03:58 +05:30
parent c7449aed48
commit 14869df230
4 changed files with 45 additions and 0 deletions

View File

@ -219,6 +219,8 @@ return [
//Laravel Maatwebsite
Maatwebsite\Excel\ExcelServiceProvider::class,
Barryvdh\Debugbar\ServiceProvider::class,
//Repository
Prettus\Repository\Providers\RepositoryServiceProvider::class,
Konekt\Concord\ConcordServiceProvider::class,

View File

@ -859,6 +859,8 @@ class Cart {
'shipping_description' => $data['selected_shipping_rate']['method_description'],
'shipping_amount' => $data['selected_shipping_rate']['price'],
'base_shipping_amount' => $data['selected_shipping_rate']['base_price'],
'shipping_discount_amount' => $data['selected_shipping_rate']['discount_amount'],
'base_shipping_discount_amount' => $data['selected_shipping_rate']['base_discount_amount'],
'shipping_address' => array_except($data['shipping_address'], ['id', 'cart_id']),
]);
}

View File

@ -0,0 +1,33 @@
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class AddShippingDiscountColumnsInOrdersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('orders', function (Blueprint $table) {
$table->decimal('shipping_discount_amount', 12, 4)->default(0)->nullable();
$table->decimal('base_shipping_discount_amount', 12, 4)->default(0)->nullable();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('orders', function (Blueprint $table) {
//
});
}
}

View File

@ -230,10 +230,18 @@ class InvoiceRepository extends Repository
$invoice->shipping_amount = $invoice->order->shipping_amount;
$invoice->base_shipping_amount = $invoice->order->base_shipping_amount;
$invoice->discount_amount += $invoice->order->shipping_discount_amount;
$invoice->base_discount_amount += $invoice->order->base_shipping_discount_amount;
if ($invoice->order->shipping_amount) {
foreach ($invoice->order->invoices as $prevInvoice) {
if ((float) $prevInvoice->shipping_amount)
$invoice->shipping_amount = $invoice->base_shipping_amount = 0;
if ($prevInvoice->id != $invoice->id) {
$invoice->discount_amount -= $invoice->order->shipping_discount_amount;
$invoice->base_discount_amount -= $invoice->order->base_shipping_discount_amount;
}
}
}