From 5bb78ecf8a06fa31c7abf995e607e2fee5c25966 Mon Sep 17 00:00:00 2001 From: Ryan Ez Zerqti Date: Tue, 28 Apr 2026 15:18:05 +0200 Subject: [PATCH] fix update course and chpayer --- .../moneybuddy/dtos/course/UpdateCourseRequest.java | 6 ++++++ .../fr/moneybuddy/service/ChapterService.java | 11 ++++++++--- .../fr/moneybuddy/service/CourseService.java | 5 ++++- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/moneybuddy/fr/moneybuddy/dtos/course/UpdateCourseRequest.java b/src/main/java/moneybuddy/fr/moneybuddy/dtos/course/UpdateCourseRequest.java index 9a63e3d..cb37fc7 100644 --- a/src/main/java/moneybuddy/fr/moneybuddy/dtos/course/UpdateCourseRequest.java +++ b/src/main/java/moneybuddy/fr/moneybuddy/dtos/course/UpdateCourseRequest.java @@ -15,8 +15,14 @@ public class UpdateCourseRequest { @PositiveOrZero(message = "Readtime has to be > 0") private int readTime; + @PositiveOrZero(message = "Level has to be >= 0") + private int level; + @PositiveOrZero(message = "Order has to be >= 0") private int order; + @PositiveOrZero(message = "coinReward has to be >= 0") + private int coinReward; + private MultipartFile file; } diff --git a/src/main/java/moneybuddy/fr/moneybuddy/service/ChapterService.java b/src/main/java/moneybuddy/fr/moneybuddy/service/ChapterService.java index 371aa42..02ccba9 100644 --- a/src/main/java/moneybuddy/fr/moneybuddy/service/ChapterService.java +++ b/src/main/java/moneybuddy/fr/moneybuddy/service/ChapterService.java @@ -121,9 +121,6 @@ public Chapter updateCourse(String chapterId, UpdateChapterRequest req) throws FileUploadException, JsonMappingException, JsonProcessingException { Chapter chapter = getTotalChapter(chapterId); - chapter.setOrder(Optional.ofNullable(req.getOrder()).orElse(chapter.getOrder())); - chapter.setLevel(Optional.ofNullable(req.getLevel()).orElse(chapter.getLevel())); - chapter.setCoinReward(Optional.ofNullable(req.getCoinReward()).orElse(chapter.getCoinReward())); chapter.setLocked(Optional.ofNullable(req.isLocked()).orElse(chapter.isLocked())); if (!req.getTitle().isEmpty()) chapter.setTitle(req.getTitle()); @@ -136,6 +133,14 @@ public Chapter updateCourse(String chapterId, UpdateChapterRequest req) cloudflareService.remove(chapter.getImage_url()); chapter.setImage_url(image_url); } + + if (req.getSubAccountRole().equals(SubAccountRole.CHILD)) { + chapter.setOrder(Optional.ofNullable(req.getOrder()).orElse(chapter.getOrder())); + chapter.setLevel(Optional.ofNullable(req.getLevel()).orElse(chapter.getLevel())); + chapter.setCoinReward( + Optional.ofNullable(req.getCoinReward()).orElse(chapter.getCoinReward())); + } + return chapterRepository.save(chapter); } } diff --git a/src/main/java/moneybuddy/fr/moneybuddy/service/CourseService.java b/src/main/java/moneybuddy/fr/moneybuddy/service/CourseService.java index 4467d6b..4829c44 100644 --- a/src/main/java/moneybuddy/fr/moneybuddy/service/CourseService.java +++ b/src/main/java/moneybuddy/fr/moneybuddy/service/CourseService.java @@ -104,7 +104,6 @@ public Course updateCourse(String courseId, UpdateCourseRequest req) Course course = getById(courseId); course.setReadTime(Optional.ofNullable(req.getReadTime()).orElse(course.getReadTime())); - course.setOrder(Optional.ofNullable(req.getOrder()).orElse(course.getOrder())); course.setLocked(Optional.ofNullable(req.isLocked()).orElse(course.isLocked())); if (!req.getTitle().isEmpty()) course.setTitle(req.getTitle()); @@ -115,6 +114,10 @@ public Course updateCourse(String courseId, UpdateCourseRequest req) course.setImage_url(image_url); } + course.setOrder(Optional.ofNullable(req.getOrder()).orElse(course.getOrder())); + course.setLevel(Optional.ofNullable(req.getLevel()).orElse(course.getLevel())); + course.setCoinReward(Optional.ofNullable(req.getCoinReward()).orElse(course.getCoinReward())); + courseRepository.save(course); return course; }