From 3f85701ca9ad2a3ab38c842bc7648722cd020f95 Mon Sep 17 00:00:00 2001 From: merdan Date: Thu, 24 Feb 2022 18:55:23 +0500 Subject: [PATCH] get shipping methods --- .../Sarga/API/Http/Controllers/Checkout.php | 16 +++++++++ packages/Sarga/API/Http/routes.php | 33 ++++++++----------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/packages/Sarga/API/Http/Controllers/Checkout.php b/packages/Sarga/API/Http/Controllers/Checkout.php index f579ad995..b326b2faa 100644 --- a/packages/Sarga/API/Http/Controllers/Checkout.php +++ b/packages/Sarga/API/Http/Controllers/Checkout.php @@ -14,6 +14,22 @@ use Webkul\Shipping\Facades\Shipping; class Checkout extends CheckoutController { + public function shipments(){ + $rates = []; + + foreach (Shipping::getGroupedAllShippingRates() as $code => $shippingMethod) { + $rates[] = [ + 'carrier_title' => $shippingMethod['carrier_title'], + 'rates' => CartShippingRateResource::collection(collect($shippingMethod['rates'])), + ]; + } + + return response([ + 'rates' => $rates, + 'pickup_addresses' => core()->getCurrentChannel()->inventory_sources()->all() + ]); + } + /** * Save customer address. * diff --git a/packages/Sarga/API/Http/routes.php b/packages/Sarga/API/Http/routes.php index b7caea873..41c487fbb 100644 --- a/packages/Sarga/API/Http/routes.php +++ b/packages/Sarga/API/Http/routes.php @@ -84,34 +84,29 @@ Route::group(['prefix' => 'api'], function () { * Customer cart routes. */ Route::get('cart', [Carts::class, 'get']); - Route::post('cart/add/{productId}', [Carts::class, 'add']); - Route::put('cart/update', [Carts::class, 'update']); - Route::delete('cart/remove/{cartItemId}', [Carts::class, 'removeItem']); - Route::delete('cart/empty', [Carts::class, 'empty']); - Route::post('cart/move-to-wishlist/{cartItemId}', [Carts::class, 'moveToWishlist']); - Route::post('cart/coupon', [Carts::class, 'applyCoupon']); - Route::delete('cart/coupon', [Carts::class, 'removeCoupon']); - /** - * Customer checkout routes. - */ - Route::post('checkout/save-address', [Checkout::class, 'saveAddress']); - - Route::post('checkout/save-shipping', [Checkout::class, 'saveShipping']); - - Route::post('checkout/save-payment', [Checkout::class, 'savePayment']); - - Route::post('checkout/check-minimum-order', [Checkout::class, 'checkMinimumOrder']); - - Route::post('checkout/save-order', [Checkout::class, 'saveOrder']); }); }); + Route::group(['prefix' =>'checkout'], function (){ + Route::get('shipments', [Checkout::class, 'shipments']); + + Route::group(['middleware' => ['auth:sanctum', 'sanctum.customer']], function () { + /** + * Customer checkout routes. + */ + Route::post('save-address', [Checkout::class, 'saveAddress']); + Route::post('save-shipping', [Checkout::class, 'saveShipping']); + Route::post('save-payment', [Checkout::class, 'savePayment']); + Route::post('check-minimum-order', [Checkout::class, 'checkMinimumOrder']); + Route::post('save-order', [Checkout::class, 'saveOrder']); + }); + }); });