Files
sibedas/resources/js/request-assignment/request-assignment.js

68 lines
2.1 KiB
JavaScript

import { Grid } from "gridjs/dist/gridjs.umd.js";
import "gridjs/dist/gridjs.umd.js";
import GlobalConfig from "../global-config";
class RequestAssignment {
init() {
this.initTableRequestAssignment();
}
initTableRequestAssignment() {
new Grid({
columns: [
"ID",
"Name",
"Condition",
"Registration Number",
"Document Number",
"Address",
"Status",
"Function Type",
"Consultation Type",
"Due Date",
],
search: {
server: {
url: (prev, keyword) => `${prev}?search=${keyword}`,
},
},
pagination: {
limit: 15,
server: {
url: (prev, page) =>
`${prev}${prev.includes("?") ? "&" : "?"}page=${
page + 1
}`,
},
},
sort: true,
server: {
url: `${GlobalConfig.apiHost}/api/request-assignments`,
credentials: "include",
headers: {
Authorization: `Bearer ${localStorage.getItem("token")}`,
"Content-Type": "application/json",
},
then: (data) =>
data.data.map((item) => [
item.id,
item.name,
item.condition,
item.registration_number,
item.document_number,
item.address,
item.status_name,
item.function_type,
item.consultation_type,
item.due_date,
]),
total: (data) => data.meta.total,
},
}).render(document.getElementById("table-request-assignment"));
}
}
document.addEventListener("DOMContentLoaded", function (e) {
new RequestAssignment().init();
});