request->get(); $service = new CourseScheduleService(); return success('获取成功', $service->getScheduleList($data)); } /** * 获取课程安排详情 */ public function getScheduleInfo() { $scheduleId = $this->request->get('schedule_id', 0); if (empty($scheduleId)) { return fail('课程安排ID不能为空'); } $service = new CourseScheduleService(); $result = $service->getScheduleInfo($scheduleId); if (isset($result['code']) && $result['code'] == 0) { return fail($result['msg'] ?? '获取课程安排详情失败'); } return success('获取成功', $result); } /** * 创建课程安排 */ public function createSchedule() { $data = $this->request->post(); $service = new CourseScheduleService(); $result = $service->createSchedule($data); if ($result['code'] == 1) { return success($result['msg'], $result['data']); } else { return fail($result['msg']); } } /** * 批量创建课程安排 */ public function batchCreateSchedule() { $data = $this->request->post(); $service = new CourseScheduleService(); $result = $service->batchCreateSchedule($data); if ($result['code'] == 1) { return success($result['msg'], $result['data']); } else { return fail($result['msg']); } } /** * 更新课程安排 */ public function updateSchedule() { $data = $this->request->post(); $scheduleId = $data['schedule_id'] ?? 0; if (empty($scheduleId)) { return fail('课程安排ID不能为空'); } $service = new CourseScheduleService(); $result = $service->updateSchedule($scheduleId, $data); if ($result['code'] == 1) { return success($result['msg'], $result['data']); } else { return fail($result['msg']); } } /** * 删除课程安排 */ public function deleteSchedule() { $scheduleId = $this->request->post('schedule_id', 0); if (empty($scheduleId)) { return fail('课程安排ID不能为空'); } $service = new CourseScheduleService(); $result = $service->deleteSchedule($scheduleId); if ($result['code'] == 1) { return success($result['msg']); } else { return fail($result['msg']); } } /** * 获取场地列表 */ public function getVenueList() { $data = $this->request->get(); $service = new CourseScheduleService(); return success('获取成功', $service->getVenueList($data)); } /** * 获取场地可用时间 */ public function getVenueAvailableTime() { $venueId = $this->request->get('venue_id', 0); $date = $this->request->get('date', ''); if (empty($venueId)) { return fail('场地ID不能为空'); } if (empty($date)) { return fail('日期不能为空'); } $service = new CourseScheduleService(); return success('获取成功', $service->getVenueAvailableTime($venueId, $date)); } /** * 检查教练时间冲突 */ public function checkCoachConflict() { $data = $this->request->get(); $service = new CourseScheduleService(); return success('检查完成', $service->checkCoachConflict($data)); } /** * 获取课程安排统计 */ public function getScheduleStatistics() { $data = $this->request->get(); $service = new CourseScheduleService(); return success('获取成功', $service->getScheduleStatistics($data)); } /** * 学员加入课程安排 */ public function joinSchedule() { $data = $this->request->post(); $service = new CourseScheduleService(); $result = $service->joinSchedule($data); if ($result['code'] == 1) { return success($result['msg'], $result['data']); } else { return fail($result['msg']); } } /** * 学员退出课程安排 */ public function leaveSchedule() { $data = $this->request->post(); $service = new CourseScheduleService(); $result = $service->leaveSchedule($data); if ($result['code'] == 1) { return success($result['msg']); } else { return fail($result['msg']); } } /** * 升级等待位学员为正式学员 */ public function upgradeStudentSchedule() { $data = $this->request->post(); // 验证必要参数 if (empty($data['resources_id']) || empty($data['schedule_id'])) { return fail('参数不完整'); } if (empty($data['from_schedule_type']) || empty($data['to_schedule_type'])) { return fail('升级类型参数不完整'); } $service = new CourseScheduleService(); $result = $service->upgradeStudentSchedule($data); if ($result['code'] == 1) { return success($result['msg'], $result['data'] ?? []); } else { return fail($result['msg']); } } /** * 获取筛选选项(教练、课程、班级等) */ public function getFilterOptions() { $data = $this->request->get(); $service = new CourseScheduleService(); return success('获取成功', $service->getFilterOptions($data)); } }