Skip to content

Commit c9dfead

Browse files
committed
fix(reservation): Reservation 엔티티 정규화 및 save 메서드 리팩터링
- Reservation 엔티티에서 name 필드 제거 (Member 연관관계로 대체) - Reservation 생성자를 Member 기반으로 통일하여 일관성 확보 - save 메서드에서 Reservation 생성 시 불필요한 if-else 분기 제거 - 요청에 name이 있는 경우와 없는 경우 모두 Member를 조회한 뒤, Member를 기반으로 예약 생성 - 정규화 원칙 준수 및 예약 생성 로직 안정성 향
1 parent d850bb5 commit c9dfead

File tree

3 files changed

+4
-18
lines changed

3 files changed

+4
-18
lines changed

src/main/java/com/yourssu/roomescape/reservation/Reservation.java

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ public class Reservation {
1616
@GeneratedValue(strategy = GenerationType.IDENTITY)
1717
private Long id;
1818

19-
private String name;
2019
private String date;
2120

2221
@ManyToOne(fetch = FetchType.LAZY)
@@ -28,16 +27,8 @@ public class Reservation {
2827
@ManyToOne(fetch = FetchType.LAZY)
2928
private Theme theme;
3029

31-
public Reservation(String name, String date, Time time, Theme theme) {
32-
this.name = name;
33-
this.date = date;
34-
this.time = time;
35-
this.theme = theme;
36-
}
37-
3830
public Reservation(Member member, String date, Time time, Theme theme) {
3931
this.member = member;
40-
this.name = member.getName();
4132
this.date = date;
4233
this.time = time;
4334
this.theme = theme;

src/main/java/com/yourssu/roomescape/reservation/ReservationResponse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public class ReservationResponse {
1515
public static ReservationResponse of(Reservation reservation) {
1616
return new ReservationResponse(
1717
reservation.getId(),
18-
reservation.getName(),
18+
reservation.getMember().getName(),
1919
reservation.getDate(),
2020
reservation.getTime().getTimeValue(),
2121
reservation.getTheme().getName()

src/main/java/com/yourssu/roomescape/reservation/ReservationService.java

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,17 +50,12 @@ public ReservationResponse save(ReservationRequest request, LoginMember loginMem
5050
: memberRepository.findByEmail(loginMember.getEmail())
5151
.orElseThrow(() -> new MemberNotFoundException("이메일이 일치하는 회원이 없습니다."));
5252

53-
5453
Time time = timeRepository.findById(request.getTime()).orElseThrow();
5554
Theme theme = themeRepository.findById(request.getTheme()).orElseThrow();
5655

57-
Reservation reservation;
58-
if (request.getName() != null && !request.getName().isBlank()) {
59-
reservation = new Reservation(request.getName(), request.getDate(), time, theme);
60-
} else {
61-
reservation = new Reservation(member, request.getDate(), time, theme);
62-
}
56+
Reservation reservation = new Reservation(member, request.getDate(), time, theme);
6357
reservationRepository.save(reservation);
58+
6459
return ReservationResponse.of(reservation);
6560
}
6661

@@ -72,7 +67,7 @@ public List<ReservationResponse> findAll() {
7267
return reservationRepository.findAll().stream()
7368
.map(it -> new ReservationResponse(
7469
it.getId(),
75-
it.getName(),
70+
it.getMember().getName(),
7671
it.getTheme().getName(),
7772
it.getDate(),
7873
it.getTime().getTimeValue()

0 commit comments

Comments
 (0)