2025-08-01 18:37:49 +07:00

123 lines
4.8 KiB
JavaScript

datatableMasterMenu.bootstrapTable({
url: "/dashboard/datatable/menu",
showColumns: true,
showColumnsToggleAll: true,
showRefresh: true,
sortable: true,
search: true,
searchOnEnterKey: false,
searchHighlight: true,
pagination: true,
serverSide:true,
pageSize: 10,
pageList: [10, 20, 30, 40, 50, 100, 200],
cookie: true,
cookieIdTable: "datatableMasterMenu",
icons: {
refresh: "fas fa-sync-alt", // atau ganti ke icon lain
columns: "fas fa-th-large"
},
columns: [
{
title: "Action",
field: 'master_menu_id',
formatter: function(value, row) {
let buttons = ''
buttons += `
<button class="btn btn-sm btn-primary me-2" onclick="editMasterMenu(this)" data-master_menu_id="${row.master_menu_id}"
data-nama="${row?.nama_menu}"
data-harga_public="${row?.harga_public}"
data-harga_karyawan="${row?.harga_karyawan}"
data-jenis_menu="${row?.jenis_menu}"
data-apakah_someday="${row?.apakah_someday ? 1 : 0}"
data-apakah_menu_siang="${row?.apakah_menu_siang ? 1 : 0}"
data-apakah_menu_sore="${row?.apakah_menu_sore ? 1 : 0}"
data-deskripsi="${row?.deskripsi}"
data-tgl="${encodeURIComponent(JSON.stringify(row?.tgl || []))}"
data-kalori="${encodeURIComponent(JSON.stringify(row?.kalori || []))}"
data-kategori_diet="${encodeURIComponent(JSON.stringify(row?.kategoriDiet || []))}"
>
<i class="fa-solid fa-pencil"></i>
</button>
`
buttons += `
<button class="btn btn-sm btn-danger me-2" onclick="deleteMasterMenu(this)"
data-master_menu_id="${row.master_menu_id}"
data-nama="${row?.nama_menu}"
>
<i class="fa-solid fa-trash"></i>
</button>
`
return `
<div class="d-flex space-x">
${buttons}
</div>
`;
},
width: 120
},
{
title:"Nama Menu",
field:"nama_menu",
width: 300
},
{
title:"Harga",
field:"master_menu_id",
formatter: function(value, row) {
return `<ul style="white-space: nowrap;">
<li>Public : <strong>Rp ${parseInt(row.harga_public).toLocaleString('id-ID')}</strong></li>
<li>Karyawan : <strong>Rp ${parseInt(row.harga_karyawan).toLocaleString('id-ID')}</strong></li>
</ul>`
},
width: 200
},
{
title:"Kategori",
field:"jenis_menu",
},
{
title: "Kategori Menu",
field: "master_menu_id",
formatter: function (value, row) {
if (row?.apakah_someday) {
return `<span class="badge bg-warning text-dark">Someday</span>`;
}
return `<span class="badge bg-success text-dark">Menu Normal</span>`;
}
},
{
title: "Waktu Makan",
field: "master_menu_id",
formatter: function (value, row) {
if (row?.apakah_menu_siang && row?.apakah_menu_sore) {
return `Makan Siang & Sore`;
} else if (row?.apakah_menu_siang) {
return `Makan Siang`;
} else if (row?.apakah_menu_sore) {
return `Makan Sore`;
} else {
return `-`;
}
},
width: 250
},
{
title:"Tanggal Tersedia",
field:"master_menu_id",
formatter: function(value, row){
if(row.apakah_someday) return 'Senin - Minggu'
let tglAvlb = '';
tglAvlb = row?.tgl ? row?.tgl.map(item => item?.tgl_harian).join(', ') : '-';
return tglAvlb;
}
},
],
});