get('size') ?: 10; $uml = Uml::query(); if ($request->has('search')) { $s = $request->get('search'); $s = strtolower($s); $uml->where(function($query) use ($s) { $query->whereRaw('lower(nama) like (?)',["%{$s}%"]); })->orWhere('kode', 'like', "%{$s}%"); } if ($request->has('sort')) { $order = $request->get('sort'); $d = substr($order, 0, 1); $dir = $d === '-' ? 'desc' : 'asc'; $order = $d === '-' ? substr($order, 1) : $order; $uml->orderBy($order, $dir); } $list = $uml->paginate($per_page); return response()->json($list); } public function create() { return view('admin.uml.create'); } /** * Store a newly created resource in storage. */ public function store(Request $request) { $validated = $request->validate( [ 'nama' => 'required', 'kode' => 'required', 'email' => 'email', ], [ 'nama' => 'Nama UML harus diisi', 'kode' => 'Kode Daerah harus diisi', 'email' => 'Email harus dalam format yang benar' ] ); Uml::create($request->all()); return redirect()->route('admin.uml.index')->with('success', 'Data berhasil ditambahkan.'); } public function show(string $id) { $uml = Uml::findOrFail($id); return view('admin.uml.show', [ 'uml' => $uml ]); } public function edit(string $id) { $uml = Uml::findOrFail($id); return view('admin.uml.edit', [ 'uml' => $uml ]); } public function update(Request $request, string $id) { $uml = Uml::findOrFail($id); $validated = $request->validate( [ 'nama' => 'required', 'kode' => 'required', 'email' => 'email', ], [ 'nama' => 'Nama UML harus diisi', 'kode' => 'Kode Daerah harus diisi', 'email' => 'Email harus dalam format yang benar' ] ); $uml->update($request->all()); return redirect()->route('admin.uml.index')->with('success', 'Data berhasil diubah.'); } public function destroy(string $id) { $uml = Uml::findOrFail($id); $uml->delete(); return redirect()->route('admin.uml.index')->with('success', 'Data berhasil dihapus.'); } }