-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BE] 도메인 설계 수정 반영 #27
Conversation
timeslot 필드명 수정 및 guest와 연관관계 삭제
host_id 연관관계 삭제에 따른 생성자 수정으로 발생한 테스트 코드 오류 수정
…t/22-redesign-table # Conflicts: # backend/src/main/java/com/woowacourse/momo/domain/attendee/Attendee.java # backend/src/test/java/com/woowacourse/momo/service/meeting/MeetingServiceTest.java
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
모든 엔티티라면 생성, 수정시간을 추적할 수 있어야 한다고 생각합니다.
추후 버그가 발생했을 때 이 정보들을 활용하지 않는다고 확신할 수 있을까요??
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
모든 엔티티라면 생성, 수정시간을 추적할 수 있어야 한다고 생각합니다.
추후 버그가 발생했을 때 이 정보들을 활용하지 않는다고 확신할 수 있을까요??
재즈 의견에 동의합니다. 생성시간/수정시간을 기록할 때 사용하는 기능 이름이 Auditing(감사) 이라는 것을 생각해 봤을 때 우선 로그성 정보라고 생각하고 다 남겨 놓는 것이 좋을 것 같아요!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dto 클래스의 위치는 다른 곳과 같이 /service
하위로 들어가야 할 것 같아요~
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
생성시간/수정시간을 기록할 때 사용하는 기능 이름이 Auditing(감사) 이라는 것을 생각해 봤을 때 우선 로그성 정보라고 생각하고 다 남겨 놓는 것이 좋을 것 같아요!
생성시간/수정시간을 로그성 정보를 저장한다는 점은 생각지 못했네요! 꼭 필요할 것 같습니다.
다만, 현재 참가자가 시간을 수정할 때
참가자와 연관된 모든 Schedule
을 삭제한 뒤 다시 Schedule
을 생성하는 방식으로 로직이 진행됩니다. 로그성 정보라면, 수정하기 전 삭제되는 모든 테이블의 행 또한 다 남겨야 하는 것이 아닌가..라는 의문이 듭니다. 지금은 참가자의 수정하기 전 최근 정보만 남겨 두는데에만 의미를 두면 될것 같네요!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Schedule
수정하는 로직은 다시 한 번 논의해 봐야 할 것 같네요😅
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
리뷰사항 몇 가지 남겨두었으니 확인 부탁드려요🙏
public enum Role { | ||
HOST, GUEST | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
public enum Role { | |
HOST, GUEST | |
} | |
public enum Role { | |
HOST, | |
GUEST | |
} |
줄바꿈 컨벤션이 빠져있는거 같아요!
Attendee attendee = null; | ||
List<Schedule> schedules = scheduleRepository.findAllByAttendee(attendee); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이 부분은 왜 이런 구조로 변경되었는지 궁금합니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
일단 테스트를 통과시켜야 해서 변경했습니다.
이후에 재즈(@seokmyungham)가 수정할 예정입니다~!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
RC가 잘 반영되었네요~👍
* refactor(Meeting): Meeting 테이블 필드명 추가 및 연관관계 삭제 timeslot 필드명 수정 및 guest와 연관관계 삭제 * refactor(Attendee): Guest 도메인명을 Attendee로 수정 * fix(MeetingServiceTest): Meeting 필드 변경에 따른 테스트 코드 오류 수정 host_id 연관관계 삭제에 따른 생성자 수정으로 발생한 테스트 코드 오류 수정 * refactor(Schedule): Schedule과 Meeting의 연관관계 삭제 * refactor(Schedule): timeslot 필드를 firstTimeslot과 lastTimeslot으로 분리 * refactor(Attendee): Attendee에 role 추가 * refactor(Attendee): Attendee에 role 추가 * refactor(Attendee): Attendee에 Meeting 연관관계 추가 * fix: origin feature 브랜치 머지 * refactor(Schedule): createdAt과 modifiedAt 필드 추가 * style(Role): 컨벤션에 맞춰 수정 * move(ScheduleTimeResponse): ScheduleTimeResponse를 service위치로 이동 * refactor(MeetingService): 참여자의 스케쥴을 조회하는 로직에서 findAll()을 사용하도록 수정
관련 이슈
작업 내용
수정한 ERD을 반영하여 도메인을 수정했습니다.
Guest
->Attendee
meeting
테이블에host_id
삭제 및attendee
테이블에role
필드 추가schedule
테이블에first_timeslot
,last_timeslot
필드 추가변경 ERD

특이 사항
리뷰 요구사항 (선택)
created_at
과modified_at
을 넣는 것이 좋을까요?AvailableDate
와Schedule
도메인에서BaseEntity
를 상속할지 의문이 듭니다. 논의 이후 반영하겠습니다~