maerging mas sofyan

auth
Zelda Ababil 2024-01-21 00:35:54 +07:00
parent 3f16ec0754
commit aad0387131
4 changed files with 79 additions and 85 deletions

View File

@ -18,17 +18,18 @@ class Transaksi extends Controller
$orderCode = "ORD -" . strtoupper(random_str(6, random_str())); $orderCode = "ORD -" . strtoupper(random_str(6, random_str()));
$KelompokKategori = KelompokKategori::with('kelompokKategoriPivot.produk')->get(); $KelompokKategori = KelompokKategori::with('kelompokKategoriPivot.produk')->get();
foreach ($KelompokKategori as $item) { // foreach ($KelompokKategori as $item) {
foreach ($item->kelompokKategoriPivot as $kelompokKategoriPivot) { // foreach ($item->kelompokKategoriPivot as $kelompokKategoriPivot) {
// Query tambahan untuk mendapatkan total pembelian berdasarkan produk // // 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')) // $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) // ->where('detail_pesanans.produk_id', '=', $kelompokKategoriPivot->produk->id)
->groupBy('detail_pesanans.produk_id') // ->groupBy('detail_pesanans.produk_id')
->first(); // ->first();
} // }
} // }
$produk = Produk::all(); $produk = Produk::all();
return view('pages.Kasir.transaksi', compact('orderCode', 'KelompokKategori', 'produk', 'totalPembelianByProduk')); // return view('pages.Kasir.transaksi', compact('orderCode', 'KelompokKategori', 'produk', 'totalPembelianByProduk'));
return view('pages.Kasir.transaksi', compact('orderCode', 'KelompokKategori', 'produk'));
} }
public function getCetakTigaKali() public function getCetakTigaKali()
@ -112,6 +113,11 @@ class Transaksi extends Controller
$pesananModels = \App\Models\Pesanan::create($pesananDatas); $pesananModels = \App\Models\Pesanan::create($pesananDatas);
foreach ($request->orderMenus as $key => $value) { foreach ($request->orderMenus as $key => $value) {
// calculate produk promo untuk mengurangi stok
// $produk = Produk::find($value['id']);
// dd($produk->stok_produk);
// $produk->stok_produk = $produk->stok_produk - $value['qty'];
// $produk->save();
$oderDatas = [ $oderDatas = [
'pesanan_id' => $pesananModels->id, 'pesanan_id' => $pesananModels->id,
'produk_id' => $value['id'], 'produk_id' => $value['id'],

View File

@ -26,6 +26,7 @@ class ProdukSeeder extends Seeder
"varian_produk" => $data['4'] ?? null, "varian_produk" => $data['4'] ?? null,
"harga_produk" => $data['5'] ?? '', "harga_produk" => $data['5'] ?? '',
"urutan" => $data['6'] == "" ? null : $data['6'], "urutan" => $data['6'] == "" ? null : $data['6'],
"stok_produk" => $data['7'] == "" ? null : $data['7'],
]); ]);
} }
$firstline = false; $firstline = false;

View File

@ -145,51 +145,6 @@
<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;margin-top: 10px;">
<span>
<p>{{ tanggal_indonesia($pesanan->tanggal_pesanan) }}</p>
<p>{{ date('H:i', strtotime($pesanan->tanggal_pesanan)) }}</p>
<p>Meja: {{ $pesanan->nomor_meja }}</p>
</span>
<span style="text-align: right">
<p>{{ $pesanan->kode_pesanan }}</p>
<p>Kasir: {{ $pesanan->user->name }}</p>
<p>Order: {{ $pesanan->nama_pemesan }}</p>
</span>
</span>
<p></p>
<hr class="style2">
<p style="text-align: left; margin-top:3px;">Menu Order</p>
<table class="table" style="width: 100%;">
<tbody>
@foreach ($pesanan->detailPesanan as $item)
<tr>
<td style="width: 80px;" colspan="3">
({{ $item->jumlah_produk }} X)
{{ $item->nama_produk }}
@if ($item->keterangan_produk != '')
<br>
<small>
&nbsp;&nbsp;&nbsp;&nbsp; ket: {{ $item->keterangan_produk }}
</small>
@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">
{{ $pesanan->keterangan_pesanan != '' ? $pesanan->keterangan_pesanan : '-' }}</td>
</tr>
</tbody>
</table>
<hr class="style2">
</body> </body>
<script> <script>
window.print(); window.print();

View File

