/
dmuruz
/
Course_Service
Обзор
Документация
Войти
/
dmuruz
/
Course_Service
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
dev
src/main/java/org/example/manager/LessonManager.java
73 строки
3 KB
Danil Muruz
MVP
24 апр 2025, 09:39
24 апр 2025, 09:39
16b1c45
Код
Авторство
О чём код?
package org.example.manager; import org.example.dao.CourseRepository; import org.example.dao.LessonRepository; import org.example.dto.LessonDTO; import org.example.model.Course; import org.example.model.Lesson; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; import java.util.Optional; @Service public class LessonManager { @Autowired private LessonRepository lessonRepository; @Autowired private CourseRepository courseRepository; public Lesson createLesson(LessonDTO lessonDTO) { Lesson lesson = new Lesson(); lesson.setName(lessonDTO.getName()); lesson.setDescription(lessonDTO.getDescription()); lesson.setJsonSchema(lessonDTO.getJsonSchema()); lesson.setDurationSteps(lessonDTO.getDurationSteps()); lesson.setOrderNum(lessonDTO.getOrderNum()); Optional<Course> courseOpt = courseRepository.findById(lessonDTO.getCourseId()); if (courseOpt.isPresent()) { lesson.setCourse(courseOpt.get()); } else { throw new RuntimeException("Курс не найден с id: " + lessonDTO.getCourseId()); } return lessonRepository.save(lesson); } public List<Lesson> getAllLessons() { return lessonRepository.findAll(); } public Optional<Lesson> getLessonById(Long id) { return lessonRepository.findById(id); } public Lesson updateLesson(Long id, LessonDTO lessonDTO) { Optional<Lesson> optLesson = lessonRepository.findById(id); if (optLesson.isPresent()) { Lesson lesson = optLesson.get(); lesson.setName(lessonDTO.getName()); lesson.setDescription(lessonDTO.getDescription()); lesson.setJsonSchema(lessonDTO.getJsonSchema()); lesson.setDurationSteps(lessonDTO.getDurationSteps()); lesson.setOrderNum(lessonDTO.getOrderNum()); return lessonRepository.save(lesson); } throw new RuntimeException("Урок не найден с id: " + id); } public void deleteLesson(Long id) { lessonRepository.deleteById(id); } public Lesson getFirstLesson(Long courseId) { Optional<Course> courseOpt = courseRepository.findById(courseId); if (courseOpt.isPresent()) { return lessonRepository.findFirstByCourseOrderByOrderNumAsc(courseOpt.get()); } throw new RuntimeException("Курс не найден с id: " + courseId); } }