2026-01-26 11:09:39 +07:00

66 lines
2.6 KiB
JavaScript

datatableAkses.bootstrapTable({
url: "/datatable/akses",
showRefresh: true,
sortable: true,
search: true,
searchOnEnterKey: false,
searchHighlight: true,
pagination: true,
serverSide:true,
pageSize: 10,
pageList: [10, 20, 30],
cookie: true,
cookieIdTable: "table_master_kategori",
icons: {
refresh: "fas fa-sync-alt",
},
columns: [
{
title:"Action",
formatter: function(value, row){
console.log(row);
let buttons = '';
buttons += `
<button class="btn btn-sm btn-danger me-2" onclick="deleteAkses(this)"
data-akses_file_id="${row.akses_file_id}" data-name="${row?.pegawai?.namalengkap}" data-akses="${row?.all_akses ? 'Semua Akses' : row?.akses?.name}">
<i class="fa-solid fa-trash"></i>
</button>
`
buttons += `
<button class="btn btn-sm btn-primary me-2" onclick="editAkses(this)"
data-akses_file_id="${row.akses_file_id}" data-akses="${row?.all_akses ? 1 : row?.unit_akses}"
data-pegawai_id="${row?.pegawai_id}"
data-pegawai_nama="${row?.pegawai?.namalengkap}"
data-unit_id="${row?.unit_akses}"
data-unit_nama="${row?.akses?.name}"
data-master_akses="${row?.master_akses ? 1 : 0}"
>
<i class="fa-solid fa-pencil"></i>
</button>`
return `
<div class="d-flex space-x">
${buttons}
</div>
`;
}
},
{
title:"Nama",
field:'pegawai.namalengkap'
},
{
title:"Akses",
formatter:function(value, row){
if (row?.all_akses) return 'Semua Unit';
const units = (row?.details || [])
.filter(detail => detail?.statusenabled)
.map(detail => detail?.unit?.name)
.filter(Boolean);
if (units.length > 0) return units.join(', ');
return row?.akses?.name || '-';
}
}
],
});