Skip to content

Commit ed4525a

Browse files
committed
feat : mbti특성 이어붙여 반환하도록 수정, 관심사 테이블 생성
1 parent a3bd7f8 commit ed4525a

File tree

4 files changed

+55
-9
lines changed

4 files changed

+55
-9
lines changed

api/src/main/java/com/mbtips/domain/virtualfriend/request/VirtualFriendRequest.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
import jakarta.validation.constraints.NotBlank;
88
import jakarta.validation.constraints.Pattern;
99

10+
import java.util.List;
11+
1012
public record VirtualFriendRequest(
1113
Long userId,
1214

@@ -32,7 +34,9 @@ public record VirtualFriendRequest(
3234
String TorF,
3335

3436
@Pattern(regexp = "J|P", message = "J 또는 P중 하나이어야 합니다.")
35-
String JorP
37+
String JorP,
38+
39+
List<String> interests
3640

3741
){
3842
public static VirtualFriend toEntity(VirtualFriendRequest req, UserEntity userEntity) {

api/src/main/java/com/mbtips/domain/virtualfriend/response/VirtualFriendResponse.java

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@
55
public record VirtualFriendResponse (
66
Long virtualFriendId,
77
Long conversationId,
8-
String EorI,
9-
String NorS,
10-
String TorF,
11-
String JorP,
8+
String mbti,
129
String virtualFriendName,
1310
int virtualFriendAge,
1411
String virtualFriendSex,
@@ -21,14 +18,20 @@ public static VirtualFriendResponse from(VirtualFriend friend ,Long conversation
2118
return new VirtualFriendResponse(
2219
friend.getVirtualFriendId(),
2320
conversationId,
24-
friend.getEorI(),
25-
friend.getNorS(),
26-
friend.getTorF(),
27-
friend.getJorP(),
21+
findMBTI(friend),
2822
friend.getVirtualFriendName(),
2923
friend.getVirtualFriendAge(),
3024
friend.getVirtualFriendSex(),
3125
friend.getVirtualFriendRelationship()
3226
);
3327
}
28+
29+
private static String findMBTI(VirtualFriend friend) {
30+
StringBuilder sb = new StringBuilder();
31+
sb.append(friend.getEorI());
32+
sb.append(friend.getNorS());
33+
sb.append(friend.getTorF());
34+
sb.append(friend.getJorP());
35+
return sb.toString();
36+
}
3437
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package com.mbtips.virtualfriend.entity;
2+
3+
import jakarta.persistence.*;
4+
import lombok.*;
5+
6+
@Entity
7+
@Getter
8+
@Setter
9+
@Builder
10+
@NoArgsConstructor
11+
@AllArgsConstructor
12+
public class Interest {
13+
14+
@EmbeddedId
15+
private InterestId interestId;
16+
17+
@MapsId("virtualFriendId")
18+
@ManyToOne
19+
@JoinColumn(name = "virtual_friend_id")
20+
private VirtualFriend virtualFriend;
21+
22+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.mbtips.virtualfriend.entity;
2+
3+
import jakarta.persistence.Embeddable;
4+
import lombok.AllArgsConstructor;
5+
import lombok.Getter;
6+
import lombok.NoArgsConstructor;
7+
import lombok.Setter;
8+
9+
import java.io.Serializable;
10+
11+
@Embeddable
12+
public class InterestId implements Serializable {
13+
private Long virtualFriendId;
14+
private String topic;
15+
16+
17+
}

0 commit comments

Comments
 (0)