From 1a35063891a655689afc1309cc14d2efd3795033 Mon Sep 17 00:00:00 2001 From: maxnes3 <112558334+maxnes3@users.noreply.github.com> Date: Wed, 27 Dec 2023 16:40:10 +0400 Subject: [PATCH] =?UTF-8?q?Back=20=D1=80=D0=B0=D0=B1=D0=BE=D1=82=D0=B0?= =?UTF-8?q?=D0=B5=D1=82=20=D0=BF=D1=80=D0=B0=D0=B2=D0=B8=D0=BB=D1=8C=D0=BD?= =?UTF-8?q?=D0=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mobileappserver/Report/ReportController.java | 12 +++++------- .../mobileappserver/Report/ReportCreateDTO.java | 12 ------------ .../mobileappserver/Report/ReportService.java | 8 +++++--- .../mobileappserver/Story/StoryRepository.java | 2 +- .../android/mobileappserver/User/UserService.java | 3 --- 5 files changed, 11 insertions(+), 26 deletions(-) delete mode 100644 src/main/java/com/android/mobileappserver/Report/ReportCreateDTO.java diff --git a/src/main/java/com/android/mobileappserver/Report/ReportController.java b/src/main/java/com/android/mobileappserver/Report/ReportController.java index a54483b..56bad6c 100644 --- a/src/main/java/com/android/mobileappserver/Report/ReportController.java +++ b/src/main/java/com/android/mobileappserver/Report/ReportController.java @@ -1,9 +1,6 @@ package com.android.mobileappserver.Report; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("api/report") @@ -14,8 +11,9 @@ public class ReportController { this.reportService = reportService; } - @PostMapping("/createReport") - public ReportDTO createReport(@RequestBody ReportCreateDTO reportCreateDTO){ - return reportService.createReport(reportCreateDTO); + @GetMapping("/createReport/{dateFrom}/{dateTo}") + public ReportDTO createReport(@PathVariable("dateFrom") Long dateFrom, + @PathVariable("dateTo") Long dateTo){ + return reportService.createReport(dateFrom, dateTo); } } diff --git a/src/main/java/com/android/mobileappserver/Report/ReportCreateDTO.java b/src/main/java/com/android/mobileappserver/Report/ReportCreateDTO.java deleted file mode 100644 index 13b300a..0000000 --- a/src/main/java/com/android/mobileappserver/Report/ReportCreateDTO.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.android.mobileappserver.Report; - -import lombok.*; - -@Getter -@Setter -@AllArgsConstructor -@NoArgsConstructor -public class ReportCreateDTO { - private Long dateFrom; - private Long dateTo; -} diff --git a/src/main/java/com/android/mobileappserver/Report/ReportService.java b/src/main/java/com/android/mobileappserver/Report/ReportService.java index c37a9a6..634c6fa 100644 --- a/src/main/java/com/android/mobileappserver/Report/ReportService.java +++ b/src/main/java/com/android/mobileappserver/Report/ReportService.java @@ -3,6 +3,7 @@ package com.android.mobileappserver.Report; import com.android.mobileappserver.Story.StoryModel; import com.android.mobileappserver.Story.StoryService; import com.android.mobileappserver.User.UserService; +import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Collections; @@ -10,6 +11,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +@Service public class ReportService { private final UserService userService; private final StoryService storyService; @@ -20,8 +22,8 @@ public class ReportService { } @Transactional - public ReportDTO createReport(ReportCreateDTO reportCreateDTO){ - List stories = storyService.getStoriesByDate(reportCreateDTO.getDateFrom(), reportCreateDTO.getDateTo()); + public ReportDTO createReport(Long dateFrom, Long dateTo){ + List stories = storyService.getStoriesByDate(dateFrom, dateTo); int postCount = stories.size(); Map authorWithCount = new HashMap<>(); for (var story: stories) { @@ -35,7 +37,7 @@ public class ReportService { } } Map.Entry maxEntry = Collections.max(authorWithCount.entrySet(), Map.Entry.comparingByValue()); - return new ReportDTO(reportCreateDTO.getDateFrom(), reportCreateDTO.getDateTo(), + return new ReportDTO(dateFrom, dateTo, postCount, maxEntry.getKey(), maxEntry.getValue()); } } diff --git a/src/main/java/com/android/mobileappserver/Story/StoryRepository.java b/src/main/java/com/android/mobileappserver/Story/StoryRepository.java index 697542b..e854f36 100644 --- a/src/main/java/com/android/mobileappserver/Story/StoryRepository.java +++ b/src/main/java/com/android/mobileappserver/Story/StoryRepository.java @@ -11,6 +11,6 @@ import java.util.List; public interface StoryRepository extends JpaRepository { Page findAllByUserId(Long userIdб, Pageable pageable); - @Query("SELECT s FROM _story s WHERE s.dateFrom = :dateFrom AND s.dateTo = :dateTo") + @Query("SELECT s FROM StoryModel s WHERE s.postdate >= :dateFrom AND s.postdate <= :dateTo") List findStoriesBetweenDates(@Param("dateFrom") Long dateFrom, @Param("dateTo") Long dateTo); } diff --git a/src/main/java/com/android/mobileappserver/User/UserService.java b/src/main/java/com/android/mobileappserver/User/UserService.java index d4145f5..2c6ef6c 100644 --- a/src/main/java/com/android/mobileappserver/User/UserService.java +++ b/src/main/java/com/android/mobileappserver/User/UserService.java @@ -1,9 +1,6 @@ package com.android.mobileappserver.User; import com.android.mobileappserver.Story.StoryModel; -import com.android.mobileappserver.Story.StoryNotFoundException; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageRequest; import org.springframework.transaction.annotation.Transactional; import org.springframework.stereotype.Service;