diff --git a/app/Http/Controllers/Kasir/Menu.php b/app/Http/Controllers/Kasir/Menu.php index eb105ab..8842dc2 100644 --- a/app/Http/Controllers/Kasir/Menu.php +++ b/app/Http/Controllers/Kasir/Menu.php @@ -3,20 +3,37 @@ namespace App\Http\Controllers\Kasir; use App\Http\Controllers\Controller; +use App\Models\KategoriProduk; +use App\Models\KelompokKategori; +use App\Models\KelompokKategoriPivot; use App\Models\Pesanan; use App\Models\Produk; +use Carbon\Carbon; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Redirect; +use Illuminate\Support\Facades\Session; +use Illuminate\Support\Facades\Validator; class Menu extends Controller { public function index() { - return view('pages.Menu.index'); + // return $data = KelompokKategoriPivot::with(['kelompokKategori', 'produk'])->first(); + $kategori_produks = KategoriProduk::get(); + + return view('pages.Menu.index', compact('kategori_produks')); + } + + public function kelompokKategori($id) { + $kelompok_kategoris = KelompokKategori::where('kategori_produk_id', $id)->get(); + + return $kelompok_kategoris; } public function getDataMenu() { - $data = Produk::with(['kategori_produk'])->get(); + // $data = Produk::with(['kategori_produk'])->get(); + $data = KelompokKategoriPivot::with(['kelompokKategori', 'produk'])->get(); $nomor = 1; return $datatables = datatables() @@ -24,15 +41,117 @@ class Menu extends Controller ->addColumn('nomor', function ($data) use (&$nomor) { return $nomor++; }) + ->addColumn('kode_produk', function ($data) { + return $data->produk->kode_produk; + }) + ->addColumn('nama_produk', function ($data) { + return $data->produk->nama_produk; + }) + ->addColumn('harga_produk', function ($data) { + return $data->produk->harga_produk; + }) + ->addColumn('nama_kelompok_kategori', function ($data) { + return $data->kelompokKategori->nama_kelompok_kategori; + }) ->addColumn('kategori_produk', function ($data) { - return $data->kategori_produk->nama_kategori_produk; + return $data->produk->kategori_produk->nama_kategori_produk; }) ->addColumn('ubah', function ($data) { return '
- + + Edit +
'; }) - ->rawColumns(['nomor', 'kode_produk', 'ubah']) + ->rawColumns(['nomor', 'ubah']) ->make(true); } + + // Tambah Menu + public function store(Request $request) { + // validation + $rules = array( + 'kategori_produk' => 'required', + 'kelompok_produk' => 'required', + 'kode_produk' => 'required', + 'nama_produk' => 'required', + 'harga_produk' => 'required', + 'tersedia' => 'required', + 'deskripsi_produk' => 'required', + ); + $validator = Validator::make($request->all(), $rules); + + // check validation + if ($validator->fails()) { + // If validation fails, return with errors + return response()->json(['errors' => $validator->errors()], 422); + } else { + // create product + $produk = Produk::create([ + 'kategori_produk_id' => $request->kategori_produk, + 'kode_produk' => $request->kode_produk, + 'nama_produk' => $request->nama_produk, + 'harga_produk' => $request->harga_produk, + 'tersedia' => $request->tersedia, + 'deskripsi_produk' => $request->deskripsi_produk, + 'created_at' => Carbon::now() + ]); + + $pivot_produk = KelompokKategoriPivot::create([ + 'kelompok_kategori_id' => $request->kelompok_produk, + 'produk_id' => $produk->id, + 'created_at' => Carbon::now() + ]); + + // Return a success response + return response()->json(['message' => 'Data created successfully']); + } + } + + public function show($id) { + $data = KelompokKategoriPivot::with(['kelompokKategori', 'produk'])->findOrFail($id); + return response()->json($data); + } + + // Ubah Menu + public function update(Request $request, $id) { + // validation + $rules = array( + 'kategori_produk' => 'required', + 'kelompok_produk' => 'required', + 'kode_produk' => 'required', + 'nama_produk' => 'required', + 'harga_produk' => 'required', + 'tersedia' => 'required', + 'deskripsi_produk' => 'required', + ); + $validator = Validator::make($request->all(), $rules); + + // check validation + if ($validator->fails()) { + // If validation fails, return with errors + return response()->json(['errors' => $validator->errors()], 422); + } else { + $pivot = KelompokKategoriPivot::findOrFail($id); + $produk = Produk::find($pivot->produk_id); + + // update pivot produk + $pivot->update([ + 'kelompok_ketegori_id' => $request->kelompok_produk, + ]); + + // update produk + $produk->update([ + 'kategori_produk_id' => $request->kategori_produk, + 'kode_produk' => $request->kode_produk, + 'nama_produk' => $request->nama_produk, + 'harga_produk' => $request->harga_produk, + 'tersedia' => $request->tersedia, + 'deskripsi_produk' => $request->deskripsi_produk, + ]); + + // Return a success response + return response()->json(['message' => 'Data created successfully']); + } + } } diff --git a/resources/views/layouts/base.blade.php b/resources/views/layouts/base.blade.php index 3cddfd8..95886fd 100644 --- a/resources/views/layouts/base.blade.php +++ b/resources/views/layouts/base.blade.php @@ -18,6 +18,7 @@ scratch. This page gets rid of all links and provides the needed markup only. + @stack('style2') diff --git a/resources/views/pages/History/js.blade.php b/resources/views/pages/History/js.blade.php index 8caa80e..d7a742b 100644 --- a/resources/views/pages/History/js.blade.php +++ b/resources/views/pages/History/js.blade.php @@ -129,7 +129,8 @@ @@ -379,8 +382,7 @@ var diskonSatuan = table.rows[index].getAttribute('data-diskon-satuan'); var total = table.rows[index].getAttribute('data-total'); var harga = table.rows[index].getAttribute('data-harga'); - var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute( - 'data-keterangan'); + var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute('data-keterangan'); qty = parseInt(qty) + 1; var totalLama = parseInt(total) + parseInt(harga); @@ -413,8 +415,7 @@ - - `; + `; calculateTotal(); } @@ -719,6 +720,7 @@ timeOut: 2000 }); window.open(result.url, '_blank'); + // window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600"); setTimeout(function() { window.location.reload(1); @@ -846,6 +848,7 @@ timeOut: 2000 }); window.open(result.url, '_blank'); + // window.open(result.url, '_blank', "toolbar=yes,scrollbars=yes,resizable=yes,top=500,left=500,width=900,height=600"); setTimeout(function() { window.location.reload(1); diff --git a/resources/views/pages/Kasir/transaksi.blade.php b/resources/views/pages/Kasir/transaksi.blade.php index f33d67f..c7eac1b 100644 --- a/resources/views/pages/Kasir/transaksi.blade.php +++ b/resources/views/pages/Kasir/transaksi.blade.php @@ -46,7 +46,7 @@ aria-labelledby="custom-tabs-four-{{ $item->kode_kelompok_kategori }}-tab">
@if ($item->kode_kelompok_kategori == 'PAK-SKOM') -
+
@@ -105,7 +105,7 @@ @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) @if ($kelompokKategoriPivot->produk->urutan == 1)
+ class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
@@ -135,7 +135,7 @@ @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) @if ($kelompokKategoriPivot->produk->urutan == 2)
+ class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
@@ -165,7 +165,7 @@ @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) @if ($kelompokKategoriPivot->produk->urutan == 3)
+ class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
@@ -195,7 +195,7 @@ @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) @if ($kelompokKategoriPivot->produk->urutan == 4)
+ class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
@@ -224,7 +224,7 @@ @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) @if ($kelompokKategoriPivot->produk->urutan == 5)
+ class="col-xl-4 col-lg-6 col-md-12 col-sm-6">
@@ -255,98 +255,121 @@ @else @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) {{-- Jika paket irit --}} - @switch($kelompokKategoriPivot->kelompok_kategori_id) - @case(9) - @if ( - $kelompokKategoriPivot->produk->tgl_start_promo <= \Carbon\Carbon::now() && - $kelompokKategoriPivot->produk->tgl_end_promo >= \Carbon\Carbon::now()) - @if ($kelompokKategoriPivot->produk->stok_promo === 0) - {{-- untuk promo aktif dan stok tersedia --}} -
-
-
-
- {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} -
-
-
+ @if ($kelompokKategoriPivot->kelompok_kategori_id === 9) + @if ( + $kelompokKategoriPivot->produk->tgl_start_promo <= \Carbon\Carbon::now() && + $kelompokKategoriPivot->produk->tgl_end_promo >= \Carbon\Carbon::now()) + @if ($kelompokKategoriPivot->produk->stok_promo === 0) + {{-- untuk promo aktif dan stok tersedia --}} +
+
+
+
+ {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} +
+
+
+
+ {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} +
+
+ {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} +
+
- {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} -
-
- {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} -
-
- -
-
- @if ( - $kelompokKategoriPivot->produk->stok_promo != '' || - $kelompokKategoriPivot->produk->stok_promo != 0 || - $kelompokKategoriPivot->produk->stok_promo != null) -
Promo Tersisa: - {{ $kelompokKategoriPivot->produk->stok_promo ?? 0 }} -
- @endif + Promo Habis
+
+ @if ( + $kelompokKategoriPivot->produk->stok_promo != '' || + $kelompokKategoriPivot->produk->stok_promo != 0 || + $kelompokKategoriPivot->produk->stok_promo != null) +
Promo Tersisa: + {{ $kelompokKategoriPivot->produk->stok_promo ?? 0 }} +
+ @endif +
- @else - {{-- untuk promo dengan stok kosong --}} -
-
-
-
- {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} -
-
-
-
- {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} -
-
- {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} -
-
-
- Pesan -
-
-
- @if ( - $kelompokKategoriPivot->produk->stok_promo != '' || - $kelompokKategoriPivot->produk->stok_promo != 0 || - $kelompokKategoriPivot->produk->stok_promo != null) -
Promo Tersisa: - {{ $kelompokKategoriPivot->produk->stok_promo ?? 0 }} -
- @endif -
-
-
-
- @endif +
@else - {{-- untuk promo tidak aktif --}} - @if ($loop->last) - Tidak ada promo - @endif + {{-- untuk promo dengan stok kosong --}} +
+
+
+
+ {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} +
+
+
+
+ {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} +
+
+ {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} +
+
+
+ Pesan +
+
+
+ @if ( + $kelompokKategoriPivot->produk->stok_promo != '' || + $kelompokKategoriPivot->produk->stok_promo != 0 || + $kelompokKategoriPivot->produk->stok_promo != null) +
Promo Tersisa: + {{ $kelompokKategoriPivot->produk->stok_promo ?? 0 }} +
+ @endif +
+
+
+
@endif - @break - - @default + @else + {{-- untuk promo tidak aktif --}} + @if ($loop->last) + Tidak ada promo + @endif + @endif + @else + @if ($kelompokKategoriPivot->kelompok_kategori_id == 2) +
+
+
+
+ {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} +
+
+
+
+
+
+ {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} +
+ +
+
+
+
+
+ @else {{-- untuk semua menu selain paket --}}
- @endswitch + @endif + @endif @endforeach @endif
diff --git a/resources/views/pages/Menu/index.blade.php b/resources/views/pages/Menu/index.blade.php index bb4ba36..005ed01 100644 --- a/resources/views/pages/Menu/index.blade.php +++ b/resources/views/pages/Menu/index.blade.php @@ -20,71 +20,71 @@ @endsection @section('content') -
-
-
-
-
-
-

Daftar Menu

- -
- -
+
+
+
+
+
+
+

Daftar Menu

+ +
+
-
- {{--
Form List Data
--}} -
- - - - - - - - - - - -
NoKode ProdukNama ProdukHarga ProdukKategori Produk
-
+
+
+ {{--
Form List Data
--}} +
+ + + + + + + + + + + +
NoKode ProdukNama ProdukHarga ProdukKategori Produk
+
- -