Skip to content

Commit d012724

Browse files
authored
Merge pull request #54 from MEME-UMC/refactor/#53
[Refactor/#53] Service 조회 API 성능 개선
2 parents b7100cf + 988b54d commit d012724

30 files changed

+346
-331
lines changed

MEME-DOMAIN/src/main/java/org/meme/domain/entity/Artist.java

-11
Original file line numberDiff line numberDiff line change
@@ -55,16 +55,5 @@ public void updatePortfolioList(Portfolio portfolio){
5555
this.portfolioList.add(portfolio);
5656
}
5757

58-
59-
// public void tempMethod(){
60-
// this.username = "name";
61-
// this.email="";
62-
// this.password="";
63-
// this.workExperience=WorkExperience.FIVE;
64-
// this.role="ARTIST";
65-
// this.userStatus = UserStatus.ACTIVE;
66-
// this.provider = Provider.KAKAO;
67-
// this.details = false;
68-
// }
6958
}
7059

MEME-DOMAIN/src/main/java/org/meme/domain/entity/Model.java

-35
Original file line numberDiff line numberDiff line change
@@ -42,39 +42,4 @@ public class Model extends User {
4242
@OneToMany(mappedBy = "model")
4343
private List<Reservation> reservations;
4444

45-
public void updateFavoriteArtistList(FavoriteArtist artist){
46-
this.favoriteArtistList.add(artist);
47-
}
48-
49-
public void updateFavoritePortfolioList(FavoritePortfolio portfolio){
50-
this.favoritePortfolioList.add(portfolio);
51-
}
52-
public void updateReservationList(Reservation reservation){
53-
this.reservationList.add(reservation);
54-
}
55-
56-
public void updateReviewList(Review review){
57-
this.reviewList.add(review);
58-
}
59-
60-
61-
//temp create model builder
62-
// public static Model from(ModelProfileDto dto){
63-
// return Model.builder()
64-
// .profileImg(dto.getProfileImg())
65-
// .nickname(dto.getNickname())
66-
// .gender(dto.getGender())
67-
// .skinType(dto.getSkinType())
68-
// .personalColor(dto.getPersonalColor())
69-
// .build();
70-
// }
71-
72-
// public void tempMethod(){
73-
// this.username = "name";
74-
// this.email="";
75-
// this.password="";
76-
// this.role="MODEL";
77-
// this.userStatus = UserStatus.ACTIVE;
78-
// this.provider = Provider.KAKAO;
79-
// }
8045
}

MEME-DOMAIN/src/main/java/org/meme/domain/entity/User.java

-20
Original file line numberDiff line numberDiff line change
@@ -73,24 +73,4 @@ public class User {
7373

7474
@OneToMany(cascade = CascadeType.ALL, mappedBy = "user")
7575
protected List<Inquiry> inquiryList;
76-
77-
public boolean getDetails() {
78-
return details;
79-
}
80-
81-
public void updateInquiryList(Inquiry inquiry){
82-
this.inquiryList.add(inquiry);
83-
}
84-
85-
public void updateProfileImg(String profileimg){
86-
this.profileImg = profileimg;
87-
}
88-
89-
public void updateNickname(String nickname){
90-
this.nickname = nickname;
91-
}
92-
93-
public void updateGender(Gender gender){
94-
this.gender = gender;
95-
}
9676
}

MEME-SERVICE/src/main/java/org/meme/service/common/status/ErrorStatus.java

