-
Notifications
You must be signed in to change notification settings - Fork 0
약속 삭제하기 로직 개선 #158
Copy link
Copy link
Open
Labels
REFACTORINGrefactoring code [코드 개선 - 코드 리팩토링]refactoring code [코드 개선 - 코드 리팩토링]
Description
기능 설명
업무와 관련된 기능 이름, 관련 피그마 페이지
- ' ' [figma p.]
업무 설명
해당 이슈에 대한 구체적인 업무 작성 (회의 내용 및 해결 계획)
- why?
- 확정된 약속의 경우 삭제 조건이 다르므로, 기존 삭제 로직과 별도의 처리 로직이 필요합니다.
- 불필요하게 발생하는 쿼리를 줄이고, 필요한 경우에만 삭제 쿼리를 수행하여 DB 접근을 최적화해야 합니다.
- how?
- 약속 상태(AppointmentState)가 UNCONFIRMED인 경우에만 userAppointmentMapping을 삭제하도록 CustomUserAppointmentMappingRepositoryImpl의 삭제 로직을 변경합니다.
- deleteUser 메서드에서 userSeq와 UserRole 조건에 따라 userAppointmentMapping을 효율적으로 삭제하며, 약속의 상태를 고려한 조건부 삭제를 통해 전체 로직의 효율성을 높입니다.
개발 사항
개발할 사항들을 최대한 작게 쪼개서 작성해주세요
- userSeq와 UserRole이 GUEST인 경우에 대해서만, 상태가 UNCONFIRMED인 약속을 삭제하도록 서브쿼리 최적화
- UserService에서 deleteUser 로직을 최적화하여, 확정된 약속의 삭제 시 조건에 따라 분리된 로직을 실행하도록 설정
- UserAppointmentMapping과 Appointment에 대한 필요 조인 또는 서브쿼리를 구성해, 불필요한 데이터 접근을 최소화
참고 자료
참고할 내용 또는 자료를 첨부해주세요
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
REFACTORINGrefactoring code [코드 개선 - 코드 리팩토링]refactoring code [코드 개선 - 코드 리팩토링]