master
cody 4 months ago
parent 0f13aec30c
commit 1307eeefa3

@ -333,6 +333,36 @@ class CourseController extends BaseController
return $this->success($url);
}
/**
* @OA\Get(
* path="/api/admin/courses/check-qrcode",
* tags={"课程管理"},
* summary="签到二维码",
* description="",
* @OA\Parameter(name="id", in="query", @OA\Schema(type="string"), required=true, description="id"),
* @OA\Parameter(name="token", in="query", @OA\Schema(type="string"), required=true, description="token"),
* @OA\Response(
* response="200",
* description="暂无"
* )
* )
*/
public function checkQrcode()
{
$all = \request()->all();
$messages = [
'id.required' => 'Id必填',
];
$validator = Validator::make($all, [
'id' => 'required'
], $messages);
if ($validator->fails()) {
return $this->fail([ResponseCode::ERROR_PARAMETER, implode(',', $validator->errors()->all())]);
}
$url = (new Course())->getCourseCheckQrcode($all['id']);
return $this->success($url);
}
/**
* @OA\Get(
* path="/api/admin/courses/send-sms",

@ -185,5 +185,33 @@ class Course extends SoftDeletesModel
return $url;
}
/**
* 获取课程报名小程序码
*/
public function getCourseCheckQrcode($courseId)
{
$course = Course::find($courseId);
$path = config('filesystems.disks.public.root') . '/course_check_qrcode/' . $course->id . '.png';
$url = config('filesystems.disks.public.url') . '/course_check_qrcode/' . $course->id . '.png';
$fileSys = new Filesystem();
if ($fileSys->exists($path)) {
return $url;
}
$config = [
'app_id' => \config('app.applet_appid'),
'secret' => \config('app.applet_secret')
];
$app = Factory::miniProgram($config);
$tmp = $app->app_code->get('packages/sign/course?course_id=' . $courseId, [
// todo:: 版本切换
// 'env_version' => "release" // 正式版
'env_version' => "trial" // 体验版
]);
$dir = dirname($path);
$fileSys->ensureDirectoryExists($dir, 0755, true);
$fileSys->put($path, $tmp);
return $url;
}
}

@ -77,7 +77,7 @@ class CourseContent extends SoftDeletesModel
'secret' => \config('app.applet_secret')
];
$app = Factory::miniProgram($config);
$tmp = $app->app_code->get("/packages/sign/index?course_id={$courseContent->course_id}&course_content_id={$courseContentId}", [
$tmp = $app->app_code->get('/packages/sign/index?course_content_id=' . $courseContentId, [
// 'env_version' => "release" // 正式版
'env_version' => "trial" // 体验版
]);

@ -48,6 +48,7 @@ Route::group(["namespace" => "Admin", "prefix" => "admin"], function () {
Route::post('courses/excel-show', [\App\Http\Controllers\Admin\CourseController::class, "excelShow"]);
Route::post('courses/import', [\App\Http\Controllers\Admin\CourseController::class, "import"]);
Route::get('courses/qrcode', [\App\Http\Controllers\Admin\CourseController::class, "qrcode"]);
Route::get('courses/check-qrcode', [\App\Http\Controllers\Admin\CourseController::class, "checkQrcode"]);
Route::get('courses/send-sms', [\App\Http\Controllers\Admin\CourseController::class, "sendSms"]);
// 排课

Loading…
Cancel
Save