Finalize value on all-report

This commit is contained in:
2026-08-05 15:33:24 +07:00
parent 2b09537122
commit e8b00b10d2
11 changed files with 479 additions and 230 deletions
+60 -30
View File
@@ -51,8 +51,6 @@ function printPDF(data) {
let vehicleCashMasalahJml = 0,
vehicleCashMasalahNilai = 0;
let vehicleCashTotal = 0;
// init print nontunai
let vehicleCashlessCasualJml = 0,
vehicleCashlessCasualNilai = 0;
@@ -67,6 +65,10 @@ function printPDF(data) {
let vehicleCashlessMasalahJml = 0,
vehicleCashlessMasalahNilai = 0;
let vehicleInCashSubTotal = 0;
let vehicleOutCashSubTotal = 0;
let vehicleOutCashlessSubTotal = 0;
let vehicleCashlessTotal = 0;
let grandTotal = 0;
@@ -83,6 +85,7 @@ function printPDF(data) {
totalCashless: 0,
};
// debugger;
const casualIn = cash.masuk.casual;
const tCasual = cash.keluar.casual;
const tLost = cash.keluar.lost;
@@ -91,8 +94,6 @@ function printPDF(data) {
const tManualMix = cash.keluar.manualmix ?? { jumlah: 0, income: 0 };
const tMasalah = cash.keluar.masalah ?? { jumlah: 0, income: 0 };
const vehicleCashTotal = cash.totalCash || 0;
const nCasual = cashless.keluar.casual;
const nLost = cashless.keluar.lost;
const nMember = cashless.keluar.member;
@@ -101,11 +102,15 @@ function printPDF(data) {
const nMasalah = cashless.keluar.masalah ?? { jumlah: 0, income: 0 };
const vehicleCashlessTotal = cashless.totalCashless || 0;
vehicleInCashSubTotal += casualIn.jumlah || 0;
vehicleOutCashSubTotal += cash.tunaiOut || 0;
vehicleOutCashlessSubTotal += nCasual.jumlah || 0;
// baris TUNAI
vehicleBody.push([
{ content: cash.jenis_mobil, rowSpan: 2, styles: { valign: "middle" } },
{ content: "Tunai", styles: { fillColor: [40, 167, 69], textColor: 255, fontStyle: "bold" } },
cash.total,
casualIn.jumlah,
cash.tunaiOut,
tCasual.jumlah,
rupiah(tCasual.income),
@@ -126,7 +131,8 @@ function printPDF(data) {
vehicleBody.push([
{ content: "Non Tunai", styles: { fillColor: [255, 193, 7], textColor: 0, fontStyle: "bold" } },
cash.total,
// cash.total,
casualIn.jumlah,
cashless.nonTunaiOut,
nCasual.jumlah,
@@ -203,8 +209,8 @@ function printPDF(data) {
vehicleBody.push([
{ content: "SUB TOTAL\nKENDARAAN", rowSpan: 2, styles: { fontStyle: "bold" } },
{ content: "Tunai", styles: { fillColor: [40, 167, 69], textColor: 255, fontStyle: "bold" } },
"",
"",
{ content: vehicleInCashSubTotal, styles: { textColor: [40, 167, 69], fontStyle: "bold" } },
{ content: vehicleOutCashSubTotal, styles: { textColor: [40, 167, 69], fontStyle: "bold" } },
vehicleCashCasualJml,
rupiah(vehicleCashCasualNilai),
vehicleCashLostJml,
@@ -221,9 +227,9 @@ function printPDF(data) {
]);
vehicleBody.push([
{ content: "NON TUNAI", styles: { fillColor: [255, 193, 7], fontStyle: "bold" } },
"",
"",
{ content: vehicleCashlessCasualJml, styles: { fontStyle: "bold" } },
{ content: vehicleInCashSubTotal, styles: { textColor: [255, 193, 7], fontStyle: "bold" } },
{ content: vehicleOutCashlessSubTotal, styles: { textColor: [255, 193, 7], fontStyle: "bold" } },
vehicleCashlessCasualJml,
rupiah(vehicleCashlessCasualNilai),
vehicleCashlessLostJml,
rupiah(vehicleCashlessLostNilai),
@@ -238,7 +244,9 @@ function printPDF(data) {
rupiah(subTotalCashless),
]);
vehicleBody.push([
{ content: "GRAND TOTAL\nKENDARAAN", colSpan: 4, styles: { fontStyle: "bold", halign: "center" } },
{ content: "GRAND TOTAL\nKENDARAAN", colSpan: 2, styles: { fontStyle: "bold", halign: "center" } },
{ content: vehicleInCashSubTotal + vehicleInCashSubTotal, styles: { fontStyle: "bold" } },
{ content: vehicleOutCashSubTotal + vehicleOutCashlessSubTotal, styles: { fontStyle: "bold" } },
{ content: vehicleCashCasualJml + vehicleCashlessCasualJml, styles: { fontStyle: "bold" } }, //Jumlah Casual
rupiah(vehicleCashCasualNilai + vehicleCashlessCasualNilai), //Income Casual
{ content: vehicleCashLostJml + vehicleCashlessLostJml, styles: { fontStyle: "bold" } }, //Jumlah Lost
@@ -338,6 +346,11 @@ function printPDF(data) {
officerCashlessManualMixNilai = 0;
let officerCashlessMasalahJml = 0,
officerCashlessMasalahNilai = 0;
let officerInCashSubTotal = 0;
let officerOutCashSubTotal = 0;
let officerOutCashlessSubTotal = 0;
let pgrandTotal = 0;
data.officer.tunai.forEach(function (cash) {
@@ -352,6 +365,7 @@ function printPDF(data) {
totalCashless: 0,
};
// debugger;
const casualIn = cash.masuk.casual;
const tCasual = cash.keluar.casual;
const tLost = cash.keluar.lost;
@@ -369,6 +383,10 @@ function printPDF(data) {
const nManualMix = cashless.keluar.manualmix ?? { jumlah: 0, income: 0 };
const totalNonTunai = cashless.totalCashless || 0;
officerInCashSubTotal += casualIn.jumlah || 0;
officerOutCashSubTotal += cash.tunaiOut || 0;
officerOutCashlessSubTotal += nCasual.jumlah || 0;
// baris TUNAI
officerBody.push([
{
@@ -377,7 +395,7 @@ function printPDF(data) {
styles: { valign: "middle" },
},
{ content: "Tunai", styles: { fillColor: [40, 167, 69], textColor: 255, fontStyle: "bold" } },
cash.total,
0,
cash.tunaiOut,
tCasual.jumlah,
rupiah(tCasual.income),
@@ -398,7 +416,7 @@ function printPDF(data) {
officerBody.push([
{ content: "Non Tunai", styles: { fillColor: [255, 193, 7], textColor: 0, fontStyle: "bold" } },
cash.total,
0,
cashless.nonTunaiOut,
nCasual.jumlah,
@@ -474,9 +492,9 @@ function printPDF(data) {
officerBody.push([
{ content: "SUB TOTAL\NPer Petugas", rowSpan: 2, styles: { fontStyle: "bold" } },
{ content: "Tunai", styles: { fillColor: [40, 167, 69], textColor: 255, fontStyle: "bold" } },
"",
"",
{ content: officerCashCasualJml, styles: { fontStyle: "bold" } },
{ content: officerInCashSubTotal, styles: { textColor: [40, 167, 69], fontStyle: "bold" } },
{ content: officerOutCashSubTotal, styles: { textColor: [40, 167, 69], fontStyle: "bold" } },
officerCashCasualJml,
rupiah(officerCashCasualNilai),
officerCashLostJml,
rupiah(officerCashLostNilai),
@@ -492,9 +510,9 @@ function printPDF(data) {
]);
officerBody.push([
{ content: "NON TUNAI", styles: { fillColor: [255, 193, 7], fontStyle: "bold" } },
"",
"",
{ content: officerCashlessCasualJml, styles: { fontStyle: "bold" } },
{ content: officerInCashSubTotal, styles: { textColor: [255, 193, 7], fontStyle: "bold" } },
{ content: officerOutCashlessSubTotal, styles: { textColor: [255, 193, 7], fontStyle: "bold" } },
officerCashlessCasualJml,
rupiah(officerCashlessCasualNilai),
officerCashlessLostJml,
rupiah(officerCashlessLostNilai),
@@ -509,7 +527,9 @@ function printPDF(data) {
rupiah(subTotalCashless),
]);
officerBody.push([
{ content: "GRAND TOTAL\nPETUGAS", colSpan: 4, styles: { fontStyle: "bold", halign: "center" } },
{ content: "GRAND TOTAL\nPETUGAS", colSpan: 2, styles: { fontStyle: "bold", halign: "center" } },
{ content: officerInCashSubTotal + officerInCashSubTotal, styles: { fontStyle: "bold" } },
{ content: officerOutCashSubTotal + officerOutCashlessSubTotal, styles: { fontStyle: "bold" } },
{ content: officerCashCasualJml + officerCashlessCasualJml, styles: { fontStyle: "bold" } }, //Jumlah Casual
rupiah(officerCashCasualNilai + officerCashlessCasualNilai), //Income Casual
{ content: officerCashLostJml + officerCashlessLostJml, styles: { fontStyle: "bold" } }, //Jumlah Lost
@@ -614,6 +634,9 @@ function printPDF(data) {
let paymentCashlessMasalahJml = 0,
paymentCashlessMasalahNilai = 0;
let paymentInCashSubTotal = 0;
let paymentOutCashSubTotal = 0;
let paymentOutCashlessSubTotal = 0;
// let payTotalNonTunaiJml = 0,
// payTotalNonTunaiNilai = 0;
let payGrandTotal = 0;
@@ -632,6 +655,8 @@ function printPDF(data) {
// debugger;
let typePayment = paymentType(cash.typePayment);
const casualIn = cash.masuk.casual;
const tCasual = cash.keluar.casual;
const tLost = cash.keluar.lost;
const tMember = cash.keluar.member;
@@ -648,6 +673,9 @@ function printPDF(data) {
const nMasalah = cashless.keluar.masalah ?? { jumlah: 0, income: 0 };
const totalNonTunai = cashless.totalCashless || 0;
paymentInCashSubTotal += casualIn.jumlah || 0;
paymentOutCashSubTotal += cash.tunaiOut || 0;
paymentOutCashlessSubTotal += nCasual.jumlah || 0;
// baris TUNAI
paymentBody.push([
{
@@ -656,7 +684,7 @@ function printPDF(data) {
styles: { valign: "middle" },
},
{ content: "Tunai", styles: { fillColor: [40, 167, 69], textColor: 255, fontStyle: "bold" } },
cash.total,
0,
cash.tunaiOut,
tCasual.jumlah,
rupiah(tCasual.income),
@@ -677,7 +705,7 @@ function printPDF(data) {
paymentBody.push([
{ content: "Non Tunai", styles: { fillColor: [255, 193, 7], textColor: 0, fontStyle: "bold" } },
cash.total,
0,
cashless.nonTunaiOut,
nCasual.jumlah,
@@ -755,9 +783,9 @@ function printPDF(data) {
paymentBody.push([
{ content: "SUB TOTAL\NPer Pembayaran", rowSpan: 2, styles: { fontStyle: "bold" } },
{ content: "Tunai", styles: { fillColor: [40, 167, 69], textColor: 255, fontStyle: "bold" } },
"",
"",
{ content: paymentCashCasualJml, styles: { fontStyle: "bold" } },
{ content: paymentInCashSubTotal, styles: { textColor: [40, 167, 69], fontStyle: "bold" } },
{ content: paymentOutCashSubTotal, styles: { textColor: [40, 167, 69], fontStyle: "bold" } },
paymentCashCasualJml,
rupiah(paymentCashCasualNilai),
paymentCashLostJml,
rupiah(paymentCashLostNilai),
@@ -773,9 +801,9 @@ function printPDF(data) {
]);
paymentBody.push([
{ content: "NON TUNAI", styles: { fillColor: [255, 193, 7], fontStyle: "bold" } },
"",
"",
{ content: paymentCashlessCasualJml, styles: { fontStyle: "bold" } },
{ content: paymentInCashSubTotal, styles: { textColor: [255, 193, 7], fontStyle: "bold" } },
{ content: paymentOutCashlessSubTotal, styles: { textColor: [255, 193, 7], fontStyle: "bold" } },
paymentCashlessCasualJml,
rupiah(paymentCashlessCasualNilai),
paymentCashlessLostJml,
rupiah(paymentCashlessLostNilai),
@@ -790,7 +818,9 @@ function printPDF(data) {
rupiah(subTotalCashless),
]);
paymentBody.push([
{ content: "GRAND TOTAL\nPEMBAYARAN", colSpan: 4, styles: { fontStyle: "bold", halign: "center" } },
{ content: "GRAND TOTAL\nPEMBAYARAN", colSpan: 2, styles: { fontStyle: "bold", halign: "center" } },
{ content: paymentInCashSubTotal + paymentInCashSubTotal, styles: { fontStyle: "bold" } },
{ content: paymentOutCashSubTotal + paymentOutCashlessSubTotal, styles: { fontStyle: "bold" } },
{ content: paymentCashCasualJml + paymentCashlessCasualJml, styles: { fontStyle: "bold" } }, //Jumlah Casual
rupiah(paymentCashCasualNilai + paymentCashlessCasualNilai), //Income Casual
{ content: paymentCashLostJml + paymentCashlessLostJml, styles: { fontStyle: "bold" } }, //Jumlah Lost
+92 -50
View File
@@ -1,6 +1,6 @@
window.ReportApp = window.ReportAp || {};
window.ReportApp.lastResponse = null;
let lastResponse = null;
// let lastResponse = null;
$(document).ready(function () {
// $("#modaltanggal").modal("show");
@@ -13,7 +13,13 @@ $(document).ready(function () {
// loadData();
// },
// });
//
$(document).on("keydown", function (e) {
if ("e" == "Escape") {
e.PreventDefault();
$("#loadingOverlay").addClass("d-none");
}
});
const date = $("#tanggalCari").datepicker({
format: "yyyy-mm-dd",
autoclose: true,
@@ -39,6 +45,7 @@ $(document).ready(function () {
// var today = Date.now().format("yyyy-mm-dd");
// $("#tanggalCari").val();
// $("#tanggalCari").val(getToday());
$("#loadingBar").removeClass("d-none");
loadData();
// lastResponse = loadData();
@@ -58,27 +65,27 @@ $(document).ready(function () {
// console.log(e);
// });
$(".btn-export-pdf").on("click", async function () {
// $('.cetak').css('display','block');
// $('.user').css('display','block');
// const { jsPDF } = window.jspdf;
// const doc = new jsPDF("p", "pt", "a4");
// // ambil elemen tabel
// const table = document.getElementById("cetak");
// const canvas = await html2canvas(table, { scale: 2 });
// const imgData = canvas.toDataURL("image/png");
// const imgWidth = doc.internal.pageSize.getWidth();
// const imgHeight = (canvas.height * imgWidth) / canvas.width;
// doc.addImage(imgData, "PNG", 0, 20, imgWidth, imgHeight);
// doc.save(`Rekap Harian.pdf`);
//
// jsPDF Autotable
if (!lastResponse) {
alert("Data belum tersedia");
return;
}
printPDF(lastResponse.vehicle);
});
// $(".btn-export-pdf").on("click", async function () {
// $('.cetak').css('display','block');
// $('.user').css('display','block');
// const { jsPDF } = window.jspdf;
// const doc = new jsPDF("p", "pt", "a4");
// // ambil elemen tabel
// const table = document.getElementById("cetak");
// const canvas = await html2canvas(table, { scale: 2 });
// const imgData = canvas.toDataURL("image/png");
// const imgWidth = doc.internal.pageSize.getWidth();
// const imgHeight = (canvas.height * imgWidth) / canvas.width;
// doc.addImage(imgData, "PNG", 0, 20, imgWidth, imgHeight);
// doc.save(`Rekap Harian.pdf`);
//
// jsPDF Autotable
// if (!lastResponse) {
// alert("Data belum tersedia");
// return;
// }
// printPDF(lastResponse.vehicle);
// });
// console.log(document.getElementById("cetak"));
// console.log(document.getElementById("date-table"));
});
@@ -103,10 +110,11 @@ function loadData(tanggalMulai, tanggalAkhir) {
},
beforeSend: function () {
console.log("Loading data...");
$("#loadingOverlay").removeClass("d-none");
},
success: function (response) {
window.ReportApp.lastResponse = response;
lastResponse = response; // ✅ tambah ini
// lastResponse = response; // ✅ tambah ini
tableVehicle(response.vehicle);
tableOfficer(response.officer);
tablePayment(response.payment);
@@ -289,6 +297,9 @@ function loadData(tanggalMulai, tanggalAkhir) {
console.log("Error:", xhr);
alert("Terjadi kesalahan saat memuat data");
},
complete: function () {
$("#loadingOverlay").addClass("d-none");
},
});
}
@@ -309,6 +320,9 @@ function tableVehicle(response) {
let html = "";
let onData = "";
let jmlCashOut = 0;
let inCashCasual = 0;
let jmlCashCasual = 0;
let incomeCashCasual = 0;
@@ -325,6 +339,8 @@ function tableVehicle(response) {
let incomeCashMasalah = 0;
// Init data cashless
let jmlCashlessOut = 0;
let jmlCashlessCasual = 0;
let incomeCashlessCasual = 0;
@@ -355,7 +371,7 @@ function tableVehicle(response) {
totalCashless: 0,
};
let casualIn = cash.total;
let casualIn = cash.masuk.casual;
let tunaiOut = cash.tunaiOut;
// ===== DATA TUNAI =====
let tCasual = cash.keluar.casual;
@@ -379,6 +395,10 @@ function tableVehicle(response) {
let totalNonTunai = cashless.totalCashless || 0;
// init data cash
//
inCashCasual += casualIn.jumlah;
jmlCashOut += tunaiOut;
jmlCashCasual += cash.keluar.casual.jumlah;
incomeCashCasual += cash.keluar.casual.income;
@@ -394,6 +414,8 @@ function tableVehicle(response) {
subTotalIncomeCash = incomeCashCasual + incomeCashLost + incomeCashMember + incomeCashManual;
// ========= init data cashless
jmlCashlessOut += nonTunaiOut;
jmlCashlessCasual += cashless.keluar.casual.jumlah;
incomeCashlessCasual += cashless.keluar.casual.income;
@@ -409,7 +431,8 @@ function tableVehicle(response) {
subTotalIncomeCashless =
incomeCashlessCasual + incomeCashlessLost + incomeCashlessMember + incomeCashlessManual;
//
totalAllIn = inCashCasual + inCashCasual;
totalAllOut = jmlCashOut + jmlCashlessOut;
grandTotal = subTotalIncomeCash + subTotalIncomeCashless;
// console.log(tLost.income);
@@ -420,7 +443,7 @@ function tableVehicle(response) {
<td rowspan="2" style="text-align: left;"><strong>${cash.jenis_mobil}</strong></td>
<td style="text-align: left;"><span class="badge bg-success">Tunai</span></td>
<td>${casualIn}</td>
<td>${casualIn.jumlah}</td>
<td>${tunaiOut}</td>
<td>${tCasual.jumlah}</td>
@@ -447,7 +470,7 @@ function tableVehicle(response) {
<tr>
<td style="text-align: left;"><span class="badge bg-warning">Non Tunai</span></td>
<td>${casualIn}</td>
<td>${casualIn.jumlah}</td>
<td>${nonTunaiOut}</td>
<td>${nCasual.jumlah}</td>
@@ -478,8 +501,8 @@ function tableVehicle(response) {
<tr class="table">
<td rowspan="2" style="text-align: center;"><strong>SUB TOTAL<br>KENDARAAN</strong></td>
<td style="text-align: left;"><span class="badge bg-success">Tunai</span></td>
<td>0</td>
<td>0</td>
<td data-value="${jmlCashlessOut}"><strong>${inCashCasual}</strong></td>
<td data-value="${jmlCashOut}"><strong>${rupiah(jmlCashOut)}</strong></td>
<td data-value="${jmlCashCasual}">${jmlCashCasual}</td>
<td data-value="${incomeCashCasual}">${rupiah(incomeCashCasual)}</td>
<td data-value="${jmlCashLost}">${jmlCashLost}</td>
@@ -496,8 +519,8 @@ function tableVehicle(response) {
</tr>
<tr>
<td style="text-align: left;"><span class="badge bg-warning">NON TUNAI</td>
<td>0</td>
<td>0</td>
<td data-value="${jmlCashlessOut}"><strong>${inCashCasual}</strong></td>
<td data-value="${jmlCashlessOut}"><strong>${rupiah(jmlCashlessOut)}</strong></td>
<td>${jmlCashlessCasual}</td>
<td data-value="${incomeCashlessCasual}">${rupiah(incomeCashlessCasual)}</td>
<td data-value="${jmlCashlessLost}">${rupiah(jmlCashlessLost)}</td>
@@ -513,8 +536,9 @@ function tableVehicle(response) {
<td data-value="${subTotalIncomeCashless}">${rupiah(subTotalIncomeCashless)}</td>
</tr>
<tr class="table">
<td colspan="3" class="text-center"><strong>GRAND TOTAL<br>Pendapatan Per Kendaraan</strong></td>
<td colspan="0"></td>
<td colspan="2" class="text-center"><strong>GRAND TOTAL<br>Pendapatan Per Kendaraan</strong></td>
<td colspan="0">${totalAllIn}</td>
<td colspan="0">${totalAllOut}</td>
<td colspan="0">${jmlCashCasual + jmlCashlessCasual}</td>
<td colspan="0" data-value="${incomeCashCasual + incomeCashlessCasual}">${rupiah(incomeCashCasual + incomeCashlessCasual)}</td>
<td colspan="0" data-value="${jmlCashLost + jmlCashlessLost}">${rupiah(jmlCashLost + jmlCashlessLost)}</td>
@@ -561,6 +585,8 @@ function tableOfficer(response) {
let html = "";
// init petugas data cash
let jmlCashOut = 0;
let jmlCashCasual = 0;
let incomeCashCasual = 0;
@@ -574,6 +600,8 @@ function tableOfficer(response) {
let incomeCashManual = 0;
// init petugas data cash
let jmlCashlessOut = 0;
let jmlCashlessCasual = 0;
let incomeCashlessCasual = 0;
@@ -625,6 +653,8 @@ function tableOfficer(response) {
let totalNonTunai = cashless.totalCashless || 0;
// get data cash
jmlCashOut += tunaiOut;
jmlCashCasual += cash.keluar.casual.jumlah;
incomeCashCasual += cash.keluar.casual.income;
@@ -640,6 +670,8 @@ function tableOfficer(response) {
subTotalIncomeCash = incomeCashCasual + incomeCashLost + incomeCashMember + incomeCashManual;
// ========= init data cashless
jmlCashlessOut += nonTunaiOut;
jmlCashlessCasual += cashless.keluar.casual.jumlah;
incomeCashlessCasual += cashless.keluar.casual.income;
@@ -655,7 +687,7 @@ function tableOfficer(response) {
subTotalIncomeCashless =
incomeCashlessCasual + incomeCashlessLost + incomeCashlessMember + incomeCashlessManual;
//
totalAllOut = jmlCashOut + jmlCashlessOut;
grandTotal = subTotalIncomeCash + subTotalIncomeCashless;
//========= init table body by petugas
html += `
@@ -721,8 +753,8 @@ function tableOfficer(response) {
<tr class="table">
<td rowspan="2" style="text-align: center;"><strong>SUB TOTAL<br>Per Petugas</strong></td>
<td style="text-align: left;"><span class="badge bg-success">Tunai</span></td>
<td>0</td>
<td>0</td>
<td><strong>0</strong></td>
<td data-value="${incomeCashCasual}"><strong>${rupiah(jmlCashOut)}</strong></td>
<td data-value="${jmlCashCasual}">${rupiah(jmlCashCasual)}</td>
<td data-value="${incomeCashCasual}">${rupiah(incomeCashCasual)}</td>
<td data-value="${jmlCashLost}">${rupiah(jmlCashLost)}</td>
@@ -739,8 +771,8 @@ function tableOfficer(response) {
</tr>
<tr>
<td style="text-align: left;"><span class="badge bg-warning">NON TUNAI</td>
<td>0</td>
<td>0</td>
<td><strong>0</strong></td>
<td data-value="${incomeCashlessCasual}"><strong>${rupiah(jmlCashlessOut)}</strong></td>
<td>${jmlCashlessCasual}</td>
<td data-value="${incomeCashlessCasual}">${rupiah(incomeCashlessCasual)}</td>
<td data-value="${jmlCashlessLost}">${rupiah(jmlCashlessLost)}</td>
@@ -756,8 +788,9 @@ function tableOfficer(response) {
<td data-value="${subTotalIncomeCashless}">${rupiah(subTotalIncomeCashless)}</td>
</tr>
<tr class="table">
<td colspan="3" class="text-center"><strong>GRAND TOTAL<br>Pendapatan Per Petugas</strong></td>
<td colspan="0"></td>
<td colspan="2" class="text-center"><strong>GRAND TOTAL<br>Pendapatan Per Petugas</strong></td>
<td colspan="0">0</td>
<td colspan="0">${totalAllOut}</td>
<td colspan="0">${jmlCashCasual + jmlCashlessCasual}</td>
<td colspan="0" data-value="${incomeCashCasual + incomeCashlessCasual}">${rupiah(incomeCashCasual + incomeCashlessCasual)}</td>
<td colspan="0" data-value="${jmlCashLost + jmlCashlessLost}">${rupiah(jmlCashLost + jmlCashlessLost)}</td>
@@ -804,6 +837,7 @@ function tablePayment(response) {
let html = "";
// init data cash
let jmlCashOut = 0;
let jmlCashCasual = 0;
let incomeCashCasual = 0;
@@ -817,6 +851,8 @@ function tablePayment(response) {
let incomeCashManual = 0;
// init data cashless
let jmlCashlessOut = 0;
let jmlCashlessCasual = 0;
let incomeCashlessCasual = 0;
@@ -849,7 +885,8 @@ function tablePayment(response) {
let payment = paymentType(cash.typePayment);
// let payment = cash.typePayment;
let casualIn = cash.total;
let casualIn = cash.masuk.casual;
let casualOut = cash.masuk.casual;
let tunaiOut = cash.tunaiOut;
// ===== DATA TUNAI =====
let tCasual = cash.keluar.casual;
@@ -868,6 +905,7 @@ function tablePayment(response) {
let totalTunai = cash.totalCash || 0;
let totalNonTunai = cashless.totalCashless || 0;
jmlCashOut += tunaiOut;
jmlCashCasual += cash.keluar.casual.jumlah;
incomeCashCasual += cash.keluar.casual.income;
@@ -883,6 +921,8 @@ function tablePayment(response) {
subTotalIncomeCash = incomeCashCasual + incomeCashLost + incomeCashMember + incomeCashManual;
// ========= init data cashless
jmlCashlessOut += nonTunaiOut;
jmlCashlessCasual += cashless.keluar.casual.jumlah;
incomeCashlessCasual += cashless.keluar.casual.income;
@@ -898,6 +938,7 @@ function tablePayment(response) {
subTotalIncomeCashless =
incomeCashlessCasual + incomeCashlessLost + incomeCashlessMember + incomeCashlessManual;
totalAllOut = jmlCashOut + jmlCashlessOut;
grandTotal = subTotalIncomeCash + subTotalIncomeCashless;
html += `
@@ -905,7 +946,7 @@ function tablePayment(response) {
<td rowspan="2" style="text-align: left;"><strong>${payment}</strong></td>
<td style="text-align: left;"><span class="badge bg-success">Tunai</span></td>
<td>${casualIn}</td>
<td>${casualIn.jumlah}</td>
<td>${tunaiOut}</td>
<td>${tCasual.jumlah}</td>
@@ -932,7 +973,7 @@ function tablePayment(response) {
<tr>
<td style="text-align: left;"><span class="badge bg-warning">Non Tunai</span></td>
<td>${casualIn}</td>
<td>${casualIn.jumlah}</td>
<td>${nonTunaiOut}</td>
<td>${nCasual.jumlah}</td>
@@ -963,8 +1004,8 @@ function tablePayment(response) {
<tr class="table">
<td rowspan="2" style="text-align: center;"><strong>SUB TOTAL<br>Per Jenis Pembayaran</strong></td>
<td style="text-align: left;"><span class="badge bg-success">Tunai</span></td>
<td>0</td>
<td>0</td>
<td><strong>0</strong></td>
<td data-value="${incomeCashCasual}"><strong>${rupiah(jmlCashOut)}</strong></td>
<td data-value="${jmlCashCasual}">${rupiah(jmlCashCasual)}</td>
<td data-value="${incomeCashCasual}">${rupiah(incomeCashCasual)}</td>
<td data-value="${jmlCashLost}">${rupiah(jmlCashLost)}</td>
@@ -981,8 +1022,8 @@ function tablePayment(response) {
</tr>
<tr>
<td style="text-align: left;"><span class="badge bg-warning">NON TUNAI</td>
<td>0</td>
<td>0</td>
<td><strong>0</strong></td>
<td data-value="${incomeCashlessCasual}"><strong>${rupiah(jmlCashlessOut)}</strong></td>
<td>${jmlCashlessCasual}</td>
<td data-value="${incomeCashlessCasual}">${rupiah(incomeCashlessCasual)}</td>
<td data-value="${jmlCashlessLost}">${rupiah(jmlCashlessLost)}</td>
@@ -998,8 +1039,9 @@ function tablePayment(response) {
<td data-value="${subTotalIncomeCashless}">${rupiah(subTotalIncomeCashless)}</td>
</tr>
<tr class="table">
<td colspan="3" class="text-center"><strong>GRAND TOTAL<br>Pendapatan Per Pembayaran</strong></td>
<td colspan="0"></td>
<td colspan="2" class="text-center"><strong>GRAND TOTAL<br>Pendapatan Per Pembayaran</strong></td>
<td colspan="0">0</td>
<td colspan="0">${totalAllOut}</td>
<td colspan="0">${jmlCashCasual + jmlCashlessCasual}</td>
<td colspan="0" data-value="${incomeCashCasual + incomeCashlessCasual}">${rupiah(incomeCashCasual + incomeCashlessCasual)}</td>
<td colspan="0" data-value="${jmlCashLost + jmlCashlessLost}">${rupiah(jmlCashLost + jmlCashlessLost)}</td>