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

플레이리스트 추가 기능 #150

Merged
merged 12 commits into from
Nov 22, 2023
Merged

플레이리스트 추가 기능 #150

merged 12 commits into from
Nov 22, 2023

Conversation

khw3754
Copy link
Collaborator

@khw3754 khw3754 commented Nov 22, 2023

Issue

Overview

  • Playlist, Music_Playlist entity 생성
  • @ManyToOne, @OneToMany 를 활용해서 관계 추가, 개선
  • playlist 모듈 생성
  • POST /playlists 플레이리스트 추가 API
    • 성공시 200, playlist_id 응답
  • POST /playlists/{플레이리스트 ID} 플레이리스트에 음악 추가 API
    • 성공시 200, music_playlist_id 응답
    • 해당 사용자가 해당 플레이리스트를 소유하고 있는지, 해당 음악이 있는지 확인
      -> 없으면 400 응답
  • 회원가입시 바로 최근 재생 목록 플레이리스트 추가하도록 구현

Screenshot

  • POST /playlists 플레이리스트 추가
스크린샷 2023-11-22 오후 7 16 44 스크린샷 2023-11-22 오후 7 16 53
  • POST /playlists/{playlistId} 플레이리스트에 음악 추가
스크린샷 2023-11-22 오후 8 17 39 스크린샷 2023-11-22 오후 8 17 45
  • 회원 가입 최근 재생 목록 플레이리스트 생성
스크린샷 2023-11-22 오후 8 57 40

To Reviewers

entity 에서 관계설정 부분을 수정했습니다.
ManyToOne, OneToMany 를 사용해서 관계 설정하는 부분과 create, countBy, findBy 하는 부분에서 변경이 있으니 다음 구현부터 적용 부탁드립니다!

* playlist entity 생성
* user와 관계 설정
* playlist 와 music 의 관계를 정리해주는 music_playlist 테이블 생성
* manyToOne, oneToMany 를 적극적으로 사용하여 설정
* musicId numnber 타입으로 수정
* playlist 요청 처리를 위한 모듈 생성
* playlist 를 생성할 때 사용하는 DTO 객체 추가
* POST /playlists 로 생성 가능
* id 의 타입 string -> number
* playlistId -> playlist_id
* POST /playlists/{playlist_id} 로 요청
* 해당 플레이리스트가 있는지, 음악이 있는지 확인 -> 없으면 400 에러
* 추가가 됐으면 200 응답
* PlaylistService 를 주입하여 signup 을 한 후에 최근 재생 목록 플레이리스트를 바로 생성하도록 구현
@khw3754 khw3754 added ✨ feat 기능 개발 🖥 server server labels Nov 22, 2023
@khw3754 khw3754 added this to the ⏯️ playlist milestone Nov 22, 2023
@khw3754 khw3754 self-assigned this Nov 22, 2023
@khw3754 khw3754 linked an issue Nov 22, 2023 that may be closed by this pull request
* 테스트 통과되도록 모듈 의존관계 추가
* "최근 재생 목록" -> 상수로 처리
@@ -49,6 +51,9 @@ export class AuthService {
});
await this.userRepository.save(newUser);

this.playlistService.createPlaylist(newUser.user_id, {
Copy link
Member

@sk000801 sk000801 Nov 22, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

제가 단편적인 부분만 본 것 같긴 한데 로그인 할 때마다 유저에게 재생 목록을 새로 제공해 주는 건가요?!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

로그인이 아니라 새로운 회원이 가입했을 때 그 유저의 최근 재생 목록을 만들어주는 작업입니다!

user_id: string;
user: User;

@OneToMany(() => Music_Playlist, (music_playlist) => music_playlist.music)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아까 알려주신 부분이 요 부분들이군요 유념하겠습니다 🙇‍♀️

playlistId,
musicId,
);
return { music_playlist_id: music_playlist_id };
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

요거 return {music_playlist_id}로 두어도 같은 의미에용

Copy link
Member

@sk000801 sk000801 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

코드 짜시느라 고생하셨을 것 같네요ㅠㅠ 수고하셨어요 👍

@khw3754 khw3754 merged commit 340cad6 into develop Nov 22, 2023
1 check passed
@khw3754 khw3754 deleted the server/feature/37 branch November 22, 2023 14:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ feat 기능 개발 🖥 server server
Projects
None yet
Development

Successfully merging this pull request may close these issues.

플레이 리스트 추가 기능
2 participants