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.
192 lines
9.6 KiB
192 lines
9.6 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');
|
|
});
|
|
|
|
// 知识库(测试版本,无需token)
|
|
Route::group('knowledge-test', function () {
|
|
// 获取知识文章列表
|
|
Route::get('list/:student_id', 'app\api\controller\student\KnowledgeController@getKnowledgeList');
|
|
// 获取知识分类列表
|
|
Route::get('categories', 'app\api\controller\student\KnowledgeController@getKnowledgeCategories');
|
|
// 获取推荐文章
|
|
Route::get('recommend/:student_id', 'app\api\controller\student\KnowledgeController@getRecommendArticles');
|
|
// 获取文章详情
|
|
Route::get('detail/:id', 'app\api\controller\student\KnowledgeController@getKnowledgeDetail');
|
|
// 标记文章已读
|
|
Route::post('mark-read', 'app\api\controller\student\KnowledgeController@markArticleRead');
|
|
// 收藏/取消收藏文章
|
|
Route::post('toggle-favorite', 'app\api\controller\student\KnowledgeController@toggleArticleFavorite');
|
|
// 获取知识库统计
|
|
Route::get('stats/:student_id', 'app\api\controller\student\KnowledgeController@getKnowledgeStats');
|
|
// 搜索知识文章
|
|
Route::get('search/:student_id', 'app\api\controller\student\KnowledgeController@searchKnowledgeArticles');
|
|
});
|
|
|
|
// 知识库
|
|
Route::group('knowledge', function () {
|
|
// 获取知识文章列表
|
|
Route::get('list/:student_id', 'app\api\controller\student\KnowledgeController@getKnowledgeList');
|
|
// 获取知识分类列表
|
|
Route::get('categories', 'app\api\controller\student\KnowledgeController@getKnowledgeCategories');
|
|
// 获取推荐文章
|
|
Route::get('recommend/:student_id', 'app\api\controller\student\KnowledgeController@getRecommendArticles');
|
|
// 获取文章详情
|
|
Route::get('detail/:id', 'app\api\controller\student\KnowledgeController@getKnowledgeDetail');
|
|
// 标记文章已读
|
|
Route::post('mark-read', 'app\api\controller\student\KnowledgeController@markArticleRead');
|
|
// 收藏/取消收藏文章
|
|
Route::post('toggle-favorite', 'app\api\controller\student\KnowledgeController@toggleArticleFavorite');
|
|
// 获取知识库统计
|
|
Route::get('stats/:student_id', 'app\api\controller\student\KnowledgeController@getKnowledgeStats');
|
|
// 搜索知识文章
|
|
Route::get('search/:student_id', 'app\api\controller\student\KnowledgeController@searchKnowledgeArticles');
|
|
})->middleware(['ApiCheckToken']);
|
|
|
|
// 消息管理(测试版本,无需token)
|
|
Route::group('message-test', function () {
|
|
// 获取消息列表
|
|
Route::get('list/:student_id', 'app\api\controller\student\MessageController@getMessageList');
|
|
// 获取消息详情
|
|
Route::get('detail/:message_id', 'app\api\controller\student\MessageController@getMessageDetail');
|
|
// 标记消息已读
|
|
Route::post('mark-read', 'app\api\controller\student\MessageController@markMessageRead');
|
|
// 批量标记已读
|
|
Route::post('mark-batch-read', 'app\api\controller\student\MessageController@markBatchRead');
|
|
// 获取消息统计
|
|
Route::get('stats/:student_id', 'app\api\controller\student\MessageController@getMessageStats');
|
|
// 搜索消息
|
|
Route::get('search/:student_id', 'app\api\controller\student\MessageController@searchMessages');
|
|
});
|
|
|
|
// 消息管理
|
|
Route::group('message', function () {
|
|
// 获取消息列表
|
|
Route::get('list/:student_id', 'app\api\controller\student\MessageController@getMessageList');
|
|
// 获取消息详情
|
|
Route::get('detail/:message_id', 'app\api\controller\student\MessageController@getMessageDetail');
|
|
// 标记消息已读
|
|
Route::post('mark-read', 'app\api\controller\student\MessageController@markMessageRead');
|
|
// 批量标记已读
|
|
Route::post('mark-batch-read', 'app\api\controller\student\MessageController@markBatchRead');
|
|
// 获取消息统计
|
|
Route::get('stats/:student_id', 'app\api\controller\student\MessageController@getMessageStats');
|
|
// 搜索消息
|
|
Route::get('search/:student_id', 'app\api\controller\student\MessageController@searchMessages');
|
|
})->middleware(['ApiCheckToken']);
|
|
|
|
// 学员出勤管理
|
|
Route::group('attendance', function () {
|
|
// 学员签到
|
|
Route::post('checkin', 'student.AttendanceController/checkin');
|
|
// 学员请假
|
|
Route::post('leave', 'student.AttendanceController/leave');
|
|
// 学员取消
|
|
Route::post('cancel', 'student.AttendanceController/cancel');
|
|
});
|
|
|
|
// 学员登录相关(无需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');
|
|
});
|