Skip to content
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] ✨ : spot 테이블 변경 및 관련 비지니스 로직 수정 #370

Conversation

twoo1999
Copy link
Collaborator

@twoo1999 twoo1999 commented Feb 18, 2024

❗ 배경

작업 배경에 대한 설명을 작성합니다.
Issue에 대한 링크를 첨부합니다.

🔧 작업 내역

작업한 내용들을 나열합니다.
간결하게 리스트 업하고, 자세한 설명은 아래 리뷰 노트에서 합니다.

  • spot 테이블에서 photo 데이터 분리
  • 하나의 spot에 복수개의 photo 저장
  • spot 당 하나의 음악(Nullable) 지정

📝 리뷰 노트

작업 내역에 대한 자세한 설명을 작성합니다.

spot 테이블에서 photo 데이터 분리 및 photo 저장

문제발생 :
spot 테이블에서 photo 테이블을 분리해 1대다 연결관계를 지정했습니다.

이러한 과정에서 기존 spot 테이블의 photo를 nullable로 변경하여 이전 버전의 service에서도 동일한 동작을 할 수 있도록 수정했습니다.
image

📸 스크린샷

spotSong(Nullable) 추가
photo table 분리에 따른 photo 데이터 저장 dto 생성
repository 방식 변경
custom repository 사용 안함

user save 로직 수정
기존 user가 있는지 확인 후 있으면 예외처리 없으면 그대로 저장
journeyV2, spotV2, photo entity 추가 및 custom repository 사용 안함
인터셉터를 활용한 여러개의 파일 저장 로직 생성

custom repository 사용 안함
spot 저장 router 변경에 따른 비지니스 로직 이동 (POST /spot ->  POST /journey/:journeyId/spot)

custom repository 사용 안함
기존 : linestring 자체의 길이를 측정하는 문제가 발생

해결 : ','로 나눈 배열의 길이를 측정하는 것으로 위치 좌표 수를 측정
기존 :
get을 했을 때 에러가 발생
spot의 photo를 따로 나눈는 과정에서 변경사항을 조회 알고리즘에 적용하지 않아 dto로 parse하는 과정에서 key가 없다는 에러가 발생

해결 :
typeorm의 relations 기능을 통해 journey와 spot 또 spot과 photo를 연결한 데이터를 출력하고 응답 dto에 맞게 변환해주는 함수를 수정
기존 : spot의 photo가 분리됨에 따른 변경사항이 비지니스 로직에 미적용 문제 발생

수정 후 :
조회 시 join을 spot과 photo까지 연결하여 전체 데이터를 불러올 수 있도록 수정
@twoo1999 twoo1999 self-assigned this Feb 18, 2024
@twoo1999 twoo1999 added the ✨ 신규 기능 신규 기능 개발 label Feb 18, 2024
@twoo1999 twoo1999 added this to the 🏃‍♂️ 여정 기록 milestone Feb 18, 2024
@twoo1999 twoo1999 linked an issue Feb 18, 2024 that may be closed by this pull request
11 tasks
@twoo1999 twoo1999 merged commit 3f1d683 into BE/stroy/v2-modify-spot-table Feb 18, 2024
@twoo1999 twoo1999 deleted the BE/task/v2-create-photo_table-and-modift-logic branch February 18, 2024 08:14
@twoo1999 twoo1999 mentioned this pull request Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ 신규 기능 신규 기능 개발
Projects
Status: ✅ 완료
Development

Successfully merging this pull request may close these issues.

v2 spot table 수정
1 participant