Я думаю, что переоценил этот процесс до такой степени, что потерял себя.
У меня есть курсы, которые проходят сотрудники.Каждый урок помечается как завершенный, когда сотрудник заканчивает урок.
Я пытаюсь проверить, закончил ли сотрудник все уроки курса, а затем пометить курс как завершенный, если все уроки завершены.
Что у меня есть.
Запрос на уроки курса.
Запрос на законченный урок от сотрудника.
Я застрял на проверке, что урок каждого курса завершил урок и возвращает значение true или false.
public function lessoncomplete(Request $request)
{
//LessonLog::create(request()->all());
$user_id = $request->user;
$lesson_id = $request->lesson;
$course_id = $request->course;
$lessonLog = new LessonLog;
$lessonLog->user_id = $user_id;
$lessonLog->course_id = $course_id;
$lessonLog->lesson_id = $lesson_id;
$lessonLog->save();
//get course lessons
$course_lessons = Lesson::where('course_id', $course_id)->get();
// получить уроки, которые пользователь завершил
$user_lessons = LessonLog::where('user_id', $user_id)->where('course_id', $course_id)->get();
// проверяем, завершен ли каждый урок для пользователя.
foreach ($ course_lesson as $ lesson) {$ complete = false;
foreach ($user_lessons as $user_lesson) {
if ($user_lesson->lesson_id == $lesson->id) {
$completed = true;
break;
}
}
//If $completed is still false, then the user has not completed the course
dd($completed);
}
return response()->json(['success' => 1]);
}