$this->service->paginated(...$request->validatedWithDefaults()), ]); } public function create(): Response { return Inertia::render('admin/users/lecturers/create', [ 'departments' => $this->departmentService->getAllForSelect(), ]); } public function store(LecturerRequest $request): RedirectResponse { $this->service->create($request->validated()); Inertia::flash('toast', ['type' => 'success', 'message' => 'Dosen berhasil ditambahkan.']); return to_route('admin.users.lecturers.index'); } public function edit(User $user): Response { $user->load(['profile', 'lecturer.department']); return Inertia::render('admin/users/lecturers/edit', [ 'user' => $user, 'departments' => $this->departmentService->getAllForSelect(), ]); } public function update(LecturerRequest $request, User $user): RedirectResponse { $this->service->update($user, $request->validated()); Inertia::flash('toast', ['type' => 'success', 'message' => 'Dosen berhasil diperbarui.']); return to_route('admin.users.lecturers.index'); } public function destroy(User $user): RedirectResponse { $this->service->delete($user); return Inertia::flash('toast', ['type' => 'success', 'message' => 'Dosen berhasil dihapus.'])->back(); } public function resetPassword(User $user): RedirectResponse { $this->service->resetPassword($user); return Inertia::flash('toast', ['type' => 'success', 'message' => 'Kata sandi berhasil direset.'])->back(); } }