Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[BE] 핀(Pin) 패키지 코드 리팩터링(PinImage 기능 구현 포함) (#240)
* [Docs] GitHub Issue 및 PR Template 설정 (#37) * chore: .gitignore 추가 * chore: GitHub PR 및 Issue Template * Revert "chore: GitHub PR 및 Issue Template" This reverts commit 65915f7. * Revert "chore: .gitignore 추가" This reverts commit 1e1865a. * chore: .gitignore 추가 * chore: GitHub Issue 및 PR Template 추가 * [Docs] GitHub Issue Template 파일명 오류 수정 (#39) * chore: .gitignore 추가 * chore: GitHub PR 및 Issue Template * Revert "chore: GitHub PR 및 Issue Template" This reverts commit 65915f7. * Revert "chore: .gitignore 추가" This reverts commit 1e1865a. * chore: .gitignore 추가 * chore: GitHub Issue 및 PR Template 추가 * chore: GitHub Issue 및 PR Template 추가 * feat: member 구현 중 Co-authored-by: jaeyeon kim <jakind@naver.com> * feat: 패키지 분리, AuthMember 구현 Co-authored-by: jaeyeon kim <jakind@naver.com> * feat: MemberArgumentResolver 구현 * feat: AuthTopic 구현 * refactor: API 명세 수정을 위한 임의 커밋 Co-authored-by: jaeyeon kim <jakind@naver.com> * feat: Publicity, Permission 정적 팩토리 및 Converter 추가 * refactor: Topic 에 Publicity, Permission 추가로 인한 테스트 수정 * refactor: 모든 테스트가 통과하도록 수정 * refactor: 모든 테스트가 통과하도록 수정 * feat: Topic 에 관한 CRUD 에 권한 적용 완료 * fix: Converter 반환값 이상으로 인한 오류 해결 * feat: Pin 기능에 권한 설정 추가 * style: 사용하지 않는 import 문 제거 및 접근 제어자 조정 * refactor: .. 지송;;^^ - 패키지 재분배 - AUTH 관련 기능 구현 - TopicController 및 LocationController 분리 Co-authored-by: jaeyeon kim <jakind@naver.com> * refactor: TopicStatus 로직 오류 수정 LocationController 오타 수정 * refactor: 불필요 상수 제거 * refactor: PinResponse 자료형 변경 * feat: Image 클래스 구현 * feat: LocationRepository에 하버사인을 이용한 find 메서드 구현 * refactor: LocationController의 메서드명 변경 * refactor: getTopicsWithPermission의 반환값 변경 * style: 불필요 공백 제거 * refactor: 로직 오류 수정 및 테스트 추가 * test: Topic 패키지 테스트 추가 * refactor: Auth 관련 리팩터링 및 TopicIntegrationTest * refactor: auth 어노테이션 제거 * test: AddressTest 추가 * test: Pin 관련 테스트 추가 * refactor: Coordinate BigDecimal -> Double 로 수정 * refactor: 모든 테스트가 성공하도록 수정 * refactor: LocationRepositoryTest 수정 * feat: 멤버 단일 조회 기능 추가 * feat: 멤버 목록 조회 기능 구현 * feat : Member 를 Create 하는 기능 추가 * feat : Member 가 만든 Topic 들을 조회하는 기능 추가 * feat : Member 가 본인이 만든 Pin 을 조회하는 기능 추가 * feat : 토픽을 생성한 자가 특정 멤버에게 권한을 주는 기능 추가 * feat : 토픽을 생성한자가 특정 멤버의 권한을 삭제하는 기능 추가 * feat : 해당 토픽에 권한을 가진 모든 유저를 조회 * feat : 권한을 가진 유저를 ID 로 조회하는 기능 추가 * refactor: AuthTopic 객체 제거 * chore: AuthToic 변경 사항 반영을 위한 merge * chore: AuthToic 변경 사항 반영을 위한 merge 추가 * refactor: Pin 예외 메시지 수정 - #127 과 내용 통일 * chore: AuthToic 변경 사항 반영을 위한 merge 추가 * feat : Topic, Pin, Member 에 연관관계 편의 메서드 추가 * refactor: RestDocs를 위한 Interceptor 조건문 추가 * refactor: 핀 조회 관련 API 문서화에 인증 헤더 추가 * test : Permission 추가와 관련된 Domain Test 작성 * test : 다른 유저에게 권한을 주는 기능 테스트 추가 * test : 권한 부여 인수테스트 추가 * docs : 권한 부여 API 명세 작성 * test : 권한 삭제 Service Test 작성 * test : 권한 삭제 인수테스트 작성 * docs : 권한 삭제 API 명세 작성 * test : memberResponse 정적 팩토리 메서드 테스트 작성 * test : 권한이 있는 멤버 전체를 조회하는 기능 Service Test 작성 * test : 해당 토픽에 권한을 가진 자들을 모두 조회하는 기능 인수테스트 작성 * docs : 해당 토픽에 권한을 가진 유저의 목록을 조회하는 API 명세 작성 * test : MemberDetailResponse 생성 테스트 추가 * test : 권한을 가진 유저를 조회하는 기능 Service Test 추가 * test : 권한을 가진 유저를 조회하는 기능 인수테스트 추가 * docs : 권한을 가진 유저를 조회하는 기능 API 명세 추가 * test : 유저를 저장하는 기능 Service Test 작성 * test : 유저를 저장하는 기능 인수테스트 작성 * docs : 유저를 저장하는 기능 API 명세 작성 * test : 유저를 목록 조회하는 기능 Service Test 작성 * test : 유저를 목록 조회하는 기능 인수테스트 작성 * docs : 유저를 목록 조회하는 기능 API 명세 작성 * refactor : AuthInterceptor mocking 을 RestDocs 에서 실행 * test : 유저 단일 조회 Service Test 작성 * test : 유저 단일 조회 인수테스트 작성 * docs : 유저 단일 조회 API 명세 작성 * test : 유저가 만든 토픽, 핀 조회 Service Test 작성 * test : 유저가 만든 토픽, 핀 조회 인수테스트 작성 * docs : 유저가 만든 토픽, 핀 조회 API 명세 작성 * refactor: Pin 생성 시 PinInfo를 묶어서 받도록 수정, 중복 테스트 제거 - PinInfo의 필드인 name, description을 직접 받는 대신 PinInfo를 받도록 함. - PinInfo의 필드가 추가될 경우에 Pin의 생성자도 수정할 필요가 없도록 함. - PinTest에서 PinInfoTest와 중복되는 테스트 제거 - PinInfo 업데이트 시 새 객체 할당하도록 하여 검증이 필요한 로직 최소화 (update 관련 테스트 삭제) * refactor: Pin 생성 시 권한 예외처리 추가 * test: 테스트 코드 컨벤션 통일, 도메인 계층 간 테스트 내용 분리, fixture 사용 * refactor: PinImage 생성 시 Image 객체를 전달받도록 수정, getter 추가 - Pin 리팩터링과 마찬가지로, Image의 필드 추가 시에도 생성 메서드 시그니처 변경할 필요 없도록 함. - imageUrl에 어떤 검증 로직이 있는지 명시적으로 보여줄 수 있음. * refactor: 회원 조회 로직 권한 확인 후 수행하도록 변경, 상수 처리 * test: 테스트 클래스 내 픽스쳐 사용 방식 통일, 메서드 순서 변경 * test: Pin copy 테스트 추가 * test: Pin 통합테스트 request 객체 멤버변수로 관리 * feat: PinImage 추가 API 작성, 기존 Pin 생성 및 수정 명세 변경 * test: 중복되는 내용의 PinCommandServiceTest 테스트 삭제 - 하위 계층에서 테스트하는 내용에 대해 테스트하는 메서드 삭제 * feat: 핀 삭제 시 핀 이미지 삭제 구현 * test: 핀 삭제 테스트에서 핀 이미지도 삭제되는지 확인하도록 수정 * refactor: 핀 이미지 추가 시 location 응답헤더 반환하도록 수정 * feat: 핀 이미지 삭제 기능 구현 * feat: 핀 상세 조회 시 이미지 id 반환하도록 수정 * docs: RestDocs 문서화 설정에 새 API 추가 * feat: 핀 복사 시 핀 이미지도 복사하도록 수정 * chore: 불필요한 주석 삭제, 코드 리뷰를 위한 주석 추가 * fix: updatedAt 관련 테스트 실패 해결 * refactor: 중복 거리 상수 단위 표기 * fix: 핀 이미지 삭제 메서드명 수정 * fix: 핀 이미지 관련 핸들러메서드에 LoginRequired 추가 * refactor: 사용하지 않는 Location 헤더값 전달 삭제 * feat: 핀 이미지 삭제 hard delete에서 soft delete으로 변경 * refactor: null 검증 메서드 통일 * test: Pin, PinImage RepositoryTest setUp 메서드 처리 * refactor: Pin 서비스 클래스 메서드 분리 - 조회 및 예외처리 로직 메서드 분리 - 검증 로직 메서드 분리 (TopicCommandService 와 분리 방식 통일) * test: Pin, PinImage RepositoryTest 픽스쳐 적용 * refactor: Pin 조회 서비스 메서드 네이밍 구체화 * refactor: PinQueryServiceTest 픽스쳐 적용 * refactor: Pin 변수명, 개행 수정 * fix: 864b851 충돌 해결 시 주석 처리 실수 해제, 테스트 실패 해결 * refactor: PinCommandServiceTest 픽스쳐 적용, 테스트 단순화 * test: Pin 서비스 계층 권한 관련 테스트 작성 * refactor: 핀 이미지 제거 메서드명 구체화 * test: 불필요한 객체 생성 삭제 * refactor: 정적 팩터리 메서드 내부에서 객체 생성하도록 변경 - 정적 팩터리 메서드를 의미있게 사용하기 위함 - 다른 도메인에서의 코드와의 통일성을 위해 변경함 --------- Co-authored-by: 준팍(junpak) <112045553+junpakPark@users.noreply.github.com> Co-authored-by: jaeyeon kim <jakind@naver.com> Co-authored-by: junpakPark <junpak.park@gmail.com>
- Loading branch information