$(document).ready(function () { $(document).on("change", ".form-select", function () { if ($("option:selected", this).val() == "") { $(".nama").css("display", "none"); $(".nopol").css("display", "none"); $(".nocard").css("display", "none"); $(".notrans").css("display", "none"); // $(".site").val(''); } else if ($("option:selected", this).val() == "nama") { $(".nama").css("display", "block"); $(".nopol").css("display", "none"); $(".nocard").css("display", "none"); $(".notrans").css("display", "none"); $(".input-default").val(""); } else if ($("option:selected", this).val() == "nopol") { $(".nama").css("display", "none"); $(".nopol").css("display", "block"); $(".nocard").css("display", "none"); $(".notrans").css("display", "none"); $(".input-default").val(""); } else if ($("option:selected", this).val() == "nocard") { $(".nama").css("display", "none"); $(".nopol").css("display", "none"); $(".nocard").css("display", "block"); $(".notrans").css("display", "none"); $(".input-default").val(""); } else if ($("option:selected", this).val() == "notrans") { $(".nama").css("display", "none"); $(".nopol").css("display", "none"); $(".nocard").css("display", "none"); $(".notrans").css("display", "block"); $(".input-default").val(""); } else { $(".position").css("display", "none"); $(".level-area").css("display", "none"); $(".input-default").val(""); } }); var url = $("#example").data("url"); $("#search-button").on("click", function () { let searchBy = $("#search-by").val(); let searchValue = $("#search-value").val().trim(); let memberType = $("#member-type").val(); let department = $("#department").val(); let vehicle = $("#vehicle").val(); // ========================= // VALIDASI PENCARIAN // ========================= if (searchBy !== "" && searchValue === "") { let label = { nama: "Nama", alamat: "Alamat", nopol: "No. Polisi", nocard: "No. Card", notrans: "No. Transaksi", }; alert("Harap masukkan " + (label[searchBy] || "kata kunci")); $("#search-value").focus(); return; } // ========================= // DEBUG // ========================= console.log({ searchBy, searchValue, memberType, department, vehicle, }); // ========================= // AJAX // ========================= $.ajax({ url: url, type: "POST", data: $("#search-form").serialize(), headers: { "X-CSRF-TOKEN": $('meta[name="csrf-token"]').attr("content") }, dataType: "json", beforeSend: function () { $("#search-button").prop("disabled", true).html(` Mencari... `); }, success: function (response) { var tbody = $("#example tbody"); tbody.empty(); if (response.length !== 0) { // Kelompokkan data berdasarkan notrans var groupedData = {}; response.forEach((element) => { if (!groupedData[element.notrans]) { groupedData[element.notrans] = []; } groupedData[element.notrans].push(element); }); // Generate HTML Object.keys(groupedData).forEach((notrans, index) => { var rows = groupedData[notrans]; var rowspan = rows.length; rows.forEach((element, rowIndex) => { var rowHtml = ` ${rowIndex === 0 ? `${index + 1}` : ""} ${rowIndex === 0 ? `${element.notrans}` : ""} ${rowIndex === 0 ? `${element.nama}` : ""} ${rowIndex === 0 ? `${element.alamat}` : ""} ${rowIndex === 0 ? `${element.telepon}` : ""} ${rowIndex === 0 ? `${element.jmember}` : ""} ${rowIndex === 0 ? `${element.dept}` : ""} ${rowIndex === 0 ? `${element.awal}
${element.akhir}` : ""} ${rowIndex === 0 ? ` ${[...new Set(rows.map((r) => `${r.nopol || "No. Polisi tidak ada"} (${r.vehicle || ""})`))].join("
")} ` : ""} ${rowIndex === 0 ? `${[...new Set(rows.map((r) => r.no_card || "Tidak ada kartu"))].join("
")}` : ""} `; // ${rowIndex === 0 ? ` // // // // ` : ''} tbody.append(rowHtml); }); }); } else { alert("Data tidak ditemukan."); $("#example tbody").html( `

Tidak ditemukan data

`, ); } }, }); }); });