solve error: delete menu

sofyan
mikhailkusuma 2024-01-24 18:49:08 +07:00
parent cdcda6161e
commit 50b9bb341c
1 changed files with 39 additions and 31 deletions

View File

@ -110,13 +110,15 @@
minute: 'numeric', minute: 'numeric',
second: 'numeric' second: 'numeric'
}; };
// tampilkan pada id datetime-order // tampilkan pada id datetime-order
document.getElementById('datetime-order').innerHTML = utc.toLocaleDateString("id-ID", options); document.getElementById('datetime-order').innerHTML = utc.toLocaleDateString("id-ID", options);
} }
// show time every second
setInterval(showTime, 1000); setInterval(showTime, 1000);
let globalId = 0;
// make function add menu to table and calculate qty and total price menu ordered and check menu ordered is exist or not in tbody table order-menus insert this in // make function add menu to table and calculate qty and total price menu ordered and check menu ordered is exist or not in tbody table order-menus insert this in
function aadMenu(params, menuPaket = false) { function aadMenu(params, menuPaket = false) {
var paketFreenya = []; var paketFreenya = [];
@ -124,11 +126,11 @@
if (menuPaket == true) { if (menuPaket == true) {
for (let index = 0; index < itemFree.length; index++) { for (let index = 0; index < itemFree.length; index++) {
// const element = itemFree[index]; // const element = itemFree[index];
console.log(itemFree[index].nama_produk); // console.log(itemFree[index].nama_produk);
paketFreenya.push(itemFree[index].nama_produk); paketFreenya.push(itemFree[index].nama_produk);
idPaketFreenya.push(itemFree[index].id); idPaketFreenya.push(itemFree[index].id);
} }
console.log(itemFree); // console.log(itemFree);
} }
var table = document.getElementById("order-menus"); var table = document.getElementById("order-menus");
@ -185,7 +187,7 @@
<br> <br>
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'} ${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.." value='${paketFreenyaini}'> <input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-0" placeholder="Keterangan.." value='${paketFreenyaini}'>
</div> </div>
</td> </td>
`; `;
@ -196,7 +198,7 @@
<br> <br>
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'} ${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.."> <input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-0" placeholder="Keterangan..">
</div> </div>
</td> </td>
`; `;
@ -206,11 +208,11 @@
<td class="text-center"> <td class="text-center">
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<span class="input-group-append"> <span class="input-group-append">
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${params.id}, '${params.nama_produk}')"><b>-</b></button> <button type="button" class="btn btn-default btn-xs btn-flat tai" onclick="decrementMenu(${globalId}, '${params.nama_produk}')"><b>-</b></button>
</span> </span>
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${qty}"> <input type="text" name="bayar" class="form-control rounded-0" readonly value="${qty}">
<span class="input-group-append"> <span class="input-group-append">
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${params.id}, '${params.nama_produk}')">+</button> <button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${globalId}, '${params.nama_produk}')">+</button>
</span> </span>
</div> </div>
</td> </td>
@ -218,13 +220,13 @@
table.rows[index].cells[2].innerHTML = ` table.rows[index].cells[2].innerHTML = `
<td class="text-center"> <td class="text-center">
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="${diskonSatuan}" onkeyup="diskonSatuanMenu(${params.id}, '${params.nama_produk}', this.value)"> <input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="${diskonSatuan}" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
</div> </div>
</td> </td>
`; `;
table.rows[index].cells[3].innerHTML = ` table.rows[index].cells[3].innerHTML = `
<td class="text-center"> <td class="text-center">
<button class="btn btn-danger btn-sm" onclick="deleteMenu(${params.id})"> <button class="btn btn-danger btn-sm" onclick="deleteMenu(${globalId})">
<i class="fas fa-trash"></i> <i class="fas fa-trash"></i>
</button> </button>
</td> </td>
@ -232,6 +234,8 @@
calculateTotal(); calculateTotal();
$('#modal-default').modal('hide'); $('#modal-default').modal('hide');
} else { } else {
globalId++;
console.log(globalId);
if (paketFreenya.length != 0) { if (paketFreenya.length != 0) {
if (paketFreenya.length == 3) { if (paketFreenya.length == 3) {
paketFreenyaini = 'FREEALL'; paketFreenyaini = 'FREEALL';
@ -239,33 +243,33 @@
paketFreenyaini = paketFreenya.join(', '); paketFreenyaini = paketFreenya.join(', ');
} }
$('#tbody-order-menus').append(` $('#tbody-order-menus').append(`
<tr id="row-${params.id}" data-id="${params.id}" data-nama="${params.nama_produk}" data-harga="${params.harga_produk}" data-qty="1" data-diskon-satuan="0" data-total="${params.harga_produk}"> <tr id="row-${params.id}" data-id="${params.id}" data-row-id="${globalId}" data-nama="${params.nama_produk}" data-harga="${params.harga_produk}" data-qty="1" data-diskon-satuan="0" data-total="${params.harga_produk}">
<td> <td>
${params.nama_produk} ${params.nama_produk}
<br> <br>
<small class="text-primary">Rp. ${params.harga_produk}</small> <small class="text-primary">Rp. ${params.harga_produk}</small>
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.." value="${paketFreenyaini}"> <input type="text" name="keterangan_satuan" class="form-control rounded-0" data-keterangan="${paketFreenyaini}" placeholder="Keterangan.." value="${paketFreenyaini}">
</div> </div>
</td> </td>
<td class="text-center"> <td class="text-center">
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<span class="input-group-append"> <span class="input-group-append">
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${params.id}, '${params.nama_produk}')"><b>-</b></button> <button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${globalId}, '${params.nama_produk}')"><b>-</b></button>
</span> </span>
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${menuQty}"> <input type="text" name="bayar" class="form-control rounded-0" readonly value="${menuQty}">
<span class="input-group-append"> <span class="input-group-append">
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${params.id}, '${params.nama_produk}')">+</button> <button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${globalId}, '${params.nama_produk}')">+</button>
</span> </span>
</div> </div>
</td> </td>
<td class="text-center"> <td class="text-center">
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="0" onkeyup="diskonSatuanMenu(${params.id}, '${params.nama_produk}', this.value)"> <input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="0" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
</div> </div>
</td> </td>
<td class="text-center"> <td class="text-center">
<button class="btn btn-danger btn-sm" onclick="deleteMenu(${params.id})"> <button class="btn btn-danger btn-sm" onclick="deleteMenu(${globalId})">
<i class="fas fa-trash"></i> <i class="fas fa-trash"></i>
</button> </button>
</td> </td>
@ -273,33 +277,33 @@
`); `);
} else { } else {
$('#tbody-order-menus').append(` $('#tbody-order-menus').append(`
<tr id="row-${params.id}" data-id="${params.id}" data-nama="${params.nama_produk}" data-harga="${params.harga_produk}" data-qty="1" data-diskon-satuan="0" data-total="${params.harga_produk}"> <tr id="row-${params.id}" data-id="${params.id}" data-row-id="${globalId}" data-nama="${params.nama_produk}" data-harga="${params.harga_produk}" data-qty="1" data-diskon-satuan="0" data-total="${params.harga_produk}">
<td> <td>
${params.nama_produk} ${params.nama_produk}
<br> <br>
<small class="text-primary">Rp. ${params.harga_produk}</small> <small class="text-primary">Rp. ${params.harga_produk}</small>
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.."> <input type="text" name="keterangan_satuan" data-keterangan="" class="form-control rounded-0" placeholder="Keterangan..">
</div> </div>
</td> </td>
<td class="text-center"> <td class="text-center">
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<span class="input-group-append"> <span class="input-group-append">
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${params.id}, '${params.nama_produk}')"><b>-</b></button> <button type="button" class="btn btn-default btn-xs btn-flat" onclick="decrementMenu(${globalId}, '${params.nama_produk}')"><b>-</b></button>
</span> </span>
<input type="text" name="bayar" class="form-control rounded-0" readonly value="${menuQty}"> <input type="text" name="bayar" class="form-control rounded-0" readonly value="${menuQty}">
<span class="input-group-append"> <span class="input-group-append">
<button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${params.id}, '${params.nama_produk}')">+</button> <button type="button" class="btn btn-default btn-xs btn-flat" onclick="incrementMenu(${globalId}, '${params.nama_produk}')">+</button>
</span> </span>
</div> </div>
</td> </td>
<td class="text-center"> <td class="text-center">
<div class="input-group input-group-sm"> <div class="input-group input-group-sm">
<input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="0" onkeyup="diskonSatuanMenu(${params.id}, '${params.nama_produk}', this.value)"> <input type="number" name="diskon_satuan" oninput="inputNum(this)" class="form-control rounded-0" value="0" onkeyup="diskonSatuanMenu(${globalId}, '${params.nama_produk}', this.value)">
</div> </div>
</td> </td>
<td class="text-center"> <td class="text-center">
<button class="btn btn-danger btn-sm" onclick="deleteMenu(${params.id})"> <button class="btn btn-danger btn-sm" onclick="deleteMenu(${globalId})">
<i class="fas fa-trash"></i> <i class="fas fa-trash"></i>
</button> </button>
</td> </td>
@ -314,11 +318,12 @@
// delete menu from table and calculate qty and total price menu ordered // delete menu from table and calculate qty and total price menu ordered
function deleteMenu(params) { function deleteMenu(params) {
console.log(params);
var table = document.getElementById("order-menus"); var table = document.getElementById("order-menus");
var index = 0; var index = 0;
for (var i = 1, row; row = table.rows[i]; i++) { for (var i = 1, row; row = table.rows[i]; i++) {
var id = row.getAttribute('data-id'); var id = row.getAttribute('data-row-id');
if (id == params) { if (id == params) {
index = i; index = i;
@ -358,11 +363,12 @@
// increment qty menu ordered // increment qty menu ordered
function incrementMenu(params, nama_produk) { function incrementMenu(params, nama_produk) {
console.log(params);
var table = document.getElementById("order-menus"); var table = document.getElementById("order-menus");
var index = 0; var index = 0;
for (var i = 1, row; row = table.rows[i]; i++) { for (var i = 1, row; row = table.rows[i]; i++) {
var id = row.getAttribute('data-id'); var id = row.getAttribute('data-row-id');
if (id == params) { if (id == params) {
index = i; index = i;
@ -373,6 +379,7 @@
var diskonSatuan = table.rows[index].getAttribute('data-diskon-satuan'); var diskonSatuan = table.rows[index].getAttribute('data-diskon-satuan');
var total = table.rows[index].getAttribute('data-total'); var total = table.rows[index].getAttribute('data-total');
var harga = table.rows[index].getAttribute('data-harga'); var harga = table.rows[index].getAttribute('data-harga');
var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute('data-keterangan');
qty = parseInt(qty) + 1; qty = parseInt(qty) + 1;
var totalLama = parseInt(total) + parseInt(harga); var totalLama = parseInt(total) + parseInt(harga);
@ -389,7 +396,7 @@
<br> <br>
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'} ${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.."> <input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-0" placeholder="Keterangan..">
</div> </div>
</td> </td>
`; `;
@ -417,7 +424,7 @@
var index = 0; var index = 0;
for (var i = 1, row; row = table.rows[i]; i++) { for (var i = 1, row; row = table.rows[i]; i++) {
var id = row.getAttribute('data-id'); var id = row.getAttribute('data-row-id');
if (id == params) { if (id == params) {
index = i; index = i;
@ -428,6 +435,7 @@
var diskonSatuan = table.rows[index].getAttribute('data-diskon-satuan'); var diskonSatuan = table.rows[index].getAttribute('data-diskon-satuan');
var total = table.rows[index].getAttribute('data-total'); var total = table.rows[index].getAttribute('data-total');
var harga = table.rows[index].getAttribute('data-harga'); var harga = table.rows[index].getAttribute('data-harga');
var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute('data-keterangan');
if (qty > 1) { if (qty > 1) {
qty = parseInt(qty) - 1; qty = parseInt(qty) - 1;
@ -445,7 +453,7 @@
<br> <br>
${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'} ${(diskonSatuan > 0) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.."> <input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-0" placeholder="Keterangan..">
</div> </div>
</td> </td>
`; `;
@ -474,7 +482,7 @@
var index = 0; var index = 0;
for (var i = 1, row; row = table.rows[i]; i++) { for (var i = 1, row; row = table.rows[i]; i++) {
var id = row.getAttribute('data-id'); var id = row.getAttribute('data-row-id');
if (id == params) { if (id == params) {
index = i; index = i;
@ -485,7 +493,7 @@
var diskonSatuan = parseInt(diskon); var diskonSatuan = parseInt(diskon);
var total = table.rows[index].getAttribute('data-total'); var total = table.rows[index].getAttribute('data-total');
var harga = table.rows[index].getAttribute('data-harga'); var harga = table.rows[index].getAttribute('data-harga');
var valueKeterangan = table.rows[index].cells[0].getElementsByTagName('input')[0].getAttribute('data-keterangan');
// if (diskonSatuan >= 1) { // if (diskonSatuan >= 1) {
// console.log(diskonSatuan); // console.log(diskonSatuan);
@ -504,7 +512,7 @@
<br> <br>
${(diskonSatuan >= 1) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'} ${(diskonSatuan >= 1) ? '<small class="text-primary"><s>Rp. ' + (harga * qty) + '</s></small> | <small class="text-danger">Rp. ' + total + '</small>' : '<small class="text-primary">Rp. ' + totalLama + '</small>'}
<div class="input-group input-group-sm mt-1"> <div class="input-group input-group-sm mt-1">
<input type="text" name="keterangan_satuan" class="form-control rounded-0" placeholder="Keterangan.."> <input type="text" name="keterangan_satuan" data-keterangan="${valueKeterangan}" value="${valueKeterangan}" class="form-control rounded-0" placeholder="Keterangan..">
</div> </div>
</td> </td>
`; `;
@ -894,7 +902,7 @@
// clear selected menus // clear selected menus
function clearSelected() { function clearSelected() {
// console.log(selectedMenus); console.log('batal');
for (var i = 0; i < selectedMenus.length; i++) { for (var i = 0; i < selectedMenus.length; i++) {
changeOrderedMenus(selectedMenus[i].id, 'batal'); changeOrderedMenus(selectedMenus[i].id, 'batal');
menu_terpilih.innerHTML = ` `; menu_terpilih.innerHTML = ` `;