智慧教务系统
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

132 lines
6.3 KiB

<?php
// +----------------------------------------------------------------------
// | 学员端API路由配置
// +----------------------------------------------------------------------
use think\facade\Route;
// 学员信息管理
Route::group('student', function () {
// 获取学员列表
Route::get('mychild', 'app\api\controller\student\StudentController@getStudentList');
// 测试获取学员列表(无认证)
Route::get('test-list', 'app\api\controller\student\StudentController@testStudentList');
// 获取学员概览信息(首页用)
Route::get('summary/:student_id', 'app\api\controller\student\StudentController@getStudentSummary');
// 获取学员详细信息
Route::get('info/:student_id', 'app\api\controller\student\StudentController@getStudentInfo');
// 更新学员信息
Route::put('update', 'app\api\controller\student\StudentController@updateStudentInfo');
// 上传头像
Route::post('avatar', 'app\api\controller\student\StudentController@uploadAvatar');
Route::post('add-child', 'app\api\controller\student\StudentController@addChild');
Route::post('parent/child/update', 'parent.ParentController/updateChildInfo');
Route::get('parent/child/courses', 'parent.ParentController/getChildCourses');
Route::get('parent/child/orders', 'parent.ParentController/getChildOrders');
Route::get('parent/child/services', 'parent.ParentController/getChildServices');
Route::get('parent/child/messages', 'parent.ParentController/getChildMessages');
Route::get('parent/child/contracts', 'parent.ParentController/getChildContracts');
})->middleware(['ApiCheckToken']);
// 体测数据管理
Route::group('physical-test', function () {
// 获取体测记录列表
Route::get('list', 'app\api\controller\student\PhysicalTestController@getPhysicalTestList');
// 获取体测详情
Route::get('detail/:test_id', 'app\api\controller\student\PhysicalTestController@getPhysicalTestDetail');
// 获取体测趋势数据
Route::get('trend', 'app\api\controller\student\PhysicalTestController@getPhysicalTestTrend');
// PDF转图片分享
Route::post('share/:test_id', 'app\api\controller\student\PhysicalTestController@sharePhysicalTestPdf');
})->middleware(['ApiCheckToken']);
// 课程预约管理
Route::group('course-booking', function () {
// 获取可预约课程
Route::get('available/:student_id', 'app\\api\\controller\\student\\CourseBookingController@getAvailableCourses');
// 创建预约
Route::post('create', 'app\\api\\controller\\student\\CourseBookingController@createBooking');
// 我的预约列表
Route::get('my-list/:student_id', 'app\\api\\controller\\student\\CourseBookingController@getMyBookingList');
// 取消预约
Route::post('cancel', 'app\\api\\controller\\student\\CourseBookingController@cancelBooking');
// 检查预约冲突
Route::post('check-conflict', 'app\\api\\controller\\student\\CourseBookingController@checkBookingConflict');
})->middleware(['ApiCheckToken']);
// 课程安排查看
Route::group('course-schedule', function () {
// 获取课程安排列表
Route::get('list/:student_id', 'app\api\controller\student\StudentController@getCourseScheduleList');
// 获取课程详情
Route::get('detail/:schedule_id', 'app\api\controller\student\StudentController@getCourseScheduleDetail');
// 申请课程请假
Route::post('leave', 'app\api\controller\student\StudentController@requestCourseLeave');
})->middleware(['ApiCheckToken']);
// 订单管理
Route::group('order', function () {
// 获取订单列表
Route::get('list', 'app\api\controller\student\OrderController@getOrderList');
// 获取订单详情
Route::get('detail/:order_id', 'app\api\controller\student\OrderController@getOrderDetail');
// 获取订单统计
Route::get('stats', 'app\api\controller\student\OrderController@getOrderStats');
})->middleware(['ApiCheckToken']);
// 支付管理
Route::group('payment', function () {
// 创建支付
Route::post('create', 'student.PaymentController@createPayment');
// 查询支付状态
Route::get('status/:order_id', 'student.PaymentController@getPaymentStatus');
// 支付回调
Route::post('callback', 'student.PaymentController@paymentCallback');
})->middleware(['ApiCheckToken']);
// 合同管理
Route::group('contract', function () {
// 获取合同列表
Route::get('list', 'app\api\controller\student\ContractController@getContractList');
// 获取合同详情
Route::get('detail/:contract_id', 'app\api\controller\student\ContractController@getContractDetail');
// 获取签署表单配置
Route::get('sign-form/:contract_id', 'app\api\controller\student\ContractController@getSignForm');
// 提交合同签署
Route::post('sign', 'app\api\controller\student\ContractController@signContract');
// 下载合同
Route::get('download/:contract_id', 'app\api\controller\student\ContractController@downloadContract');
// 获取学员基本信息
Route::get('student-info', 'app\api\controller\student\ContractController@getStudentInfo');
});
// 知识库
Route::group('knowledge', function () {
// 获取知识内容列表
Route::get('list', 'student.KnowledgeController@getKnowledgeList');
// 获取内容详情
Route::get('detail/:knowledge_id', 'student.KnowledgeController@getKnowledgeDetail');
// 获取分类列表
Route::get('categories', 'student.KnowledgeController@getKnowledgeCategories');
})->middleware(['ApiCheckToken']);
// 消息管理
Route::group('message', function () {
// 获取消息列表
Route::get('list', 'student.MessageController@getMessageList');
// 获取消息详情
Route::get('detail/:message_id', 'student.MessageController@getMessageDetail');
// 标记已读
Route::put('read/:message_id', 'student.MessageController@markAsRead');
// 批量标记已读
Route::put('read-batch', 'student.MessageController@markBatchAsRead');
})->middleware(['ApiCheckToken']);
// 学员登录相关(无需token验证)
Route::group('auth', function () {
Route::post('login/wechat', 'login.WechatLogin/login');
Route::post('wechat/bind', 'login.WechatLogin/bind');
Route::get('wechat/auth_url', 'login.WechatLogin/getAuthUrl');
Route::get('wechat/callback', 'login.WechatLogin/callback');
});