@ -255,7 +255,7 @@
@else @else
@foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot) @foreach ($item->kelompokKategoriPivot as $key2 => $kelompokKategoriPivot)
{{-- Jika paket irit --}} {{-- Jika paket irit --}}
@if ($kelompokKategoriPivot->kelompok_kategori_id == 2) @if ($kelompokKategoriPivot->kelompok_kategori_id == 9)
<div class="col-xl-4 col-lg-6 col-md-6 col-sm-12"> <div class="col-xl-4 col-lg-6 col-md-6 col-sm-12">
<div class="card card-warning card-outline btn" <div class="card card-warning card-outline btn"
onclick="aadMenu( {{ $kelompokKategoriPivot->produk }} )"> onclick="aadMenu( {{ $kelompokKategoriPivot->produk }} )">
@ -280,11 +280,16 @@
id="ordered-menus">Pesan</a> id="ordered-menus">Pesan</a>
</div> </div>
</div> </div>
{{-- <div class="col-md-12 mt-3"> <div class="col-md-12 mt-3">
<h6 style="color: red">Jumlah terjual : @if (
{{ $totalPembelianByProduk[$kelompokKategoriPivot->produk->id]->total_beli ?? 0 }} $kelompokKategoriPivot->produk->stok_produk != '' ||
</h6> $kelompokKategoriPivot->produk->stok_produk != 0 ||
</div> --}} $kelompokKategoriPivot->produk->stok_produk != null)
<h6 style="color: red">Promo Tersisa:
{{ $kelompokKategoriPivot->produk->stok_produk ?? 0 }}
</h6>
@endif
</div>
</div> </div>
</div> </div>
</div> </div>
@ -419,10 +424,12 @@
<button class="btn btn-warning btn-block" id="pesan-bayar">Bayar</button> <button class="btn btn-warning btn-block" id="pesan-bayar">Bayar</button>
<div class="row"> <div class="row">
<div class="col-6 mt-2"> <div class="col-6 mt-2">
<button class="btn btn-info btn-block" id="print-dapur">Print Dapur</button> <button class="btn btn-info btn-block" id="print-dapur">Print
Dapur</button>
</div> </div>
<div class="col-6 mt-2"> <div class="col-6 mt-2">
<button class="btn btn-danger btn-block" id="refresh">Refresh Halaman</button> <button class="btn btn-danger btn-block" id="refresh">Refresh
Halaman</button>
</div> </div>
</div> </div>
</th> </th>
@ -463,49 +470,74 @@
<style> <style>
</style> </style>
<link rel="stylesheet" href="{{ asset('assets/plugins/toastr/toastr.min.css') }}"> <link rel="stylesheet" href="{{ asset('assets/plugins/toastr/toastr.min.css') }}">
<link rel="stylesheet" href="{{asset('assets/datatables/datatables.min.css')}}"> <link rel="stylesheet" href="{{ asset('assets/datatables/datatables.min.css') }}">
@endpush @endpush
@push('scripts') @push('scripts')
<!-- Toastr --> <!-- Toastr -->
<script src="{{ asset('assets/plugins/toastr/toastr.min.js') }}"></script> <script src="{{ asset('assets/plugins/toastr/toastr.min.js') }}"></script>
<script> <script>
$(document).ready( function () { $(document).ready(function() {
$('#print-dapur').on('click', function(){ $('#print-dapur').on('click', function() {
$('#modal_print_dapur').modal('show') $('#modal_print_dapur').modal('show')
}) })
}) })
</script> </script>
<script> <script>
$(document).ready( function () { $(document).ready(function() {
$('#refresh').on('click', function(){ $('#refresh').on('click', function() {
location.reload() location.reload()
}) })
}) })
</script> </script>
<script src="{{ asset('assets/datatables/datatables.min.js') }}"></script> <script src="{{ asset('assets/datatables/datatables.min.js') }}"></script>
<script> <script>
$(document).ready( function () { $(document).ready(function() {
$('#tabelku').DataTable({ $('#tabelku').DataTable({
processing: true, processing: true,
serverSide: true, serverSide: true,
ajax: '{{ route('transaksi.getCetakTigaKali') }}', ajax: '{{ route('transaksi.getCetakTigaKali') }}',
columns: [ columns: [{
{data: 'nomor', name: 'nomor', orderable: false, className: 'text-center'}, data: 'nomor',
{data: 'kode_pesanan', name: 'kode_pesanan'}, name: 'nomor',
{data: 'nama_user', name: 'nama_user'}, orderable: false,
{data: 'created_at', name: 'created_at', className: 'text-center'}, className: 'text-center'
{data: 'total_pesanan', name: 'total_pesanan', className: 'text-center'}, },
{ {
data: 'diskon_persen', data: 'kode_pesanan',
name: 'diskon_persen', name: 'kode_pesanan'
className: 'text-center', },
render: function(data){ {
return data ?? 0; data: 'nama_user',
} name: 'nama_user'
}, },
{data: 'grand_total', name: 'grand_total'}, {
{data: 'ubah', name: 'ubah', className: 'text-center'}, data: 'created_at',
name: 'created_at',
className: 'text-center'
},
{
data: 'total_pesanan',
name: 'total_pesanan',
className: 'text-center'
},
{
data: 'diskon_persen',
name: 'diskon_persen',
className: 'text-center',
render: function(data) {
return data ?? 0;
}
},
{
data: 'grand_total',
name: 'grand_total'
},
{
data: 'ubah',
name: 'ubah',
className: 'text-center'
},
] ]
}) })
}) })