submissionService->submitAssignment([ 'user_id' => $user->id, ...$request->validated() ]); return back()->with('success', 'Assignment submitted successfully.'); } /** * Update/Grade the specified submission. */ public function update(UpdateAssignmentSubmissionRequest $request, string $id) { $user = Auth::user(); $this->submissionService->gradeSubmission([ 'grader_id' => $user->id, ...$request->validated() ], $id); return back()->with('success', 'Assignment graded successfully.'); } /** * Get student submissions for an assignment. */ public function getStudentSubmissions(string $assignmentId) { $submissions = $this->submissionService->getStudentSubmissions($assignmentId, Auth::id()); return response()->json($submissions); } /** * Get a specific submission. */ public function show(string $id) { $submission = $this->submissionService->getSubmissionById($id); return response()->json($submission); } }