Kategori::all(), ]); } public function getUser(Request $request) { try { //code... $user = User::orderBy('created_at', 'DESC'); $user->with(['kategori']); if ($request->has('search')) { $user->where('name', 'like', '%' . $request->search . '%'); } return response()->json([ "status" => "success", "message" => "Data user berhasil diambil", "result" => $user->paginate(10) ], 200); } catch (\Throwable $th) { //throw $th; return response()->json([ "status" => "error", "message" => $th->getMessage(), ], 400); } } public function storeUser(Request $request) { $validator = Validator::make($request->all(), [ 'name' => 'required|string|max:50', 'email' => 'required|max:50|email|unique:users,email', 'password' => 'required', 'roles' => 'required', ]); if ($validator->fails()) { return response()->json(['message' => 'Validation failed', 'errors' => $validator->errors()->first()], 400); } $data = new User; $data->name = $request->name; $data->email = $request->email; $data->password = bcrypt($request->password); $data->role = $request->roles; if ($request->has('category') || $request->category !== null || $request->category !== "") { $data->kategori_id = $request->category; } $data->save(); // Berikan respon dengan data yang berhasil dibuat return response()->json(['message' => 'Data created successfully', 'data' => $data], 201); } public function updateUser(Request $request) { $validator = Validator::make($request->all(), [ 'id' => 'required', 'name' => 'required|string|max:50', 'email' => 'required|max:50|email|unique:users,email, ' . $request->id, 'roles' => 'required', ]); if ($validator->fails()) { return response()->json(['message' => 'Validation failed', 'errors' => $validator->errors()->first()], 400); } $user = User::find($request->id); if (!$user) { return response()->json(['message' => 'Data not found'], 404); } $user->name = $request->name; $user->email = $request->email; if ($request->has('password') && $request->password !== "" && $request->password !== null) { $request['password'] = bcrypt($request->password); $user->password = $request->password; } if ($request->has('category') || $request->category !== null || $request->category !== "") { $user->kategori_id = $request->category; } $user->role = $request->roles; $user->save(); return response()->json(['message' => 'Data updated successfully', 'data' => $user], 200); } public function deleteUser(Request $request) { $user = User::find($request->id); if (!$user) { return response()->json(['message' => 'Data not found'], 404); } $user->delete(); return response()->json(['message' => 'Data deleted successfully'], 200); } }