From e9a058818521e560f875e17dd7c5b4cb3a7c09b9 Mon Sep 17 00:00:00 2001 From: Prashant Singh Date: Thu, 13 Jun 2019 22:19:44 +0530 Subject: [PATCH] discount rule fixes --- packages/Webkul/Checkout/src/Cart.php | 1 + .../Webkul/Discount/src/Helpers/Discount.php | 18 +- .../Http/Controllers/OnepageController.php | 6 +- .../views/checkout/onepage.blade.php | 207 ++++-------------- .../views/checkout/total/summary.blade.php | 19 +- 5 files changed, 69 insertions(+), 182 deletions(-) diff --git a/packages/Webkul/Checkout/src/Cart.php b/packages/Webkul/Checkout/src/Cart.php index 694f3fc62..4aa580c83 100755 --- a/packages/Webkul/Checkout/src/Cart.php +++ b/packages/Webkul/Checkout/src/Cart.php @@ -814,6 +814,7 @@ class Cart { return false; $this->calculateItemsTax(); + $this->applyNonCoupon(); $cart->grand_total = $cart->base_grand_total = 0; $cart->sub_total = $cart->base_sub_total = 0; diff --git a/packages/Webkul/Discount/src/Helpers/Discount.php b/packages/Webkul/Discount/src/Helpers/Discount.php index cae8eb6ba..b526dc459 100644 --- a/packages/Webkul/Discount/src/Helpers/Discount.php +++ b/packages/Webkul/Discount/src/Helpers/Discount.php @@ -150,7 +150,7 @@ class Discount $rule; foreach ($couponAbleRules as $couponAbleRule) { - if ($couponAbleRule->coupons->code == $code) { + if ($couponAbleRule->coupons->code === $code) { $rule = $couponAbleRule; } } @@ -320,7 +320,9 @@ class Discount } $report['item_id'] = $leastWorthItem['id']; + $report['item_price'] = $leastWorthItem['total']; $report['discount'] = $amountDiscounted; + $report['action'] = $action_type; $report['formatted_discount'] = core()->formatPrice($amountDiscounted, $cart->cart_currency_code); $report['new_grand_total'] = $cart->grand_total - $amountDiscounted; $report['formatted_new_grand_total'] = core()->formatPrice($cart->grand_total - $amountDiscounted, $cart->cart_currency_code); @@ -378,15 +380,15 @@ class Discount } protected function testIfAllConditionAreTrue($conditions, $cart) { - $shipping_address = $cart->getShippingAddressAttribute(); + $shipping_address = $cart->getShippingAddressAttribute() ?? ''; - $shipping_method = $cart->shipping_method; - $shipping_country = $shipping_address->country; - $shipping_state = $shipping_address->state; - $shipping_postcode = $shipping_address->postcode; - $shipping_city = $shipping_address->city; + $shipping_method = $cart->shipping_method ?? ''; + $shipping_country = $shipping_address->country ?? ''; + $shipping_state = $shipping_address->state ?? ''; + $shipping_postcode = $shipping_address->postcode ?? ''; + $shipping_city = $shipping_address->city ?? ''; - $payment_method = $cart->payment->method; + $payment_method = $cart->payment->method ?? ''; $sub_total = $cart->base_sub_total; $total_items = $cart->items_qty; diff --git a/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php b/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php index de749c49f..9f8d7c5f2 100755 --- a/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/OnepageController.php @@ -90,7 +90,7 @@ class OnepageController extends Controller if (Cart::hasError() || !Cart::saveCustomerAddress($data) || ! $rates = Shipping::collectRates()) return response()->json(['redirect_url' => route('shop.checkout.cart.index')], 403); - $rule = Cart::applyNonCoupon(); + // $rule = Cart::applyNonCoupon(); Cart::collectTotals(); @@ -109,7 +109,7 @@ class OnepageController extends Controller if (Cart::hasError() || !$shippingMethod || !Cart::saveShippingMethod($shippingMethod)) return response()->json(['redirect_url' => route('shop.checkout.cart.index')], 403); - $rule = Cart::applyNonCoupon(); + // $rule = Cart::applyNonCoupon(); Cart::collectTotals(); @@ -130,7 +130,7 @@ class OnepageController extends Controller $cart = Cart::getCart(); - $rule = Cart::applyNonCoupon(); + Cart::collectTotals(); return response()->json([ 'jump_to_section' => 'review', diff --git a/packages/Webkul/Shop/src/Resources/views/checkout/onepage.blade.php b/packages/Webkul/Shop/src/Resources/views/checkout/onepage.blade.php index 435920b9a..c96e18ec0 100755 --- a/packages/Webkul/Shop/src/Resources/views/checkout/onepage.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/checkout/onepage.blade.php @@ -9,66 +9,6 @@ @endsection @push('scripts') - - @endpush \ No newline at end of file diff --git a/packages/Webkul/Shop/src/Resources/views/checkout/total/summary.blade.php b/packages/Webkul/Shop/src/Resources/views/checkout/total/summary.blade.php index 2e3b9beef..bb7fcb3e7 100755 --- a/packages/Webkul/Shop/src/Resources/views/checkout/total/summary.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/checkout/total/summary.blade.php @@ -24,10 +24,27 @@ @endif + @if ($cart->discount_amount) +
+ + +
+ @endif +
- +
+
+
+
+ +
+ + +
+
+
\ No newline at end of file