Skip to content

Commit 0735c5d

Browse files
authored
Merge pull request #126 from JA-yeong-eop-JA-moeu-JA/feat/#125-s3
✨ FEAT: S3 이미지 정적 URL 로직 공통화 및 응답 추가
2 parents abe8e24 + ca962ef commit 0735c5d

File tree

4 files changed

+51
-17
lines changed

4 files changed

+51
-17
lines changed

src/main/java/com/jajaja/domain/product/service/ProductQueryServiceImpl.java

Lines changed: 3 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@
1818
import com.jajaja.domain.review.repository.ReviewImageRepository;
1919
import com.jajaja.domain.review.repository.ReviewLikeRepository;
2020
import com.jajaja.domain.review.repository.ReviewRepository;
21+
import com.jajaja.domain.review.service.ReviewCommonService;
2122
import com.jajaja.domain.team.dto.response.TeamListDto;
2223
import com.jajaja.domain.team.entity.Team;
2324
import com.jajaja.domain.team.repository.TeamRepository;
2425
import com.jajaja.domain.member.entity.Member;
2526
import com.jajaja.domain.member.entity.MemberBusinessCategory;
2627
import com.jajaja.domain.member.repository.MemberBusinessCategoryRepository;
2728
import com.jajaja.domain.member.repository.MemberRepository;
28-
import com.jajaja.global.S3.service.S3Service;
2929
import com.jajaja.global.apiPayload.PageResponse;
3030
import com.jajaja.global.apiPayload.code.status.ErrorStatus;
3131
import com.jajaja.global.apiPayload.exception.custom.BadRequestException;
@@ -59,7 +59,7 @@ public class ProductQueryServiceImpl implements ProductQueryService {
5959
private final ProductSalesRepository productSalesRepository;
6060
private final ProductCommonService productCommonService;
6161
private final MemberQueryService memberQueryService;
62-
private final S3Service s3Service;
62+
private final ReviewCommonService reviewCommonService;
6363
private final ProductConverter productConverter;
6464

6565
@Override
@@ -110,20 +110,7 @@ public ProductDetailResponseDto getProductDetail(Long memberId, Long productId)
110110
? reviewLikeRepository.findReviewIdsLikedByMember(memberId, reviewIds)
111111
: Set.of();
112112

113-
List<ReviewItemDto> convertedDtos = reviewPageDtos.stream()
114-
.map(dto -> new ReviewItemDto(
115-
dto.id(),
116-
dto.memberId(),
117-
dto.nickname(),
118-
s3Service.generateStaticUrl(dto.profileUrl()),
119-
dto.createDate(),
120-
dto.rating(),
121-
dto.option(),
122-
dto.content(),
123-
dto.likeCount(),
124-
dto.imagesCount()
125-
))
126-
.toList();
113+
List<ReviewItemDto> convertedDtos = reviewCommonService.changeReviewWriterProfile(reviewPageDtos);
127114

128115
List<ReviewListDto> reviewResponseDtoList = convertedDtos.stream()
129116
.map(dto -> new ReviewListDto(
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.jajaja.domain.review.service;
2+
3+
import com.jajaja.domain.review.dto.response.ReviewItemDto;
4+
import java.util.List;
5+
6+
public interface ReviewCommonService {
7+
List<ReviewItemDto> changeReviewWriterProfile(List<ReviewItemDto> reviewItemDtoList);
8+
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package com.jajaja.domain.review.service;
2+
3+
import com.jajaja.domain.review.dto.response.ReviewItemDto;
4+
import com.jajaja.global.S3.service.S3Service;
5+
import lombok.RequiredArgsConstructor;
6+
import org.springframework.stereotype.Service;
7+
import jakarta.transaction.Transactional;
8+
9+
import java.util.List;
10+
11+
@Service
12+
@RequiredArgsConstructor
13+
@Transactional
14+
public class ReviewCommonServiceImpl implements ReviewCommonService {
15+
16+
private final S3Service s3Service;
17+
18+
@Override
19+
public List<ReviewItemDto> changeReviewWriterProfile(List<ReviewItemDto> reviewItemDtoList) {
20+
return reviewItemDtoList.stream()
21+
.map(dto -> new ReviewItemDto(
22+
dto.id(),
23+
dto.memberId(),
24+
dto.nickname(),
25+
s3Service.generateStaticUrl(dto.profileUrl()),
26+
dto.createDate(),
27+
dto.rating(),
28+
dto.option(),
29+
dto.content(),
30+
dto.likeCount(),
31+
dto.imagesCount()
32+
))
33+
.toList();
34+
}
35+
36+
}

src/main/java/com/jajaja/domain/review/service/ReviewQueryServiceImpl.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ public class ReviewQueryServiceImpl implements ReviewQueryService {
2828
private final ReviewRepository reviewRepository;
2929
private final ReviewLikeRepository reviewLikeRepository;
3030
private final ReviewImageRepository reviewImageRepository;
31+
private final ReviewCommonService reviewCommonService;
3132

3233
@Override
3334
public ReviewBriefResponseDto getReviewBriefInfo(Long productId) {
@@ -154,7 +155,9 @@ public PagingReviewListResponseDto getAllReviewList(Long memberId, String sort,
154155
? reviewLikeRepository.findReviewIdsLikedByMember(memberId, reviewIds)
155156
: Set.of();
156157

157-
List<ReviewListDto> reviewDtos = reviewItemPage.stream()
158+
List<ReviewItemDto> convertedDtos = reviewCommonService.changeReviewWriterProfile(reviewItemPage.getContent());
159+
160+
List<ReviewListDto> reviewDtos = convertedDtos.stream()
158161
.map(dto -> new ReviewListDto(
159162
dto,
160163
likedReviewIds.contains(dto.id()),

0 commit comments

Comments
 (0)