Merged
Conversation
hisonghy
reviewed
Jul 27, 2025
src/main/java/com/ject/studytrip/member/presentation/dto/request/UpdateMemberRequest.java
Outdated
Show resolved
Hide resolved
hisonghy
reviewed
Jul 27, 2025
src/main/java/com/ject/studytrip/member/presentation/controller/MemberController.java
Outdated
Show resolved
Hide resolved
hisonghy
reviewed
Jul 27, 2025
src/main/java/com/ject/studytrip/auth/application/facade/AuthFacade.java
Show resolved
Hide resolved
hisonghy
reviewed
Jul 27, 2025
Contributor
hisonghy
left a comment
There was a problem hiding this comment.
코드에 대한 리뷰 남겼습니다. 확인 부탁드려요!
hisonghy
reviewed
Jul 29, 2025
src/main/java/com/ject/studytrip/member/presentation/dto/request/UpdateMemberRequest.java
Show resolved
Hide resolved
* feat: Member에 update, updateDeletedAt 메서드 추가 * feat: MemberErrorCode에 MEMBER_NICKNAME_DUPLICATED 에러코드 추가 * feat: MemberRepository에 findByIdAndDeletedAtIsNull 메서드 추가 * feat: MemberPolicy에 validateNotDuplicated, validateNotDeleted 메서드 추가 * feat: MemberService에 getActiveMemberById 메서드 추가 * feat: CreateMemberCommand 추가 * feat: MemberInfo, MemberDetail 추가 * feat: UpdateMemberRequest 추가 * feat: MemberFacade 구현 * feat: MemberController 구현 * feat: LoadMemberDetailResponse 추가 * feat: StudyLog 엔티티에 Member 연관관계 매핑 추가 * feat: StudyLogFactory 구현 * feat: StudyLogQueryRepository, StudyLogQueryRepositoryAdapter 구현 * feat: StudyLogService 구현 * feat: TripQueryRepository에 countActiveTripsByMemberIdAndCategory 메서드 추가 * feat: TripService에 getActiveTripCountsByMemberId 메서드 추가 * feat: TripCount 추가 * refactor: MemberService.createMemberFromKakao() 비즈니스 로직 개선 * refactor: MemberFactory.fromKakao() -> MemberFactory.createFromKakao() 이름 변경 * refactor: MissionServiceTest, MissionControllerIntegrationTest에 @DisplayName 어노테이션 추가 * refactor: MissionControllerIntegrationTest 메서드명 개선 * refactor: Member에서 nickname 필드 unique = true 설정 제거 * test: MemberFactory를 적용하여 MemberFixture 개선 * test: KakoOauthFixture 삭제 * test: CreateMemberCommandFixture 추가 * test: UpdateMemberRequestFixture 추가 * test: KakaoLoginRequestFixture, KakaoSignupRequestFixture 추가 * test: KakaoTokenResponseFixture, KakaoUserInfoResponseFixture 추가 * test: MemberServiceTest에 UpdateNicknameAndCategoryIfPresent, DeleteMember, GetActiveMemberById 단위 테스트 추가 * test: MemberControllerIntegrationTest 통합 테스트 추가 * test: StudyLogServiceTest 단위 테스트 추가 * test: TripServiceTest에 GetActiveTripCountsByMemberId 단위 테스트 추가 * chore: 닉네임 중복 검사 API에 인증 없이 접근 가능하도록 Spring Security 설정 추가
98699c3 to
acb9bad
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
📌 작업 내용 및 특이사항
✅ 멤버 수정 API
MemberService.updateNicknameAndCategoryIfPresent()를 통해 수행되며,UpdateMemberRequest를 사용합니다.Member.update()를 통해, 기존 닉네임 또는 카테고리와 다른 경우에만 수정한다.✅ 멤버 삭제 API
Member.updateDeletedAt()을 통해 삭제 시간을 기록하며, 실제 DB에서는 제거되지 않습니다.✅ 멤버 상세 조회 API
LoadMemberDetailResponse를 사용하며, 닉네임, 이메일, 코스형 여행 개수, 탐험형 여행 개수, 학습 기록 개수 등이 포함됩니다.TripService.getActiveTripCountsByMemberId()를 통해 조회합니다.✅ 도메인 메서드 추가
Member:update(),updateDeletedAt()메서드 추가MemberPolicy:validateNotDuplicated(),validateNotDeleted()메서드 추가✅ 서비스 메서드 추가
MemberService:updateNicknameAndCategoryIfPresent(),deleteMember(),getActiveMemberById()등 메서드 추가✅ 리포지토리 메서드 추가
MemberRepository:findByIdAndDeletedAtIsNull()메서드 추가TripQueryRepository:countActiveTripsByMemberIdAndCategory()메서드 추가✅ DTO 추가
CreateMemberCommand추가UpdateMemberRequest추가LoadMemberDetailResponse추가MemberInfo,TripCount,MemberDetail추가✅ StudyLog 기능 개발
StudyLog엔티티에@ManyToOne Member연관관계 매핑StudyLogFactory구현StudyLogQueryRepository,StudyLogQueryRepositoryAdapter구현StudyLogService구현✅ 테스트
MemberServiceTest단위 테스트 추가MemberControllerIntegrationTest통합 테스트 추가CreateMemberCommandFixture,UpdateMemberRequestFixture추가StudyLogServiceTest단위 테스트 추가TripServiceTest.getActiveTripCountsByMemberId()단위 테스트KakaoLoginRequestFixture,KakaoSignupRequestFixture추가KakaoTokenResponseFixture,KakaoUserInfoResponseFixture추가MemberFactory를 적용하여MemberFixture개선KakaoOauthFixture삭제🌱 관련 이슈
🔍 참고사항
MemberFactory.fromKakao()→MemberFactory.createFromKakao()로 메서드명 개선MemberService.createMemberFromKakao()비즈니스 로직 개선MissionServiceTest,MissionControllerIntegrationTest에 @DisplayName 어노테이션 추가 및 테스트 메서드 이름 개선