Skip to content

Commit

Permalink
Merge pull request #28 from Central-MakeUs/14-필터를-조회한다
Browse files Browse the repository at this point in the history
Feat(#27): 필터 상세 조회 시 원본 사진 추가
  • Loading branch information
tmddus2 committed Aug 5, 2024
2 parents 42ded66 + f56dfd9 commit bb0560e
Show file tree
Hide file tree
Showing 8 changed files with 48 additions and 10 deletions.
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package com.example.purithm.domain.filter.controller;

import com.example.purithm.domain.filter.dto.response.AOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.filterDetailValue.AOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterListDto;
import com.example.purithm.domain.filter.dto.response.FilterReviewDto;
import com.example.purithm.domain.filter.dto.response.IOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.filterDetailValue.IOSFilterDetailDto;
import com.example.purithm.domain.filter.entity.OS;
import com.example.purithm.domain.filter.service.FilterService;
import com.example.purithm.global.response.SuccessResponse;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package com.example.purithm.domain.filter.controller;

import com.example.purithm.domain.filter.dto.response.AOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.filterDetailValue.AOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterListDto;
import com.example.purithm.domain.filter.dto.response.FilterReviewDto;
import com.example.purithm.domain.filter.dto.response.IOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.filterDetailValue.IOSFilterDetailDto;
import com.example.purithm.domain.filter.entity.OS;
import com.example.purithm.global.auth.annotation.LoginInfo;
import com.example.purithm.global.response.SuccessResponse;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public class FilterDetailDto {
@Schema(description = "퓨어 지수")
int pureDegree;
@Schema(description = "필터 사진")
List<String> pictures;
List<FilterPictureDto> pictures;
@Schema(description = "좋아요 여부")
boolean liked;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package com.example.purithm.domain.filter.dto.response;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;

@Builder
public record FilterPictureDto(
@Schema(description = "보정 사진")
String picture,
@Schema(description = "원본 사진")
String originalPicture
) {
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.example.purithm.domain.filter.dto.response;
package com.example.purithm.domain.filter.dto.response.filterDetailValue;

import com.example.purithm.domain.filter.entity.AOSFilterDetail;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.example.purithm.domain.filter.dto.response;
package com.example.purithm.domain.filter.dto.response.filterDetailValue;

import com.example.purithm.domain.filter.entity.IOSFilterDetail;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,33 @@ public class Filter {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private String name;

private String thumbnail;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "photographer_id", nullable = false)
private Photographer photographer;

private int likes;

private int price;

@Temporal(TemporalType.TIMESTAMP)
@CreatedDate
@Column(updatable = false)
private Date createdAt;

int pureDegree;

@Convert(converter = StringListConverter.class)
private List<String> pictures;

@Convert(converter = StringListConverter.class)
private List<String> originalPictures;

private Membership membership;

private OS os;
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.example.purithm.domain.filter.service;

import java.util.ArrayList;
import java.util.List;

import org.springframework.data.domain.Page;
Expand All @@ -8,12 +9,13 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.example.purithm.domain.filter.dto.response.AOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterPictureDto;
import com.example.purithm.domain.filter.dto.response.filterDetailValue.AOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterDetailDto;
import com.example.purithm.domain.filter.dto.response.FilterDto;
import com.example.purithm.domain.filter.dto.response.FilterListDto;
import com.example.purithm.domain.filter.dto.response.FilterReviewDto;
import com.example.purithm.domain.filter.dto.response.IOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.filterDetailValue.IOSFilterDetailDto;
import com.example.purithm.domain.filter.dto.response.ReviewDto;
import com.example.purithm.domain.filter.entity.AOSFilterDetail;
import com.example.purithm.domain.filter.entity.Filter;
Expand Down Expand Up @@ -88,11 +90,21 @@ public FilterDetailDto getFilterDetail(Long id, Long filterId) {
Filter filter = filterRepository.findById(filterId)
.orElseThrow(() -> CustomException.of(Error.NOT_FOUND_ERROR));

List<String> pictures = filter.getPictures();
List<String> originalPictures = filter.getOriginalPictures();
List<FilterPictureDto> filters = new ArrayList<>();

for (int i=0; i< pictures.size(); i++) {
filters.add(FilterPictureDto.builder()
.picture(pictures.get(i))
.originalPicture(originalPictures.get(i)).build());
}

return FilterDetailDto.builder()
.name(filter.getName())
.likes(filter.getLikes())
.pureDegree(filter.getPureDegree())
.pictures(filter.getPictures())
.pictures(filters)
.liked(isLike(filterId, id))
.build();
}
Expand Down

0 comments on commit bb0560e

Please sign in to comment.