From e59f5a775b4ce14496ad149720ed4c8e276cffde Mon Sep 17 00:00:00 2001 From: prashant-webkul Date: Tue, 30 Oct 2018 10:01:01 +0530 Subject: [PATCH] Order Grid, Wishlist Bug Fixes --- .../Admin/src/DataGrids/OrderDataGrid.php | 6 ++ packages/Webkul/Checkout/src/Cart.php | 52 ++++++++++-- .../src/Http/Controllers/CartController.php | 12 +++ packages/Webkul/Shop/src/Http/routes.php | 3 + .../Shop/src/Resources/assets/sass/app.scss | 81 +++++++++++-------- .../Webkul/Shop/src/Resources/lang/en/app.php | 4 + .../views/checkout/cart/index.blade.php | 11 ++- .../Resources/views/layouts/master.blade.php | 3 +- 8 files changed, 127 insertions(+), 45 deletions(-) diff --git a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php index 1ac188592..862e73a87 100644 --- a/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php +++ b/packages/Webkul/Admin/src/DataGrids/OrderDataGrid.php @@ -90,6 +90,12 @@ class OrderDataGrid 'wrapper' => function ($value) { return core()->currency($value); } + ], [ + 'name' => 'or.created_at', + 'alias' => 'created_at', + 'type' => 'string', + 'label' => 'Order Date', + 'sortable' => false, ], [ 'name' => 'or.status', 'alias' => 'orstatus', diff --git a/packages/Webkul/Checkout/src/Cart.php b/packages/Webkul/Checkout/src/Cart.php index f9bb47978..3a969547d 100644 --- a/packages/Webkul/Checkout/src/Cart.php +++ b/packages/Webkul/Checkout/src/Cart.php @@ -10,6 +10,7 @@ use Webkul\Customer\Repositories\CustomerRepository; use Webkul\Product\Repositories\ProductRepository; use Webkul\Tax\Repositories\TaxCategoryRepository; use Webkul\Checkout\Models\CartPayment; +use Webkul\Customer\Repositories\WishlistRepository; /** * Facade for all the methods to be implemented in Cart. @@ -62,6 +63,13 @@ class Cart { */ protected $taxCategory; + /** + * WishlistRepository model + * + * @var mixed + */ + protected $wishlist; + /** * Create a new controller instance. * @@ -79,7 +87,8 @@ class Cart { CartAddressRepository $cartAddress, CustomerRepository $customer, ProductRepository $product, - TaxCategoryRepository $taxCategory + TaxCategoryRepository $taxCategory, + WishlistRepository $wishlist ) { $this->customer = $customer; @@ -93,6 +102,8 @@ class Cart { $this->product = $product; $this->taxCategory = $taxCategory; + + $this->wishlist = $wishlist; } /** @@ -700,6 +711,7 @@ class Cart { $labels = []; + $attribute = $product->parent->super_attributes; foreach($product->parent->super_attributes as $attribute) { $option = $attribute->options()->where('id', $product->{$attribute->code})->first(); @@ -1178,11 +1190,17 @@ class Cart { unset($productAddtionalData['html']); - $additional = [ - 'request' => $childData, - 'variant_id' => $productId, - 'attributes' => $productAddtionalData - ]; + // $additional = [ + // 'request' => $childData, + // 'variant_id' => $productId, + // 'attributes' => $productAddtionalData + // ]; + $additional['_token'] = null; + $additional['product'] = $product->id; + $additional['quantity'] = 1; + $additional['is_configurable'] = true; + $additional['selected_configurable_option'] = $child->id; + $additional['super_attributes'] = $productAddtionalData; $parentData = [ 'sku' => $product->sku, @@ -1199,10 +1217,30 @@ class Cart { 'base_total_weight' => $weight, 'additional' => $additional ]; - + // dd(['parent' => $parentData, 'child' => $childData]); return ['parent' => $parentData, 'child' => $childData]; } + /** + * Function to move a already added product to wishlist + * will run only on customer authentication. + * + * @param instance cartItem $id + */ + public function moveToWishlist($itemId) { + $item = $this->findOneByField($itemId); + + if(!$item) + return false; + + if($item->parent_id == 'null' ||$item->parent_id == null) { + $variantSku = $item->child->sku; + $variantName = $item->child->name; + } else { + + } + } + /** * Handle the buy now process for simple as well as configurable products * diff --git a/packages/Webkul/Shop/src/Http/Controllers/CartController.php b/packages/Webkul/Shop/src/Http/Controllers/CartController.php index 5bd465823..682cf0026 100644 --- a/packages/Webkul/Shop/src/Http/Controllers/CartController.php +++ b/packages/Webkul/Shop/src/Http/Controllers/CartController.php @@ -150,4 +150,16 @@ class CartController extends Controller return redirect()->back(); } } + + /** + * Function to move a already added product to wishlist + * will run only on customer authentication. + * + * @param instance cartItem $id + */ + public function moveToWishlist($id) { + $result = Cart::moveToWishlist($id); + + dd($result); + } } \ No newline at end of file diff --git a/packages/Webkul/Shop/src/Http/routes.php b/packages/Webkul/Shop/src/Http/routes.php index c0eaf2540..164530f1e 100644 --- a/packages/Webkul/Shop/src/Http/routes.php +++ b/packages/Webkul/Shop/src/Http/routes.php @@ -67,6 +67,9 @@ Route::group(['middleware' => ['web', 'theme', 'locale', 'currency']], function //Shop buynow button action Route::get('buynow/{id}', 'Webkul\Shop\Http\Controllers\CartController@test')->name('shop.product.buynow'); + //Shop buynow button action + Route::get('move/cart/{id}', 'Webkul\Shop\Http\Controllers\CartController@moveToWishlist')->name('shop.movetowishlist'); + //Show Product Details Page(For individually Viewable Product) Route::get('/products/{slug}', 'Webkul\Shop\Http\Controllers\ProductController@index')->defaults('_config', [ 'view' => 'shop::products.view' diff --git a/packages/Webkul/Shop/src/Resources/assets/sass/app.scss b/packages/Webkul/Shop/src/Resources/assets/sass/app.scss index 59e2aab07..593048e70 100644 --- a/packages/Webkul/Shop/src/Resources/assets/sass/app.scss +++ b/packages/Webkul/Shop/src/Resources/assets/sass/app.scss @@ -429,6 +429,48 @@ input { } } + @media only screen and (max-width: 580px) { + .main-container-wrapper { + padding: 0px; + } + } + //product components + @media only screen and (max-width: 551px) { + .product-grid-3 { + grid-template-columns: 48.5% 48.5%; + grid-column-gap: 20px; + } + } + + @media only screen and (max-width: 854px) { + .product-grid-4 { + grid-template-columns: 29.5% 29.5% 29.5%; + grid-column-gap: 35px; + } + } + + @media only screen and (max-width: 653px) { + .product-grid-4 { + grid-template-columns: 48.5% 48.5%; + grid-column-gap: 17px; + } + } + + @media only screen and (max-width: 425px) { + .product-card { + font-size: 90%; + + .btn.btn-md { + padding: 5px; + } + } + + .product-grid-4 { + grid-template-columns: 48.5% 48.5%; + grid-column-gap: 10px; + } + } + .product-list { min-height: 200px; @@ -532,40 +574,11 @@ input { } } } -//product components -@media only screen and (max-width: 551px) { - .product-grid-3 { - grid-template-columns: 48.5% 48.5%; - grid-column-gap: 20px; - } -} -@media only screen and (max-width: 854px) { - .product-grid-4 { - grid-template-columns: 29.5% 29.5% 29.5%; - grid-column-gap: 35px; - } -} - -@media only screen and (max-width: 653px) { - .product-grid-4 { - grid-template-columns: 48.5% 48.5%; - grid-column-gap: 17px; - } -} - -@media only screen and (max-width: 425px) { - .product-card { - font-size: 90%; - - .btn.btn-md { - padding: 5px; - } - } - - .product-grid-4 { - grid-template-columns: 48.5% 48.5%; - grid-column-gap: 10px; +@media only screen and (max-width: 530px) { + .main-container-wrapper { + padding-left: 0px; + padding-right: 0px; } } @@ -2649,7 +2662,7 @@ section.review { border: 1px solid $border-color; flex-direction: column; - max-width: 530px; + max-width: 500px; min-width: 380px; padding: 25px; diff --git a/packages/Webkul/Shop/src/Resources/lang/en/app.php b/packages/Webkul/Shop/src/Resources/lang/en/app.php index cf7838409..a1141aedf 100644 --- a/packages/Webkul/Shop/src/Resources/lang/en/app.php +++ b/packages/Webkul/Shop/src/Resources/lang/en/app.php @@ -380,4 +380,8 @@ return [ 'thanks' => 'Thanks!' ] ], + + 'webkul' => [ + 'copy-right' => '© Copyright 2018 Webkul Software, All rights reserved.' + ] ]; \ No newline at end of file diff --git a/packages/Webkul/Shop/src/Resources/views/checkout/cart/index.blade.php b/packages/Webkul/Shop/src/Resources/views/checkout/cart/index.blade.php index 000577c97..f1adab0a1 100644 --- a/packages/Webkul/Shop/src/Resources/views/checkout/cart/index.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/checkout/cart/index.blade.php @@ -67,9 +67,16 @@ @{{ errors.first('qty') }} - {{ __('shop::app.checkout.cart.remove-link') }} + + {{ __('shop::app.checkout.cart.remove-link') }} - {{ __('shop::app.checkout.cart.move-to-wishlist') }} + + @if($item->parent_id != 'null' ||$item->parent_id != null) + {{ __('shop::app.checkout.cart.move-to-wishlist') }} + @else + {{ __('shop::app.checkout.cart.move-to-wishlist') }} + @endif + @if (!cart()->isItemHaveQuantity($item)) diff --git a/packages/Webkul/Shop/src/Resources/views/layouts/master.blade.php b/packages/Webkul/Shop/src/Resources/views/layouts/master.blade.php index a9e591313..5a922f71c 100644 --- a/packages/Webkul/Shop/src/Resources/views/layouts/master.blade.php +++ b/packages/Webkul/Shop/src/Resources/views/layouts/master.blade.php @@ -48,10 +48,9 @@ @include('shop::layouts.footer.footer') -