Compare commits

...

5 Commits

Author SHA1 Message Date
Zelda Ababil 6a8953530e mico zelda 2024-01-21 14:09:58 +07:00
Zelda Ababil 899d8546a9 aloow print 2024-01-21 13:59:56 +07:00
Zelda Ababil cb3fe8b922 handle on double click 2024-01-21 13:53:26 +07:00
Zelda Ababil aab2656d73 belum handle 2024-01-21 13:47:02 +07:00
Zelda Ababil 4ae907e666 handle 2024-01-21 12:59:20 +07:00
8 changed files with 211 additions and 55 deletions

View File

@ -102,6 +102,7 @@ class Transaksi extends Controller
public function store(Request $request) public function store(Request $request)
{ {
$request->validate([ $request->validate([
'orderCode' => 'required', 'orderCode' => 'required',
'namaPemesan' => 'required', 'namaPemesan' => 'required',
@ -123,6 +124,10 @@ class Transaksi extends Controller
$orderMenusQty += $value['qty']; $orderMenusQty += $value['qty'];
$orderMenusRupiah += $value['total']; $orderMenusRupiah += $value['total'];
} }
// $ get last count pesanan by date now and add 1 for next count pesanan today
$lastCountPesanan = Pesanan::whereDate('created_at', date('Y-m-d'))->count() + 1;
// calculate nomor antrian
$nomorAntrian = $lastCountPesanan;
$pesananDatas = [ $pesananDatas = [
'kode_pesanan' => $request->orderCode, 'kode_pesanan' => $request->orderCode,
'nama_pemesan' => $request->namaPemesan, 'nama_pemesan' => $request->namaPemesan,
@ -131,6 +136,7 @@ class Transaksi extends Controller
'status_pesanan' => '1', 'status_pesanan' => '1',
'tanggal_pesanan' => date('Y-m-d H:i:s'), 'tanggal_pesanan' => date('Y-m-d H:i:s'),
'keterangan_pesanan' => $request->keteranganPesanan ?? null, 'keterangan_pesanan' => $request->keteranganPesanan ?? null,
'nomor_antrian' => $nomorAntrian,
'total_pesanan' => $orderMenusQty, 'total_pesanan' => $orderMenusQty,
'total_bayar' => $orderMenusRupiah, 'total_bayar' => $orderMenusRupiah,
'grand_total' => $request->totalDiskon, 'grand_total' => $request->totalDiskon,

View File

@ -21,6 +21,7 @@ class Pesanan extends Model
'tanggal_pesanan', 'tanggal_pesanan',
'nomor_meja', 'nomor_meja',
'keterangan_pesanan', 'keterangan_pesanan',
'nomor_antrian',
'total_pesanan', 'total_pesanan',
'total_bayar', 'total_bayar',
'grand_total', 'grand_total',

View File

@ -0,0 +1,28 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('pesanans', function (Blueprint $table) {
$table->string('nomor_antrian')->nullable()->after('keterangan_pesanan');
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('pesanans', function (Blueprint $table) {
$table->dropColumn('nomor_antrian');
});
}
};

View File

@ -480,7 +480,6 @@
2,291 2,291
9,439 9,439
9,440 9,440
2,440
2,441 2,441
2,442 2,442
2,443 2,443

1 kelompok_kategori_id produk_id
480 2 291
481 9 439
482 9 440
2 440
483 2 441
484 2 442
485 2 443

View File

@ -83,31 +83,47 @@
<span> <span>
<p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p> <p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p>
<p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p> <p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p>
<p>Meja: {{ $pesanan->nomor_meja }}</p>
</span> </span>
<span style="text-align: right"> <span style="text-align: right">
<p>{{ $pesanan->kode_pesanan }}</p> <p>{{ $pesanan->kode_pesanan }}</p>
<p>Kasir: {{ $pesanan->user->name }}</p> <p>Kasir: {{ $pesanan->user->name }}</p>
<p>Order: {{ $pesanan->nama_pemesan }}</p>
</span> </span>
</span> </span>
<hr class="style2">
<span style="display: flex; justify-content: space-between">
<table width="100%">
<tr>
<td width=50%>
<h3>Meja: {{ $pesanan->nomor_meja }}</h3>
</td>
<td width=50% align="right">
<h3>Antrian: {{ $pesanan->nomor_antrian }}</h3>
</td>
</tr>
<tr>
<td colspan="2">
<h3>Pemesan: {{ $pesanan->nama_pemesan }}</h3>
</td>
</tr>
</table>
</span>
<p></p> <p></p>
<hr class="style2"> <hr class="style2">
<table class="literely-table" style="width: 100%;"> <table class="literely-table" style="width: 100%;">
<tbody> <tbody>
@foreach ($pesanan->detailPesanan as $item) @foreach ($pesanan->detailPesanan as $item)
<tr> <tr>
<td style="width: 100px;" colspan="5">{{ $item->nama_produk }}</td> <td style="width: 100px;" colspan="5">{{ $item->nama_produk }}</td>
</tr> </tr>
<tr> <tr>
<td></td> <td></td>
<td style="text-align: right">{{ $item->jumlah_produk }}</td> <td style="text-align: right">{{ $item->jumlah_produk }}</td>
<td style="text-align: right">{{ convert_to_rupiah($item->harga_produk) }}</td> <td style="text-align: right">{{ convert_to_rupiah($item->harga_produk) }}</td>
<td style="text-align: right;width: 30px"> <td style="text-align: right;width: 30px">
{{ $item->diskon_persen != '' || $item->diskon_persen != 0 || $item->diskon_persen != null ? $item->diskon_persen . '%' : '' }} {{ $item->diskon_persen != '' || $item->diskon_persen != 0 || $item->diskon_persen != null ? $item->diskon_persen . '%' : '' }}
</td> </td>
<td style="text-align: right;width: 70px">{{ convert_to_rupiah($item->total_harga_produk) }}</td> <td style="text-align: right;width: 70px">{{ convert_to_rupiah($item->total_harga_produk) }}</td>
</tr> </tr>
@endforeach @endforeach
</tbody> </tbody>
</table> </table>
@ -145,6 +161,70 @@
<p style="text-align: center">Terima Kasih, Selamat Datang Kembali</p> <p style="text-align: center">Terima Kasih, Selamat Datang Kembali</p>
<p style="text-align: center;font-size: 7pt;">@sepiringtelurkeriting</p> <p style="text-align: center;font-size: 7pt;">@sepiringtelurkeriting</p>
<hr class="dashed-line" style="margin-top: 15px;"> <hr class="dashed-line" style="margin-top: 15px;">
<p style="text-align: center;font-size: 7pt">untuk dapur</p>
<hr class="dashed-line" style="margin-top: 10px;">
<span style="display: flex; justify-content: space-between">
<span>
<p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p>
<p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p>
</span>
<span style="text-align: right">
<p>{{ $pesanan->kode_pesanan }}</p>
<p>Kasir: {{ $pesanan->user->name }}</p>
</span>
</span>
<hr class="style2">
<span style="display: flex; justify-content: space-between">
<table width="100%">
<tr>
<td width=50%>
<h3>Meja: {{ $pesanan->nomor_meja }}</h3>
</td>
<td width=50% align="right">
<h3>Antrian: {{ $pesanan->nomor_antrian }}</h3>
</td>
</tr>
<tr>
<td colspan="2">
<h3>Pemesan: {{ $pesanan->nama_pemesan }}</h3>
</td>
</tr>
</table>
</span>
<p></p>
<hr class="style2">
<h5 style="text-align: left; margin-top:3px;">Menu Order</h5>
<table class="table" style="width: 100%;">
<tbody>
@foreach ($pesanan->detailPesanan as $item)
<tr>
<td style="width: 80px;" colspan="3">
<h4>
({{ $item->jumlah_produk }} X)
{{ $item->nama_produk }}
</h4>
@if ($item->keterangan_produk != '')
<br>
<p>
&nbsp;&nbsp;&nbsp;&nbsp; ket: {{ $item->keterangan_produk }}
</p>
@endif
</td>
</tr>
@endforeach
</tbody>
</table>
<p style="text-align: left; margin-top:5px;">Keterangan Pesanan Keseluruhan</p>
<table class="table" style="width: 100%;">
<tbody>
<tr>
<td style="width: 80px;" colspan="3">
<h4>{{ $pesanan->keterangan_pesanan != '' ? $pesanan->keterangan_pesanan : '-' }}</h4>
</td>
</tr>
</tbody>
</table>
<hr class="style2">
<!-- Button Print --> <!-- Button Print -->
<br> <br>
@ -241,4 +321,4 @@
}) })
</script> </script>
</html> </html>

View File

@ -147,33 +147,51 @@
<hr class="dashed-line" style="margin-top: 15px;"> <hr class="dashed-line" style="margin-top: 15px;">
<p style="text-align: center;font-size: 7pt">untuk dapur</p> <p style="text-align: center;font-size: 7pt">untuk dapur</p>
<hr class="dashed-line" style="margin-top: 10px;"> <hr class="dashed-line" style="margin-top: 10px;">
<span style="display: flex; justify-content: space-between;margin-top: 10px;"> <span style="display: flex; justify-content: space-between">
<span> <span>
<p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p> <p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p>
<p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p> <p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p>
<p>Meja: {{ $pesanan->nomor_meja }}</p>
</span> </span>
<span style="text-align: right"> <span style="text-align: right">
<p>{{ $pesanan->kode_pesanan }}</p> <p>{{ $pesanan->kode_pesanan }}</p>
<p>Kasir: {{ $pesanan->user->name }}</p> <p>Kasir: {{ $pesanan->user->name }}</p>
<p>Order: {{ $pesanan->nama_pemesan }}</p>
</span> </span>
</span> </span>
<hr class="style2">
<span style="display: flex; justify-content: space-between">
<table width="100%">
<tr>
<td width=50%>
<h3>Meja: {{ $pesanan->nomor_meja }}</h3>
</td>
<td width=50% align="right">
<h3>Antrian: {{ $pesanan->nomor_antrian }}</h3>
</td>
</tr>
<tr>
<td colspan="2">
<h3>Pemesan: {{ $pesanan->nama_pemesan }}</h3>
</td>
</tr>
</table>
</span>
<p></p> <p></p>
<hr class="style2"> <hr class="style2">
<p style="text-align: left; margin-top:3px;">Menu Order</p> <h5 style="text-align: left; margin-top:3px;">Menu Order</h5>
<table class="table" style="width: 100%;"> <table class="table" style="width: 100%;">
<tbody> <tbody>
@foreach ($pesanan->detailPesanan as $item) @foreach ($pesanan->detailPesanan as $item)
<tr> <tr>
<td style="width: 80px;" colspan="3"> <td style="width: 80px;" colspan="3">
({{ $item->jumlah_produk }} X) <h4>
{{ $item->nama_produk }} ({{ $item->jumlah_produk }} X)
{{ $item->nama_produk }}
</h4>
@if ($item->keterangan_produk != '') @if ($item->keterangan_produk != '')
<br> <br>
<small> <p>
&nbsp;&nbsp;&nbsp;&nbsp; ket: {{ $item->keterangan_produk }} &nbsp;&nbsp;&nbsp;&nbsp; ket: {{ $item->keterangan_produk }}
</small> </p>
@endif @endif
</td> </td>
</tr> </tr>
@ -185,7 +203,8 @@
<tbody> <tbody>
<tr> <tr>
<td style="width: 80px;" colspan="3"> <td style="width: 80px;" colspan="3">
{{ $pesanan->keterangan_pesanan != '' ? $pesanan->keterangan_pesanan : '-' }}</td> <h4>{{ $pesanan->keterangan_pesanan != '' ? $pesanan->keterangan_pesanan : '-' }}</h4>
</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>

View File

@ -76,39 +76,58 @@
</style> </style>
<body style="width: 58mm;"> <body style="width: 58mm;">
@for ($i = 0; $i < 3; $i++) <hr class="dashed-line" style="margin-top: 15px;"> @for ($i = 0; $i < 3; $i++)
<hr class="dashed-line" style="margin-top: 15px;">
<p style="text-align: center;font-size: 7pt">Print Dapur</p> <p style="text-align: center;font-size: 7pt">Print Dapur</p>
<hr class="dashed-line" style="margin-top: 10px;"> <hr class="dashed-line" style="margin-top: 10px;">
<span style="display: flex; justify-content: space-between;margin-top: 10px;"> <span style="display: flex; justify-content: space-between">
<span> <span>
<p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p> <p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p>
<p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p> <p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p>
<p>Meja: {{ $pesanan->nomor_meja }}</p>
</span> </span>
<span style="text-align: right"> <span style="text-align: right">
<p>{{ $pesanan->kode_pesanan }}</p> <p>{{ $pesanan->kode_pesanan }}</p>
<p>Kasir: {{ $pesanan->user->name }}</p> <p>Kasir: {{ $pesanan->user->name }}</p>
<p>Order: {{ $pesanan->nama_pemesan }}</p>
</span> </span>
</span> </span>
<hr class="style2">
<span style="display: flex; justify-content: space-between">
<table width="100%">
<tr>
<td width=50%>
<h3>Meja: {{ $pesanan->nomor_meja }}</h3>
</td>
<td width=50% align="right">
<h3>Antrian: {{ $pesanan->nomor_antrian }}</h3>
</td>
</tr>
<tr>
<td colspan="2">
<h3>Pemesan: {{ $pesanan->nama_pemesan }}</h3>
</td>
</tr>
</table>
</span>
<p></p> <p></p>
<hr class="style2"> <hr class="style2">
<p style="text-align: left; margin-top:3px;">Menu Order</p> <h5 style="text-align: left; margin-top:3px;">Menu Order</h5>
<table class="table" style="width: 100%;"> <table class="table" style="width: 100%;">
<tbody> <tbody>
@foreach ($pesanan->detailPesanan as $item) @foreach ($pesanan->detailPesanan as $item)
<tr> <tr>
<td style="width: 80px;" colspan="3"> <td style="width: 80px;" colspan="3">
({{ $item->jumlah_produk }} X) <h4>
{{ $item->nama_produk }} ({{ $item->jumlah_produk }} X)
@if ($item->keterangan_produk != '') {{ $item->nama_produk }}
<br> </h4>
<small> @if ($item->keterangan_produk != '')
&nbsp;&nbsp;&nbsp;&nbsp; ket: {{ $item->keterangan_produk }} <br>
</small> <p>
@endif &nbsp;&nbsp;&nbsp;&nbsp; ket: {{ $item->keterangan_produk }}
</td> </p>
</tr> @endif
</td>
</tr>
@endforeach @endforeach
</tbody> </tbody>
</table> </table>
@ -117,25 +136,26 @@
<tbody> <tbody>
<tr> <tr>
<td style="width: 80px;" colspan="3"> <td style="width: 80px;" colspan="3">
{{ $pesanan->keterangan_pesanan != '' ? $pesanan->keterangan_pesanan : '-' }} <h4>{{ $pesanan->keterangan_pesanan != '' ? $pesanan->keterangan_pesanan : '-' }}
</h4>
</td> </td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
<hr class="style2"> <hr class="style2">
@endfor @endfor
<!-- Button Print --> <!-- Button Print -->
<br> <br>
<div class=""> <div class="">
<div class="col-6 mb"> <div class="col-6 mb">
<button class="btn btn-info btn-block hidden-print" id="print-dapur">Print</button> <button class="btn btn-info btn-block hidden-print" id="print-dapur">Print</button>
</div>
<div class="col-6 mt-2">
<button class="btn btn-danger btn-block hidden-print" id="refresh">Refresh
Halaman</button>
</div>
</div> </div>
<div class="col-6 mt-2">
<button class="btn btn-danger btn-block hidden-print" id="refresh">Refresh
Halaman</button>
</div>
</div>
</body> </body>
<style> <style>
/* Untuk menyembunyikan tombol print */ /* Untuk menyembunyikan tombol print */
@ -220,4 +240,4 @@
}) })
</script> </script>
</html> </html>

View File

@ -1023,6 +1023,7 @@
// pesan bayar // pesan bayar
document.getElementById('pesan-bayar').addEventListener('click', function() { document.getElementById('pesan-bayar').addEventListener('click', function() {
document.getElementById('pesan-bayar').disabled = true;
var table = document.getElementById("order-menus"); var table = document.getElementById("order-menus");
var orderMenus = []; var orderMenus = [];
@ -1110,6 +1111,7 @@
method: "POST", method: "POST",
data: data, data: data,
success: function(result) { success: function(result) {
document.getElementById('pesan-bayar').disabled = false;
// console.log(result); // console.log(result);
// show toastr success // show toastr success
toastr.success(result.message, 'Success', { toastr.success(result.message, 'Success', {
@ -1124,6 +1126,7 @@
}, 2000); }, 2000);
}, },
error: function(xhr, status, error) { error: function(xhr, status, error) {
document.getElementById('pesan-bayar').disabled = false;
toastr.error(xhr.responseJSON.message, 'Error', { toastr.error(xhr.responseJSON.message, 'Error', {
timeOut: 3000 timeOut: 3000
}); });