From ec1e2d9a7171497cae9b7090cb931ed5d6c225d9 Mon Sep 17 00:00:00 2001 From: Nafies Luthfi Date: Tue, 2 May 2017 22:42:41 +0700 Subject: [PATCH] Added product unit name to cart --- app/Cart/Item.php | 2 ++ app/Http/Controllers/CartController.php | 2 +- app/Http/Controllers/ProductsController.php | 12 +++++----- resources/lang/id/product.php | 1 + .../views/cart/partials/draft-item-list.blade.php | 26 +++++++++++++++------- .../partials/product-search-result-box.blade.php | 12 +++++----- resources/views/products/index.blade.php | 2 ++ 7 files changed, 38 insertions(+), 19 deletions(-) diff --git a/app/Cart/Item.php b/app/Cart/Item.php index 05dbf9c..8777383 100644 --- a/app/Cart/Item.php +++ b/app/Cart/Item.php @@ -12,6 +12,7 @@ class Item public $id; public $product; public $name; + public $unit; public $price; public $qty; public $item_discount = 0; @@ -22,6 +23,7 @@ class Item { $this->id = $product->id; $this->name = $product->name; + $this->unit = $product->unit_id ? $product->unit->name : null; $this->product = $product; $this->qty = $qty; $this->price = $product->getPrice(); diff --git a/app/Http/Controllers/CartController.php b/app/Http/Controllers/CartController.php index ec08859..11d3062 100644 --- a/app/Http/Controllers/CartController.php +++ b/app/Http/Controllers/CartController.php @@ -40,7 +40,7 @@ class CartController extends Controller if ($query) { $queriedProducts = Product::where(function ($q) use ($query) { $q->where('name', 'like', '%'.$query.'%'); - })->get(); + })->with('unit')->get(); } return view('cart.index', compact('draft', 'queriedProducts')); diff --git a/app/Http/Controllers/ProductsController.php b/app/Http/Controllers/ProductsController.php index fbd2104..bbfd276 100644 --- a/app/Http/Controllers/ProductsController.php +++ b/app/Http/Controllers/ProductsController.php @@ -12,11 +12,13 @@ class ProductsController extends Controller $editableProduct = null; $q = $request->get('q'); $products = Product::where(function($query) use ($q) { - if ($q) { - $query->where('name', 'like', '%' . $q . '%'); - } - }) - ->orderBy('name')->paginate(25); + if ($q) { + $query->where('name', 'like', '%' . $q . '%'); + } + }) + ->orderBy('name') + ->with('unit') + ->paginate(25); if (in_array($request->get('action'), ['edit','delete']) && $request->has('id')) $editableProduct = Product::find($request->get('id')); diff --git a/resources/lang/id/product.php b/resources/lang/id/product.php index 9fd4eca..ef3767c 100644 --- a/resources/lang/id/product.php +++ b/resources/lang/id/product.php @@ -8,6 +8,7 @@ return [ 'not_found' => 'Produk tidak ditemukan', 'empty' => 'Belum ada Produk', 'price' => 'Harga', + 'unit' => 'Satuan', 'back_to_index' => 'Kembali ke daftar Produk', // Actions diff --git a/resources/views/cart/partials/draft-item-list.blade.php b/resources/views/cart/partials/draft-item-list.blade.php index 7da8017..80f95dd 100644 --- a/resources/views/cart/partials/draft-item-list.blade.php +++ b/resources/views/cart/partials/draft-item-list.blade.php @@ -5,15 +5,15 @@
-
+
- - + + @@ -22,15 +22,25 @@ @forelse($draft->items() as $key => $item) - + {{ Form::open(['route' => ['cart.update-draft-item', $draft->draftKey], 'method' => 'patch']) }} {{ Form::hidden('item_key', $key) }} - - {{ Form::submit('update-item-' . $key, ['style'=>'display:none']) }} diff --git a/resources/views/cart/partials/product-search-result-box.blade.php b/resources/views/cart/partials/product-search-result-box.blade.php index 1926613..e0754b0 100644 --- a/resources/views/cart/partials/product-search-result-box.blade.php +++ b/resources/views/cart/partials/product-search-result-box.blade.php @@ -1,21 +1,23 @@ -
+
# Nama Item Harga SatuanDiskon per ItemQtyDiskon per ItemQty Subtotal Action
{{ $key + 1 }}{{ $item->name }} + {{ $item->name }}
+ ({{ $item->unit }}) +
{{ formatRp($item->price) }} - {{ Form::text('item_discount', $item->item_discount, ['id' => 'item_discount-' . $key, 'style' => 'width:80px;text-align:right']) }} + + {{ Form::text('item_discount', $item->item_discount, [ + 'id' => 'item_discount-' . $key, + 'style' => 'width:80px;text-align:right'] + ) }} - {{ Form::number('qty', $item->qty, ['id' => 'qty-' . $key, 'style' => 'width:50px;text-align:center']) }} + + {{ Form::number('qty', $item->qty, [ + 'id' => 'qty-' . $key, + 'style' => 'width:50px;text-align:center', + 'min' => 1 + ]) }} {{ formatRp($item->subtotal) }}
- - - + + + + @forelse($queriedProducts as $product) + diff --git a/resources/views/products/index.blade.php b/resources/views/products/index.blade.php index 11f3f47..88d1754 100644 --- a/resources/views/products/index.blade.php +++ b/resources/views/products/index.blade.php @@ -20,6 +20,7 @@ + @@ -31,6 +32,7 @@ +
ProdukHarga Satuan ({{ $draft->type }})Action{{ trans('product.name') }}{{ trans('product.unit') }}{{ trans('product.price') }} ({{ $draft->type }}){{ trans('app.action') }}
{{ $product->name }}{{ $product->unit->name }} {{ formatRp($draft->type == 'cash' ? $product->cash_price : $product->credit_price) }}
{{ csrf_field() }} - +
{{ trans('app.table_no') }} {{ trans('product.name') }}{{ trans('product.unit') }} {{ trans('product.cash_price') }} {{ trans('product.credit_price') }} {{ trans('app.action') }}
{{ $products->firstItem() + $key }} {{ $product->name }}{{ $product->unit->name }} {{ formatRp($product->cash_price) }} {{ formatRp($product->credit_price) }}