Обновлен компонент LessonList: изменена логика генерации уроков при открытии формы создания, добавлены обработчики для редактирования уроков. Обновлены компоненты Item и LessonItems для поддержки новых функций редактирования. Упрощена логика запуска генерации уроков.
This commit is contained in:
@@ -102,12 +102,6 @@ const LessonList = () => {
|
||||
return lessonsData.sort((a, b) => (a.date < b.date ? 1 : -1))
|
||||
}, [groupByDate, isSuccess, sorted])
|
||||
|
||||
useEffect(() => {
|
||||
if (isTeacher(user) && !isSuccessGenerateLessons) {
|
||||
generateLessonsMutation(courseId)
|
||||
}
|
||||
}, [isSuccessGenerateLessons, user, courseId, generateLessonsMutation])
|
||||
|
||||
useEffect(() => {
|
||||
if (isSuccessGenerateLessons) {
|
||||
console.log(generateLessons)
|
||||
@@ -205,6 +199,31 @@ const LessonList = () => {
|
||||
setShowForm(false)
|
||||
setEditLesson(null)
|
||||
setSuggestedLessonToCreate(null)
|
||||
|
||||
// Сбрасываем флаги генерации, чтобы при повторном открытии формы
|
||||
// генерация запускалась снова
|
||||
if (generateLessons) {
|
||||
// Сбрасываем данные генерации (если в API есть такая возможность)
|
||||
// или при повторном открытии формы будем перезапрашивать данные
|
||||
}
|
||||
}
|
||||
|
||||
// Обработчик открытия формы создания новой лекции
|
||||
const handleOpenForm = () => {
|
||||
setShowForm(true)
|
||||
|
||||
// Запускаем генерацию лекций только при открытии формы создания новой лекции
|
||||
// и если генерация ещё не была запущена
|
||||
if (isTeacher(user) && !editLesson && !generateLessons && !isLoadingGenerateLessons) {
|
||||
generateLessonsMutation(courseId)
|
||||
}
|
||||
}
|
||||
|
||||
// Обработчик редактирования существующей лекции
|
||||
const handleEditLesson = (lesson) => {
|
||||
setEditLesson(lesson)
|
||||
setShowForm(true)
|
||||
// Не запускаем генерацию при редактировании
|
||||
}
|
||||
|
||||
if (isLoading) {
|
||||
@@ -284,7 +303,7 @@ const LessonList = () => {
|
||||
<Button
|
||||
leftIcon={<AddIcon />}
|
||||
colorScheme="green"
|
||||
onClick={() => setShowForm(true)}
|
||||
onClick={handleOpenForm}
|
||||
>
|
||||
{t('journal.pl.common.create')}
|
||||
</Button>
|
||||
@@ -326,6 +345,7 @@ const LessonList = () => {
|
||||
isTeacher={isTeacher(user)}
|
||||
lessons={lessons}
|
||||
setlessonToDelete={setlessonToDelete}
|
||||
setEditLesson={handleEditLesson}
|
||||
key={date}
|
||||
/>
|
||||
))}
|
||||
|
||||
Reference in New Issue
Block a user