<?php
if (empty($_SESSION['loginku'])) {
header("Location: login");
}
require 'koneksi.php';
#jika button lanjut di tekan
if (isset($_POST['lanjut'])) {
#hilangkan format rupiah di field uang untuk mendapatkan bentuk number
$asli = array(
'Rp. ',
'.'
);
$diganti = array(
'',
''
);
$mustpay = pilter($kon, $_POST['mustpay']);
$uang = str_replace($asli, $diganti, $_POST['uang']);
$wallet = pilter($kon, $_POST['wallet']);
$wa = pilter($kon, $_POST['wa']);
$nama = pilter($kon, $_POST['nama']);
$email = piltermail($kon, $_POST['email']);
$meja = pilter($kon, $_POST['meja']);
$kupon = pilter($kon, $_POST['kupon']);
$lanjut = pilter($kon, 'dibayar');
#bandingkan mustpay & total uang yang di input
if ($uang < $mustpay) {
$_SESSION['moneytidakcukup'] = 'uang kurang';
echo "<script>window.location.href = 'beranda';</script>";
exit();
}
// mengintip data customer
$customer = mysqli_query($kon, "SELECT * FROM customer WHERE wa = '$wa' ");
// menghitung jumlah customer
$j_customer = mysqli_num_rows($customer);
// jika belum pernah terinput masukan customer ke database (berdasarkan wa)
if ($j_customer < 1 && !empty($nama) && !empty($wa)) {
// Persiapan statement
$stmt = mysqli_prepare($kon, "INSERT INTO customer (resto, nama, wa, email) VALUES (?, ?, ?, ?)");
// Bind parameter
mysqli_stmt_bind_param($stmt, "ssss", $_SESSION['resto'], $nama, $wa, $email);
// Eksekusi statement
mysqli_stmt_execute($stmt);
}
} else {
$wa = null;
$uang = null;
$nama = null;
$email = null;
$meja = null;
$lanjut = null;
$kupon = null;
$wallet = null;
}
#isset kodepromo
if (isset($_POST['kodepromo'])) {
$kodepromo = pilter($kon, $_POST['kodepromo']);
#untuk simpan cecked
$_SESSION['promo'] = $kodepromo;
} else {
$kodepromo = null;
$_SESSION['promo'] = null;
}
#tampilkan promo dari db promo
$l_promo = mysqli_query($kon, "SELECT * FROM promo WHERE namapromo = '$kodepromo' ");
$d_promo = mysqli_fetch_array($l_promo);
#tampilkan nominal kupon dari db kupon
$l_kupon = mysqli_query($kon, "SELECT * FROM kupon WHERE kode = '$kupon' AND status='aktif' ");
$d_kupon = mysqli_fetch_array($l_kupon);
if (isset($_POST['kode_produk']) && isset($_POST['jumlah']) && isset($_POST['varian'])) {
$kode_produk = pilter($kon, $_POST['kode_produk']);
$jumlah = pilter($kon, $_POST['jumlah']);
#jika produk oneklik sesuaikan primary
if (isset($_POST['oneklik'])) {
$varian = pilter($kon, $_POST['kode_produk']) . "-" . null;
} else {
$varian = pilternostrip($kon, $_POST['varian']);
}
$sql = "select * from produk where kode_produk='$kode_produk'";
$query = mysqli_query($kon, $sql);
$data = mysqli_fetch_array($query);
$kode_produk = $data['kode_produk'];
$nama_produk = $data['nama'];
$kategori = $data['kategori'];
$harga = $data['harga'];
$stok = $data['stok'];
} else {
$kode_produk = "";
$jumlah = 0;
}
if (isset($_POST['aksi'])) {
$aksi = pilternostrip($kon, $_POST['aksi']);
} else {
$aksi = "";
}
if (isset($_POST['catatan'])) {
$catatan = pilter($kon, $_POST['catatan']);
} else {
$catatan = "";
}
switch ($aksi) {
case "tambah_produk":
#buat varian sebagai primary
$itemArray = array($varian => array('kode_produk' => $kode_produk, 'nama_produk' => $nama_produk, 'kategori' => $kategori, 'varian' => $varian, 'jumlah' => $jumlah, 'catatan' => ' ', 'harga' => $harga, 'stok' => $stok));
if (!empty($_SESSION["keranjang_belanja"])) {
if (in_array(pilternostrip($kon, $_POST['varian']), array_keys($_SESSION["keranjang_belanja"]))) {
foreach ($_SESSION["keranjang_belanja"] as $k => $v) {
if (pilternostrip($kon, $_POST['varian']) == $k) {
$_SESSION["keranjang_belanja"] = array_merge($_SESSION["keranjang_belanja"], $itemArray);
}
}
} else {
$_SESSION["keranjang_belanja"] = array_merge($_SESSION["keranjang_belanja"], $itemArray);
}
} else {
$_SESSION["keranjang_belanja"] = $itemArray;
}
break;
//Fungsi untuk menghapus item dalam cart
case "hapus":
if (!empty($_SESSION["keranjang_belanja"])) {
foreach ($_SESSION["keranjang_belanja"] as $k => $v) {
if ($_POST["varian"] == $k)
unset($_SESSION["keranjang_belanja"][$k]);
if (empty($_SESSION["keranjang_belanja"]))
unset($_SESSION["keranjang_belanja"]);
}
}
break;
case "ubah":
$itemArray = array($varian => array('kode_produk' => $kode_produk, 'nama_produk' => $nama_produk, 'kategori' => $kategori, 'varian' => $varian, 'jumlah' => $jumlah, 'catatan' => $catatan, 'harga' => $harga));
if (!empty($_SESSION["keranjang_belanja"])) {
foreach ($_SESSION["keranjang_belanja"] as $k => $v) {
#jika varian == true
if (pilternostrip($kon, $_POST["varian"]) == $k)
$_SESSION["keranjang_belanja"] = array_merge($_SESSION["keranjang_belanja"], $itemArray);
}
}
break;
}
?>
<div class="bungkus-table" style="height: 550px; overflow:auto;">
<table class="table">
<tbody>
<?php
$no = 0;
$sub_total = 0;
$realtotal = 0;
$total = 0;
$total_berat = 0;
?>
<?php if (empty($_SESSION["keranjang_belanja"])) { ?>
<center>
<div style="margin-top:19%"><img src="https://i.imghippo.com/files/l9350xrg.png" width="30%" alt="https://www.flaticon.com/free-icon/cashier_4472451?term=cashier&page=1&position=50&origin=search&related_id=4472451"></div>
<div class="mt-4">
<button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#caratrxMOD">
<img src="gambar/play.png" alt="" width="25px"> Cara buat transaksi
</button>
</div>
</center>
<div class="modal fade" id="caratrxMOD" tabindex="-1" aria-labelledby="caratrxMODLabel" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="caratrxMODLabel">Cara buat transaksi</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
<center>
<iframe width="660" height="315" src="https://www.youtube.com/embed/CDbfRb7FQAk?si=0w1huyr0jHG4HKsP" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</center>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Tutup</button>
</div>
</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
<?php } ?>
<?php
if (!empty($_SESSION["keranjang_belanja"])) :
foreach ($_SESSION["keranjang_belanja"] as $item) :
$no++;
$sub_total = $item["jumlah"] * $item['harga'];
#realtotal adalah total yang seharusnya (jika tanpa promo)
$realtotal += $sub_total;
# $total adalah total - promo
if (empty($d_promo['potongan'])) {
$d_promo['potongan'] = null;
$d_promo['tipe'] = null;
$d_promo['namapromo'] = null;
}
if (empty($d_kupon['potongan'])) {
$d_kupon['potongan'] = null;
$d_kupon['kode'] = null;
}
#dengan promo
#jika tipe promo adalah nominal
if ($d_promo['tipe'] == 'nominal') {
$total = $realtotal - $d_promo['potongan'] - $d_kupon['potongan'];
}
#jika tipe promo adalah persen
else if ($d_promo['tipe'] == 'percent') {
#hasilkan nominal dari pesen
$hasilpersen = $realtotal * $d_promo['potongan'] / 100;
#batasi maksimal nominal dalam diskon persen
#jika kurang dari 20k
if ($hasilpersen < 20000) {
$hasilpersen = $realtotal * $d_promo['potongan'] / 100;
#jika lebih atau sama dengan 20k
} else if ($hasilpersen >= 20000) {
$hasilpersen = 20000;
}
#realtotal - nominal dari persen
$total = $realtotal - $hasilpersen - $d_kupon['potongan'];
#ketika tanpa promo
} else {
$total = (int)$realtotal - (int)$d_promo['potongan'] - (int)$d_kupon['potongan'];
}
?>
<input type="hidden" name="kode_produk[]" class="kode_produk" value="<?php echo $item["kode_produk"]; ?>" />
<tr>
<td>
<div class="badge badge-primary"><?php echo $no; ?></div>
</td>
<td><?php echo $item["nama_produk"]; ?></td>
<td>
<?php
$vari = explode('-', $item["varian"]);
echo $vari[1];
?>
</td>
<td>Rp. <?php echo number_format($item["harga"], 0, ',', '.'); ?> </td>
<td>
<input type="number" min="1" value="<?php echo $item["jumlah"]; ?>" class="form-control" style="width:100px" id="jumlah<?php echo $no; ?>" name="jumlah[]">
<script>
$("#jumlah<?php echo $no; ?>").bind('change', function() {
var jumlah<?php echo $no; ?> = $("#jumlah<?php echo $no; ?>").val();
$("#jumlaha<?php echo $no; ?>").val(jumlah<?php echo $no; ?>);
});
$("#jumlah<?php echo $no; ?>").keydown(function(event) {
return true;
});
</script>
</td>
<td>
<textarea class="form-control" name="catatan" maxlength="30" id="catatan<?php echo $no; ?>" style="height: 41px"> <?php echo $item["catatan"]; ?> </textarea>
</td>
<script>
$("#catatan<?php echo $no; ?>").bind('change', function() {
var catatan<?php echo $no; ?> = $("#catatan<?php echo $no; ?>").val();
$("#catatann<?php echo $no; ?>").val(catatan<?php echo $no; ?>);
});
$("#catatan<?php echo $no; ?>").keydown(function(event) {
return true;
});
</script>
<td>Rp. <?php echo number_format($sub_total, 0, ',', '.'); ?> </td>
<td>
<!-- form ubah-->
<form method="POST">
<input type="hidden" name="kode_produk" value="<?php echo $item["kode_produk"]; ?>" class="form-control">
<input type="hidden" name="aksi" value="ubah" class="form-control">
<input type="hidden" name="varian" value="<?php echo $item["varian"]; ?>" class="form-control">
<input type="hidden" name="halaman" value="keranjang-belanja" class="form-control">
<input type="hidden" name="jumlah" value="<?php echo $item["jumlah"]; ?>" id="jumlaha<?php echo $no; ?>" value="" class="form-control">
<input type="hidden" name="catatan" value="<?php echo $item["catatan"]; ?>" id="catatann<?php echo $no; ?>" value="" class="form-control">
<input type="submit" class="btn btn-outline-primary btn-xs" value="Ubah">
</form>
</td>
<td>
<!-- form delete-->
<form method="POST">
<input type="hidden" name="varian" value="<?php echo $item["varian"]; ?>" class="form-control">
<input type="hidden" name="aksi" value="hapus" class="form-control">
<input type="submit" class="btn btn-outline-danger btn-xs" value="Delete">
</form>
</td>
</tr>
<?php
endforeach;
endif;
?>
</tbody>
</table>
</div>
<!-- Modal bayar -->
<div class="modal fade" id="Modalbayar" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content" style="border-radius: 25px;">
<div class="modal-header text-white">
<h5><i class="fa-solid fa-cash-register"></i> Kasir <?= $_SESSION['user'] ?></h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<i class="fa-regular fa-circle-xmark"></i>
</button>
</div>
<div class="modal-body">
<!-- button lanjut -->
<form action="" method="POST">
<center>
<h3>Transaksi Rp. <?php echo number_format($realtotal, 0, ',', '.'); ?></h3>
</center>
<input type="hidden" name="mustpay" value="<?= $total ?>">
<div class="alert alert-danger">
Pemilihan CASH,Shopeefodd dll hanya bersifat mengelompokan aliran dana. bukan berarti terkonek dengan layanan pihak ke3.
<b class="text-danger"><a href="#" data-toggle="modal" data-target="#pelajari3">Pelajari</a></b>
</div>
<label>Uang</label>
<div class="row">
<div class="col lg-6">
<input type="text" name="uang" maxlength="20" value="<?= $uang ?>" id="dengan-rupiah" autocomplete="off" placeholder="Wajib" class="form-control mb-3" required>
</div>
<div class="col lg-6">
<select name="wallet" value="<?= $wallet ?>" class="form-control selectize">
<option value="CASH">CASH</option>
<option value="QRIS">QRIS</option>
<option value="GOFOOD">GOFOOD</option>
<option value="GRABFOOD">GRABFOOD</option>
<option value="SHOPEEFOOD">SHOPEEFOOD</option>
</select>
</div>
</div>
<div class="alert alert-danger">
Nomor wa & email akan tersimpan otomatis di menu customer jika dia adalah customer baru. <br>
</div>
<di class="row">
<div class="col-lg-4">
<label>Whatsapp (Awali 62)</label>
<input type="number" value="<?= $wa ?>" name="wa" maxlength="14" id="wa" onkeyup="isi_otomatis()" autocomplete="off" placeholder="Optional" class="form-control mb-3">
</div>
<div class="col-lg-4">
<label>Nama</label>
<input type="text" value="<?= $nama ?>" name="nama" maxlength="10" id="nama" autocomplete="off" placeholder="Wajib" class="form-control mb-3">
</div>
<div class="col-lg-4">
<label>Email</label>
<input type="email" value="<?= $email ?>" name="email" maxlength="35" id="email" autocomplete="off" placeholder="Optional" class="form-control-noregex mb-3">
</div>
</di>
<label>No Meja <b class="text-danger"><a href="#" data-toggle="modal" data-target="#pelajari">Jika take away?</a></b></label>
<input type="text" value="<?= $meja ?>" name="meja" maxlength="5" autocomplete="off" placeholder="Optional" class="form-control mb-3">
<!-- Modal -->
<div class="modal fade" id="pelajari" tabindex="-1" aria-labelledby="pelajari" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="pelajari">Jika ini orderan take away</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<center><iframe width="660" height="315" src="https://www.youtube.com/embed/6k0ZZpNslKE?si=RjDcGktudC0ylASA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></center>
</div>
</div>
</div>
</div>
<!-- Modal 2 -->
<div class="modal fade" id="pelajari2" tabindex="-1" aria-labelledby="pelajari" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="pelajari">Menggunakan Promo</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<center><iframe width="660" height="315" src="https://www.youtube.com/embed/rpYPxQ7CpPE?si=vE_mvo3Ygp4N2m3x" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></center>
</div>
</div>
</div>
</div>
<!-- Modal 3-->
<div class="modal fade" id="pelajari3" tabindex="-1" aria-labelledby="pelajari" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="pelajari">Memahami aliran dana (wallet)</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<center><iframe width="560" height="315" src="https://www.youtube.com/embed/IdyHTabKyGc?si=MfBpcOnNrylqL_sy" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></center>
</div>
</div>
</div>
</div>
<?php
$x_promo = mysqli_query($kon, "SELECT * FROM promo WHERE resto = '$_SESSION[resto]' ");
#cek apakah ada data promo milik resto ini?
#jika ada tampilkan label
if (mysqli_num_rows($x_promo) > 0) {
echo " <label style='display: block;'>Promo (bersifat cashback) <b class='text-danger'><a href='#' data-toggle='modal' data-target='#pelajari2'>Pelajari</a></b> ";
}
while ($z_promo = mysqli_fetch_array($x_promo)) {
$namapromo = $z_promo['namapromo'];
$deskripsi = $z_promo['deskripsi'];
?>
<div class="boxed-check-group">
<label class="boxed-check">
<input class="boxed-check-input" value="<?= $namapromo ?>" type="radio" name="kodepromo"
<?php
if ($_SESSION['promo'] === $namapromo) {
echo 'checked';
}
?>>
<div class="boxed-check-label" style="text-align:center; border-radius: 25px;">
<h5><?= $namapromo ?></h5>
<span><?= $deskripsi ?></span>
</div>
</label>
</div>
<?php
}
?>
<label>Kode voucher (bersifat cashback)</label> <span id="validasikupon"></span>
<input type="text" name="kupon" maxlength="15" id="datakupon" autocomplete="off" placeholder="Optional" class="form-control mb-3">
</div>
<div class="modal-footer">
<!-- button lanjut -->
<button type="submit" name="lanjut" value="dibayar" class="btn btn-primary"><i class="fa-solid fa-forward-step"></i> Lanjut</button>
</form>
</div>
</div>
</div>
</div>