validated(); $result = $this->teacherClassService->getList($params); return $this->SuccessPage($result->items(), $result->total()); } /** * 获取老师班级关联详情 */ public function detail(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->detail($params['id']); return $this->Success($result); } /** * 创建老师班级关联 */ public function create(TeacherClassRequest $request): JsonResponse { $data = $request->validated(); $result = $this->teacherClassService->create($data); return $this->Success($result); } /** * 更新老师班级关联 */ public function update(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->update($params['id'], $params); return $this->Success($result); } /** * 删除老师班级关联 */ public function delete(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $this->teacherClassService->delete($params['id']); return $this->Success(); } /** * 批量删除老师班级关联 */ public function batchDelete(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $this->teacherClassService->batchDelete($params['ids']); return $this->Success(); } /** * 获取老师的班级列表 */ public function teacherClasses(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->getTeacherClasses($params['teacher_id']); return $this->Success($result); } /** * 获取当前用户的班级列表 */ public function myClasses(TeacherClassRequest $request): JsonResponse { $teacherId = $request->user()->id; $result = $this->teacherClassService->getTeacherClasses($teacherId); return $this->Success($result); } /** * 获取班级的老师列表 */ public function classTeachers(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->getClassTeachers($params['class_id']); return $this->Success($result); } /** * 获取学校的老师列表 */ public function schoolTeachers(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->getSchoolTeachers($params['school_id']); return $this->Success($result); } /** * 获取班主任列表 */ public function headmans(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->getHeadmans( $params['school_id'] ?? null, $params['grade_id'] ?? null ); return $this->Success($result); } /** * 批量分配老师到班级 */ public function batchAssign(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->batchAssignTeachersToClass( $params['teacher_ids'], $params['class_id'], $params['grade_id'] ?? null ); return $this->Success($result); } /** * 批量移除老师班级关联 */ public function batchRemove(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->batchRemoveTeachersFromClass( $params['teacher_ids'], $params['class_id'] ); return $this->Success(['removed_count' => $result]); } /** * 设置班主任 */ public function setHeadman(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->setHeadman( $params['teacher_id'], $params['class_id'] ); return $this->Success(['success' => $result]); } /** * 取消班主任 */ public function removeHeadman(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->removeHeadman($params['class_id']); return $this->Success(['success' => $result]); } /** * 获取老师班级统计信息 */ public function stats(TeacherClassRequest $request): JsonResponse { $params = $request->validated(); $result = $this->teacherClassService->getTeacherClassStats($params['teacher_id']); return $this->Success($result); } /** * 获取当前用户班级统计信息 */ public function myStats(TeacherClassRequest $request): JsonResponse { $teacherId = $request->user()->id; $result = $this->teacherClassService->getTeacherClassStats($teacherId); return $this->Success($result); } }