+2
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ public enum ErrorStatus implements BaseErrorCode {
1919
* Code : 400
2020
* Bad Request
2121
*/
22+
OVERFLOW_ARTIST_INTRODUCTION(HttpStatus.BAD_REQUEST, 400, "아티스트의 소개글은 500자 이하여야 합니다."),
23+
2224
INVALID_REQUEST(HttpStatus.BAD_REQUEST, 400, "유효하지 않은 요청입니다."),
2325
ALREADY_EXIST_FAVORITE_ARTIST(HttpStatus.BAD_REQUEST, 400, "해당 아티스트는 이미 관심 아티스트로 등록되어있습니다."),
2426
ALREADY_EXIST_FAVORITE_PORTFOLIO(HttpStatus.BAD_REQUEST, 400, "해당 포트폴리오는 이미 관심 포트폴리오로 등록되어있습니다."),

MEME-SERVICE/src/main/java/org/meme/service/domain/converter/ArtistConverter.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,14 @@ public static ArtistResponse.ArtistDto toArtistDto(Artist artist, boolean isFavo
3333
}
3434

3535
public static ArtistResponse.ArtistSimpleDto toArtistSimpleDto(Artist artist, Long modelCount) {
36+
String region = artist.getRegion().isEmpty() ? null : artist.getRegion().get(0).getValue();
37+
3638
return ArtistResponse.ArtistSimpleDto.builder()
3739
.artistId(artist.getUserId())
3840
.profileImg(artist.getUser().getProfileImg())
3941
.artistNickName(artist.getUser().getNickname())
4042
.email(artist.getUser().getEmail())
41-
.region(artist.getRegion().get(0).getValue())
43+
.region(region)
4244
.modelCount(modelCount)
4345
.build();
4446
}

MEME-SERVICE/src/main/java/org/meme/service/domain/converter/PortfolioConverter.java

+4-15
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ public static Portfolio toPortfolio(Artist artist, PortfolioRequest.CreatePortfo
2121
.price(dto.getPrice())
2222
.portfolioImgList(new ArrayList<PortfolioImg>())
2323
.averageStars("0.00")
24+
.reviewCount(0L)
2425
.durationTime(dto.getDurationTime())
2526
.isBlock(false)
2627
.build();
@@ -48,7 +49,7 @@ public static PortfolioResponse.PortfolioDto toPortfolioDto(Portfolio portfolio)
4849
.isBlock(portfolio.isBlock())
4950
.portfolioImgDtoList(portfolioImgDtoList)
5051
.averageStars(portfolio.getAverageStars())
51-
.reviewCount(portfolio.getReviewList().size())
52+
.reviewCount(portfolio.getReviewCount())
5253
.build();
5354
}
5455

@@ -77,7 +78,7 @@ public static PortfolioResponse.PortfolioDetailDto toPortfolioDetailDto(Portfoli
7778
.isBlock(portfolio.isBlock())
7879
.portfolioImgDtoList(portfolioImgDtoList)
7980
.averageStars(portfolio.getAverageStars())
80-
.reviewCount(portfolio.getReviewList().size())
81+
.reviewCount(portfolio.getReviewCount())
8182
.durationTime(portfolio.getDurationTime())
8283
.build();
8384
}
@@ -128,18 +129,6 @@ public static PortfolioResponse.PortfolioSimpleDto toPortfolioSimpleDto(Portfoli
128129

129130
public static PortfolioResponse.PortfolioSimpleDto toPortfolioSimpleDto(FavoritePortfolio favoritePortfolio){
130131
Portfolio portfolio = favoritePortfolio.getPortfolio();
131-
Artist artist = portfolio.getArtist();
132-
133-
return PortfolioResponse.PortfolioSimpleDto.builder()
134-
.portfolioId(portfolio.getPortfolioId())
135-
.portfolioImg(portfolio.getPortfolioImgList().get(0).getSrc())
136-
.category(portfolio.getCategory())
137-
.makeupName(portfolio.getMakeupName())
138-
.artistName(artist.getUser().getNickname())
139-
.artistEmail(artist.getUser().getEmail())
140-
.price(portfolio.getPrice())
141-
.makeupLocation(artist.getMakeupLocation())
142-
.averageStars(portfolio.getAverageStars())
143-
.build();
132+
return toPortfolioSimpleDto(portfolio);
144133
}
145134
}

MEME-SERVICE/src/main/java/org/meme/service/domain/dto/response/PortfolioResponse.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public static class PortfolioDto {
2929
private List<Region> region; //활동 가능 지역
3030
private Boolean isBlock;
3131
private String averageStars;
32-
private int reviewCount; //리뷰 개수
32+
private Long reviewCount; //리뷰 개수
3333
private List<PortfolioImgDto> portfolioImgDtoList;
3434
}
3535

@@ -51,7 +51,7 @@ public static class PortfolioDetailDto{
5151
private List<Region> region; //활동 가능 지역
5252
private Boolean isBlock;
5353
private String averageStars;
54-
private int reviewCount; //리뷰 개수
54+
private Long reviewCount; //리뷰 개수
5555
private String durationTime; //소요 시간
5656
private List<PortfolioImgDto> portfolioImgDtoList;
5757
}

MEME-SERVICE/src/main/java/org/meme/service/domain/entity/Artist.java

+32-10
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,14 @@
44
import lombok.AllArgsConstructor;
55
import lombok.Getter;
66
import lombok.NoArgsConstructor;
7-
import lombok.Setter;
8-
import lombok.experimental.SuperBuilder;
9-
import org.meme.service.domain.entity.Portfolio;
107
import org.meme.service.domain.enums.*;
118

129
import java.util.List;
1310

1411

1512
@AllArgsConstructor
1613
@NoArgsConstructor
17-
@Getter @Setter
14+
@Getter
1815
@Entity
1916
public class Artist {
2017

@@ -63,15 +60,40 @@ public void updatePortfolioList(Portfolio portfolio){
6360
this.portfolioList.add(portfolio);
6461
}
6562

66-
public void updateProfileImg(String profileimg){
67-
this.user.updateProfileImg(profileimg);
63+
public void updateIntroduction(String introduction) {
64+
if (!introduction.isEmpty()) {
65+
this.introduction = introduction;
66+
}
6867
}
6968

70-
public void updateNickname(String nickname){
71-
this.user.updateNickname(nickname);
69+
public void updateWorkExperience(WorkExperience workExperience) {
70+
if (workExperience != null) {
71+
this.workExperience = workExperience;
72+
}
7273
}
7374

74-
public void updateGender(Gender gender){
75-
this.user.updateGender(gender);
75+
public void updateRegion(List<Region> region) {
76+
if (!region.isEmpty()) {
77+
this.region = region;
78+
}
7679
}
80+
81+
public void updateSpecialization(List<Category> specialization) {
82+
if (!specialization.isEmpty()) {
83+
this.specialization = specialization;
84+
}
85+
}
86+
87+
public void updateMakeupLocation(MakeupLocation makeupLocation) {
88+
if (makeupLocation != null) {
89+
this.makeupLocation = makeupLocation;
90+
}
91+
}
92+
93+
public void updateShopLocation(String shopLocation) {
94+
if (!shopLocation.isEmpty()) {
95+
this.shopLocation = shopLocation;
96+
}
97+
}
98+
7799
}

MEME-SERVICE/src/main/java/org/meme/service/domain/entity/FavoriteArtist.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@ public class FavoriteArtist extends BaseEntity {
1919
@GeneratedValue(strategy = GenerationType.IDENTITY)
2020
private Long favoriteArtistId;
2121

22-
@ManyToOne
22+
@ManyToOne(fetch = FetchType.LAZY)
2323
@JoinColumn(name="user_id", nullable = false)
2424
private Model model;
2525

26+
// TODO:
2627
@OneToOne
2728
private Artist artist;
2829

MEME-SERVICE/src/main/java/org/meme/service/domain/entity/FavoritePortfolio.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ public class FavoritePortfolio extends BaseEntity {
2121
@GeneratedValue(strategy = GenerationType.IDENTITY)
2222
private Long favoritePortfolioId;
2323

24-
@ManyToOne
24+
@ManyToOne(fetch = FetchType.LAZY)
2525
@JoinColumn(name="user_id", nullable = false)
2626
private Model model;
2727

28-
@ManyToOne
28+
@ManyToOne(fetch = FetchType.LAZY)
2929
@JoinColumn(name="portfolio_id", nullable = false)
3030
private Portfolio portfolio;
3131

MEME-SERVICE/src/main/java/org/meme/service/domain/entity/Inquiry.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public class Inquiry extends BaseEntity {
2828
@Column(nullable = false)
2929
private String email;
3030

31-
@ManyToOne
31+
@ManyToOne(fetch = FetchType.LAZY)
3232
@JoinColumn(name = "user_id", nullable = false)
3333
private User user;
3434

MEME-SERVICE/src/main/java/org/meme/service/domain/entity/Model.java

+8-13
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,12 @@
44
import lombok.AllArgsConstructor;
55
import lombok.Getter;
66
import lombok.NoArgsConstructor;
7-
import lombok.Setter;
8-
import org.meme.service.domain.entity.*;
9-
import org.meme.service.domain.enums.Gender;
107
import org.meme.service.domain.enums.PersonalColor;
118
import org.meme.service.domain.enums.SkinType;
129

1310
import java.util.List;
1411

15-
@Getter @Setter
12+
@Getter
1613
@AllArgsConstructor
1714
@NoArgsConstructor
1815
@Entity
@@ -58,16 +55,14 @@ public void updateReviewList(Review review){
5855
this.reviewList.add(review);
5956
}
6057

61-
public void updateProfileImg(String profileimg){
62-
this.user.updateProfileImg(profileimg);
58+
public void updateSkinType(SkinType skinType) {
59+
if (skinType != null)
60+
this.skinType = skinType;
6361
}
6462

65-
public void updateNickname(String nickname){
66-
this.user.updateNickname(nickname);
63+
public void updatePersonalColor(PersonalColor personalColor) {
64+
if (personalColor != null) {
65+
this.personalColor = personalColor;
66+
}
6767
}
68-
69-
public void updateGender(Gender gender){
70-
this.user.updateGender(gender);
71-
}
72-
7368
}

0 commit comments

Comments
 (0)