ajax()) {
$data = PerangkatDaerah::all();
return DataTables::of($data)
->addIndexColumn()
->addColumn('action', function($row){
$btn = '';
$btn .= ' ';
return $btn;
})
->rawColumns(['action'])
->make(true);
}
return view('master.perangkat_daerah.index');
}
public function store(Request $request)
{
$validated = $request->validate([
'nama_pd' => 'required|string|max:255',
]);
PerangkatDaerah::create($validated);
return response()->json(['success' => 'Perangkat Daerah berhasil disimpan.']);
}
public function update(Request $request, PerangkatDaerah $perangkatDaerah)
{
$validated = $request->validate([
'nama_pd' => 'required|string|max:255',
]);
$perangkatDaerah->update($validated);
return response()->json(['success' => 'Perangkat Daerah berhasil diperbarui.']);
}
public function destroy(PerangkatDaerah $perangkatDaerah)
{
if (!$perangkatDaerah) {
return response()->json(['error' => 'Data tidak ditemukan.'], 404);
}
$perangkatDaerah->delete();
return response()->json(['success' => 'Perangkat Daerah berhasil dihapus.']);
}
public function import(Request $request)
{
$request->validate(['file' => 'required|mimes:xls,xlsx']);
try {
Excel::import(new PerangkatDaerahImport, $request->file('file'));
return back()->with('success', 'Data Perangkat Daerah berhasil diimpor.');
} catch (\Exception $e) {
return back()->with('error', 'Gagal mengimpor data: ' . $e->getMessage());
}
}
}