From b82f51d01fda19e621568a08b84e5dbf471e76f4 Mon Sep 17 00:00:00 2001 From: Jin Geonwoo Date: Tue, 16 Jul 2024 00:18:50 +0900 Subject: [PATCH] =?UTF-8?q?[fix]=20merge=20=EC=B6=A9=EB=8F=8C=20=ED=95=B4?= =?UTF-8?q?=EA=B2=B0=20=EB=B0=8F=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20=EC=98=A4?= =?UTF-8?q?=EB=A5=98=20=ED=95=B4=EA=B2=B0=20(#70)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../server/record/controller/RecordApi.java | 21 +++++++++---------- .../record/controller/RecordController.java | 13 ++++++------ .../record/repository/RecordRepository.java | 1 + .../service/impl/RecordServiceImpl.java | 1 - .../record/service/RecordServiceTest.java | 4 ++-- .../service/RecordStatServiceTest.java | 4 ++-- 6 files changed, 21 insertions(+), 23 deletions(-) diff --git a/src/main/java/org/recordy/server/record/controller/RecordApi.java b/src/main/java/org/recordy/server/record/controller/RecordApi.java index 8968cffa..134852a6 100644 --- a/src/main/java/org/recordy/server/record/controller/RecordApi.java +++ b/src/main/java/org/recordy/server/record/controller/RecordApi.java @@ -9,7 +9,6 @@ import org.recordy.server.common.message.ErrorMessage; import org.recordy.server.record.controller.dto.request.RecordCreateRequest; import org.recordy.server.record.controller.dto.response.RecordInfoWithBookmark; -import org.recordy.server.record.domain.File; import org.recordy.server.record.domain.Record; import org.springframework.data.domain.Slice; import org.springframework.http.MediaType; @@ -78,7 +77,7 @@ public interface RecordApi { ) } ) - public ResponseEntity createRecord( + ResponseEntity createRecord( @UserId Long uploaderId, @RequestPart RecordCreateRequest request, @RequestPart MultipartFile thumbnail, @@ -126,7 +125,7 @@ public ResponseEntity createRecord( ) } ) - public ResponseEntity deleteRecord( + ResponseEntity deleteRecord( @UserId Long uploaderId, @PathVariable Long recordId ); @@ -167,7 +166,7 @@ public ResponseEntity deleteRecord( ) } ) - public ResponseEntity> getRecentRecordInfosWithBookmarksByUser( + ResponseEntity> getRecentRecordInfosWithBookmarksByUser( @UserId Long userId, @RequestParam(required = false, defaultValue = "0") long cursorId, @RequestParam(required = false, defaultValue = "10") int size @@ -204,7 +203,7 @@ public ResponseEntity> getRecentRecordInfosWithBoo ) } ) - public ResponseEntity watch( + ResponseEntity watch( @UserId Long userId, @PathVariable Long recordId ); @@ -245,9 +244,9 @@ public ResponseEntity watch( ) } ) - public ResponseEntity> getFamousRecordInfoWithBookmarks( + ResponseEntity> getFamousRecordInfoWithBookmarks( @UserId Long userId, - @RequestParam(required = false) List keywords, + @RequestParam(required = false) String keywords, @RequestParam(required = false, defaultValue = "0") int pageNumber, @RequestParam(required = false, defaultValue = "10") int pageSize ) ; @@ -288,9 +287,9 @@ public ResponseEntity> getFamousRecordInfoWithBook ) } ) - public ResponseEntity> getRecentRecordInfosWithBookmarks( + ResponseEntity> getRecentRecordInfosWithBookmarks( @UserId Long userId, - @RequestParam(required = false) List keywords, + @RequestParam(required = false) String keywords, @RequestParam(required = false, defaultValue = "0") Long cursorId, @RequestParam(required = false, defaultValue = "10") int size ); @@ -331,7 +330,7 @@ public ResponseEntity> getRecentRecordInfosWithBoo ) } ) - public ResponseEntity> getSubscribingRecordInfosWithBookmarks( + ResponseEntity> getSubscribingRecordInfosWithBookmarks( @UserId Long userId, @RequestParam(required = false, defaultValue = "0") long cursorId, @RequestParam(required = false, defaultValue = "10") int size @@ -373,7 +372,7 @@ public ResponseEntity> getSubscribingRecordInfosWi ) } ) - public ResponseEntity> getTotalRecordInfosWithBookmarks( + ResponseEntity> getTotalRecordInfosWithBookmarks( @UserId Long userId, @RequestParam(required = false, defaultValue = "10") int size ); diff --git a/src/main/java/org/recordy/server/record/controller/RecordController.java b/src/main/java/org/recordy/server/record/controller/RecordController.java index 781979ec..ef782e10 100644 --- a/src/main/java/org/recordy/server/record/controller/RecordController.java +++ b/src/main/java/org/recordy/server/record/controller/RecordController.java @@ -2,6 +2,7 @@ import lombok.RequiredArgsConstructor; import org.recordy.server.auth.security.UserId; +import org.recordy.server.keyword.domain.Keyword; import org.recordy.server.record.controller.dto.request.RecordCreateRequest; import org.recordy.server.record.controller.dto.response.RecordInfoWithBookmark; import org.recordy.server.record.domain.File; @@ -10,14 +11,12 @@ import org.recordy.server.record.domain.usecase.RecordCreate; import org.recordy.server.record.service.RecordService; import org.recordy.server.record_stat.service.RecordStatService; -import org.recordy.server.record.service.S3Service; import org.springframework.data.domain.Slice; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import java.io.IOException; import java.util.List; @RequiredArgsConstructor @@ -36,7 +35,7 @@ public ResponseEntity createRecord( @RequestPart MultipartFile thumbnail, @RequestPart MultipartFile video ) { - RecordCreate recordCreate = RecordCreate.from(uploaderId, request); + RecordCreate recordCreate = RecordCreate.of(uploaderId, request); Record record = recordService.create(recordCreate, File.of(video, thumbnail)); return ResponseEntity @@ -61,11 +60,11 @@ public ResponseEntity deleteRecord( @GetMapping("/recent") public ResponseEntity> getRecentRecordInfosWithBookmarks( @UserId Long userId, - @RequestParam(required = false) List keywords, + @RequestParam(required = false) String keywords, @RequestParam(required = false, defaultValue = "0") Long cursorId, @RequestParam(required = false, defaultValue = "10") int size ) { - Slice records = recordService.getRecentRecords(keywords, cursorId, size); + Slice records = recordService.getRecentRecords(Keyword.decode(keywords), cursorId, size); List bookmarks = recordStatService.findBookmarks(userId, records.getContent()); return ResponseEntity.ok().body(RecordInfoWithBookmark.of(records, bookmarks)); @@ -75,11 +74,11 @@ public ResponseEntity> getRecentRecordInfosWithBoo @GetMapping("/famous") public ResponseEntity> getFamousRecordInfoWithBookmarks( @UserId Long userId, - @RequestParam(required = false) List keywords, + @RequestParam(required = false) String keywords, @RequestParam(required = false, defaultValue = "0") int pageNumber, @RequestParam(required = false, defaultValue = "10") int pageSize ){ - Slice records = recordService.getFamousRecords(keywords, pageNumber, pageSize); + Slice records = recordService.getFamousRecords(Keyword.decode(keywords), pageNumber, pageSize); List bookmarks = recordStatService.findBookmarks(userId, records.getContent()); return ResponseEntity diff --git a/src/main/java/org/recordy/server/record/repository/RecordRepository.java b/src/main/java/org/recordy/server/record/repository/RecordRepository.java index cb64b8d7..96acf89e 100644 --- a/src/main/java/org/recordy/server/record/repository/RecordRepository.java +++ b/src/main/java/org/recordy/server/record/repository/RecordRepository.java @@ -23,6 +23,7 @@ public interface RecordRepository { Slice findAllByIdAfterAndKeywordsOrderByIdDesc(List keywords, long cursor, Pageable pageable); Slice findAllByUserIdOrderByIdDesc(long userId, long cursor, Pageable pageable); Slice findAllBySubscribingUserIdOrderByIdDesc(long userId, long cursor, Pageable pageable); + Map countAllByUserIdGroupByKeyword(long userId); long countAllByUserId(long userId); Optional findMaxId(); Long count(); diff --git a/src/main/java/org/recordy/server/record/service/impl/RecordServiceImpl.java b/src/main/java/org/recordy/server/record/service/impl/RecordServiceImpl.java index 1a126cca..41589670 100644 --- a/src/main/java/org/recordy/server/record/service/impl/RecordServiceImpl.java +++ b/src/main/java/org/recordy/server/record/service/impl/RecordServiceImpl.java @@ -1,7 +1,6 @@ package org.recordy.server.record.service.impl; import java.util.ArrayList; -import java.util.Collections; import java.util.HashSet; import java.util.Optional; import java.util.Random; diff --git a/src/test/java/org/recordy/server/record/service/RecordServiceTest.java b/src/test/java/org/recordy/server/record/service/RecordServiceTest.java index 6705a932..1bc2ad8f 100644 --- a/src/test/java/org/recordy/server/record/service/RecordServiceTest.java +++ b/src/test/java/org/recordy/server/record/service/RecordServiceTest.java @@ -28,8 +28,8 @@ void init() { recordService = fakeContainer.recordService; UserRepository userRepository = fakeContainer.userRepository; - userRepository.save(DomainFixture.createUser(UserStatus.ACTIVE)); - userRepository.save(DomainFixture.createUser(UserStatus.ACTIVE)); + userRepository.save(DomainFixture.createUser(1)); + userRepository.save(DomainFixture.createUser(2)); } @Test diff --git a/src/test/java/org/recordy/server/record_stat/service/RecordStatServiceTest.java b/src/test/java/org/recordy/server/record_stat/service/RecordStatServiceTest.java index 71f49dc7..53d1bf66 100644 --- a/src/test/java/org/recordy/server/record_stat/service/RecordStatServiceTest.java +++ b/src/test/java/org/recordy/server/record_stat/service/RecordStatServiceTest.java @@ -26,8 +26,8 @@ void init() { UserRepository userRepository = fakeContainer.userRepository; RecordRepository recordRepository = fakeContainer.recordRepository; - userRepository.save(DomainFixture.createUser(UserStatus.ACTIVE)); - userRepository.save(DomainFixture.createUser(UserStatus.ACTIVE)); + userRepository.save(DomainFixture.createUser(1)); + userRepository.save(DomainFixture.createUser(2)); recordRepository.save(DomainFixture.createRecord()); recordRepository.save(DomainFixture.createRecord()); recordRepository.save(DomainFixture.createRecord());