"use client"; import { GenericCrudTable } from "@/components/admin/reference/generic-crud-table"; import { masterDataService } from "@/lib/services/master-data.service"; import { ColumnDef } from "@tanstack/react-table"; export default function DisciplinesPage() { const columns: ColumnDef[] = [ { accessorKey: "discipline_code", header: "Code", cell: ({ row }) => ( {row.getValue("discipline_code")} ), }, { accessorKey: "code_name_th", header: "Name (TH)", }, { accessorKey: "code_name_en", header: "Name (EN)", }, { accessorKey: "is_active", header: "Status", cell: ({ row }) => ( {row.getValue("is_active") ? "Active" : "Inactive"} ), }, ]; return (
masterDataService.getDisciplines()} // Assuming generic fetch supports no args for all createFn={(data) => masterDataService.createDiscipline({ ...data, contractId: 1 })} // Default contract for now updateFn={(id, data) => Promise.reject("Not implemented yet")} // Update endpoint might need addition deleteFn={(id) => masterDataService.deleteDiscipline(id)} columns={columns} fields={[ { name: "discipline_code", label: "Code", type: "text", required: true }, { name: "code_name_th", label: "Name (TH)", type: "text", required: true }, { name: "code_name_en", label: "Name (EN)", type: "text" }, { name: "is_active", label: "Active", type: "checkbox" }, ]} />
); }