master
cody 4 months ago
parent 9ca181292a
commit 1f08f9cc7a

@ -364,6 +364,36 @@ class CourseController extends BaseController
return $this->success($url);
}
/**
* @OA\Get(
* path="/api/admin/courses/evaluation-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 evaluationQrcode()
{
$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())->getEvaluationQrcode($all['id']);
return $this->success($url);
}
/**
* @OA\Get(
* path="/api/admin/courses/send-sms",

@ -213,5 +213,33 @@ class Course extends SoftDeletesModel
return $url;
}
/**
* 获取问卷小程序码
*/
public function getEvaluationQrcode($courseId)
{
$course = Course::find($courseId);
$path = config('filesystems.disks.public.root') . '/course_evaluation_qrcode/' . $course->id . '.png';
$url = config('filesystems.disks.public.url') . '/course_evaluation_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/surveyFill/index?id=' . $courseId, [
// todo:: 版本切换
// 'env_version' => "release" // 正式版
'env_version' => "trial" // 体验版
]);
$dir = dirname($path);
$fileSys->ensureDirectoryExists($dir, 0755, true);
$fileSys->put($path, $tmp);
return $url;
}
}

@ -50,6 +50,7 @@ Route::group(["namespace" => "Admin", "prefix" => "admin"], function () {
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/evaluation-qrcode', [\App\Http\Controllers\Admin\CourseController::class, "evaluationQrcode"]);
Route::get('courses/send-sms', [\App\Http\Controllers\Admin\CourseController::class, "sendSms"]);
// 排课

Loading…
Cancel
Save