diff --git a/app/Http/Controllers/Kasir/Transaksi.php b/app/Http/Controllers/Kasir/Transaksi.php index 18a1b0e..ed71847 100644 --- a/app/Http/Controllers/Kasir/Transaksi.php +++ b/app/Http/Controllers/Kasir/Transaksi.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers\Kasir; use App\Http\Controllers\Controller; +use App\Models\DetailPesanan; use App\Models\KelompokKategori; use App\Models\Produk; use Illuminate\Http\Request; @@ -15,8 +16,19 @@ class Transaksi extends Controller { $orderCode = "ORD -" . strtoupper(random_str(6, random_str())); $KelompokKategori = KelompokKategori::with('kelompokKategoriPivot.produk')->get(); + + foreach ($KelompokKategori as $item) { + foreach ($item->kelompokKategoriPivot as $kelompokKategoriPivot) { + // Query tambahan untuk mendapatkan total pembelian berdasarkan produk + $totalPembelianByProduk[$kelompokKategoriPivot->produk->id] = DetailPesanan:: + select('detail_pesanans.produk_id', DB::raw('SUM(detail_pesanans.jumlah_produk) as total_beli')) + ->where('detail_pesanans.produk_id', '=', $kelompokKategoriPivot->produk->id) + ->groupBy('detail_pesanans.produk_id') + ->first(); + } + } $produk = Produk::all(); - return view('pages.Kasir.transaksi', compact('orderCode', 'KelompokKategori', 'produk')); + return view('pages.Kasir.transaksi', compact('orderCode', 'KelompokKategori', 'produk', 'totalPembelianByProduk')); } public function store(Request $request) @@ -24,10 +36,12 @@ class Transaksi extends Controller $request->validate([ 'orderCode' => 'required', 'namaPemesan' => 'required', + 'nomorMeja' => 'required', 'orderMenus' => 'required', ], [ 'orderCode.required' => 'Kode pesanan tidak boleh kosong', 'namaPemesan.required' => 'Nama pemesan tidak boleh kosong', + 'nomorMeja.required' => 'Nomor meja tidak boleh kosong', 'orderMenus.required' => 'Pesanan tidak boleh kosong', ]); @@ -43,6 +57,7 @@ class Transaksi extends Controller $pesananDatas = [ 'kode_pesanan' => $request->orderCode, 'nama_pemesan' => $request->namaPemesan, + 'nomor_meja' => $request->nomorMeja, 'status_pesanan' => '1', 'tanggal_pesanan' => date('Y-m-d H:i:s'), 'keterangan_pesanan' => $request->keteranganPesanan ?? null, diff --git a/resources/views/components/main-footer.blade.php b/resources/views/components/main-footer.blade.php index e5e61ed..58bfdd7 100644 --- a/resources/views/components/main-footer.blade.php +++ b/resources/views/components/main-footer.blade.php @@ -1,10 +1,9 @@ - --}} \ No newline at end of file diff --git a/resources/views/components/navbar.blade.php b/resources/views/components/navbar.blade.php index b1b73ca..a421981 100644 --- a/resources/views/components/navbar.blade.php +++ b/resources/views/components/navbar.blade.php @@ -1,11 +1,11 @@ - - Sepiring Telur Keriting + + Sepiring Telur Keriting - + {{-- @@ -66,13 +66,13 @@ - + --}} - Fullscreen diff --git a/resources/views/pages/Kasir/print.blade.php b/resources/views/pages/Kasir/print.blade.php index 65d0f80..d1e5284 100644 --- a/resources/views/pages/Kasir/print.blade.php +++ b/resources/views/pages/Kasir/print.blade.php @@ -74,10 +74,14 @@ {{ tanggal_indonesia($pesanan->tanggal_pesanan) }} {{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }} + Meja: {{ $pesanan->nomor_meja }} + {{ $pesanan->kode_pesanan }} - {{ $pesanan->user->name }} + Kasir: {{ $pesanan->user->name }} + Order: {{ $pesanan->nama_pemesan }} + diff --git a/resources/views/pages/Kasir/transaksi.blade.php b/resources/views/pages/Kasir/transaksi.blade.php index e315218..ebcfcbf 100644 --- a/resources/views/pages/Kasir/transaksi.blade.php +++ b/resources/views/pages/Kasir/transaksi.blade.php @@ -23,7 +23,7 @@ - + @foreach ($KelompokKategori as $key => $item) @@ -72,7 +72,7 @@ aria-controls="vert-tabs-free" aria-selected="false">Free - @@ -86,7 +86,7 @@ - Pilih Paket Menu @@ -104,14 +104,14 @@ @if ($kelompokKategoriPivot->produk->urutan == 1) + class="card card-warning card-outline"> {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} - produk->nama_produk ?? '' }}"> - Pilih Paket @@ -138,14 +138,14 @@ @if ($kelompokKategoriPivot->produk->urutan == 2) + class="card card-warning card-outline"> {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} - produk->nama_produk ?? '' }}"> - Pilih Paket @@ -173,14 +173,14 @@ @if ($kelompokKategoriPivot->produk->urutan == 3) + class="card card-warning card-outline"> {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} - produk->nama_produk ?? '' }}"> - Pilih Paket @@ -208,14 +208,14 @@ @if ($kelompokKategoriPivot->produk->urutan == 4) + class="card card-warning card-outline"> {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} - produk->nama_produk ?? '' }}"> - Pilih Paket @@ -242,14 +242,14 @@ @if ($kelompokKategoriPivot->produk->urutan == 5) + class="card card-warning card-outline"> {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} - produk->nama_produk ?? '' }}"> - Pilih Paket @@ -276,35 +276,77 @@ @else @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) - - - - - {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} - - - - - - - - {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} - - Pesan + {{-- Jika paket irit --}} + @if ($kelompokKategoriPivot->kelompok_kategori_id == 2) + + + + + {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} + + + + + + + + {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} + + + + Pesan + + + + Jumlah terjual : {{ $totalPembelianByProduk[$kelompokKategoriPivot->produk->id]->total_beli ?? 0 }} + - + @else + + + + + {{ $kelompokKategoriPivot->produk->nama_produk ?? '' }} + + + + + + + + {{ convert_to_rupiah($kelompokKategoriPivot->produk->harga_produk) }} + + + + Pesan + + + + + + + @endif @endforeach @endif @@ -317,7 +359,7 @@ - + Kode Pesanan {{ $orderCode }} @@ -388,6 +430,8 @@ + - Bayar + Bayar @@ -779,6 +823,7 @@ var nominalBayar = bayar.replace(/[^,\d]/g, '').toString(); var kembaliHidden = document.getElementById('kembali-hidden').innerHTML; var namaPemesan = document.getElementsByName('nama-pemesan')[0].value; + var nomorMeja = document.getElementsByName('nomor-meja')[0].value; if (orderMenus.length == 0) { alert('Menu tidak boleh kosong'); @@ -790,18 +835,21 @@ } else if (kembaliHidden < 0) { alert('Pembayaran kurang'); return false; + } else if (nomorMeja == '') { + alert('Nomor meja tidak boleh kosong'); + return false; } else if (namaPemesan == '') { alert('Nama pemesan tidak boleh kosong'); return false; } - var data = { _token: "{{ csrf_token() }}", orderCode: "{{ $orderCode }}", orderMenus: orderMenus, namaPemesan: namaPemesan, + nomorMeja: nomorMeja, keteranganPesanan: document.getElementsByName('keterangan-pesanan')[0].value, diskon: diskon, totalDiskon: totalDiskon, @@ -930,7 +978,7 @@ var gambar_produk = "{{ asset('assets/images/menu_image.jpeg') }}"; } show_modal_paket.innerHTML += ` - @@ -938,16 +986,18 @@ - - + - - - ${result.harga_produk ?? ''} + + + Rp ${result.harga_produk ?? ''} - Pesan + + + Pesan
{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}
{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}
Meja: {{ $pesanan->nomor_meja }}
{{ $pesanan->kode_pesanan }}
{{ $pesanan->user->name }}
Kasir: {{ $pesanan->user->name }}
Order: {{ $pesanan->nama_pemesan }}