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

[feat] 가게의 음식 상품 가격 수정 #107

Merged

Conversation

Hyeon-Uk
Copy link
Contributor

@Hyeon-Uk Hyeon-Uk commented Aug 18, 2024

💡 다음 이슈를 해결했어요.

Issue Link - #104

  • 점주는 자신의 가게의 메뉴 가격을 수정할 수 있습니다.
  • 다른 가게의 메뉴를 수정할 수 없습니다.
  • 수정할 가격이 음수, 혹은 0이면 안됩니다.
  • 없는 메뉴를 수정할 수 없습니다.
  • API를 통해 가격을 수정할 수 있습니다.

💡 이슈를 처리하면서 추가된 코드가 있어요.

  • InvalidMenuPriceUpdateException : 업데이트할 가격이 0 또는 음수인 경우 던져지는 Exception
  • MenuOwnerNotMatchException : 가게 주인이 아닌 사람이 수정할 경우 던져지는 Exception
  • MenuPriceUpdateCommand : 업데이트를 하기 위해 서비스에 던져지는 Record
  • MenuPriceUpdateService : 실질적으로 업데이트를 수행하는 서비스 객체
  • MenuPriceUpdateRequest : 사용자가 업데이트할 가격을 담아 보내는 request객체
  • MenuPriceUpdateResponse : 요청이 모두 완료된 후 response될 객체

💡 이런 고민을 했어요.

  • 업데이트를 가게가 close된 상태에서만 업데이트 하게 할 것인지?

✅ 셀프 체크리스트

  • 내 코드를 스스로 검토했습니다.
  • 필요한 테스트를 추가했습니다.
  • 모든 테스트를 통과합니다.
  • 브랜치 전략에 맞는 브랜치에 PR을 올리고 있습니다.
  • 커밋 메세지를 컨벤션에 맞추었습니다.
  • wiki를 수정했습니다.

- 음수, 0 이라면 InvalidMenuPriceUpdateException 던짐

- Dynamic Update를 이용해 수정된 가격만 업데이트하는 쿼리를 보내기 위해 사용
- 음수, 혹은 양수면 InvalidMenuPriceUpdateException 발생 테스트
- 양수라면 업데이트 된 가격으로 업데이트 됐는지 확인
- vendorId : 업데이트를 시도하는 vendor의 id
- menuId : 업데이트 할 menu의 id
- updatePrice : 업데이트 할 가격
- 존재하는 메뉴만 업데이트 할 수 있다.
- 자신의 가게만 업데이트 할 수 있다.
- 가격은 양수만 가능하다.
- 테스트용 Menu를 매번 생성하면 중복코드가 많이 생기기 때문에 더미 객체 생성용 메서드 생성
- 존재하는 메뉴만 업데이트 할 수 있다.
- 자신의 가게만 업데이트 할 수 있다.
- 가격은 양수만 가능하다.
@Hyeon-Uk Hyeon-Uk self-assigned this Aug 18, 2024
@Hyeon-Uk Hyeon-Uk added the ✨ Feature 기능 개발 label Aug 18, 2024
@Hyeon-Uk Hyeon-Uk added this to the 프로토타입 만들기 milestone Aug 18, 2024
@Hyeon-Uk Hyeon-Uk linked an issue Aug 18, 2024 that may be closed by this pull request
@Hyeon-Uk Hyeon-Uk marked this pull request as ready for review August 18, 2024 05:30
Copy link
Member

@kimhyun5u kimhyun5u left a comment

Choose a reason for hiding this comment

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

음식 상품 가격 수정 API 를 store 에 두셨네요! 저는 이거 하면서 고민이 좀 됐는데 menu 에 대한 요청이여서 일단 MenuApi 로 두었는데 StoreApi 두신 이유를 알 수 있을까요 ? 의견 참고하고 싶습니다!

@Hyeon-Uk
Copy link
Contributor Author

저도 계속 하면서 메뉴 controller를 따로 둬야하나 싶었습니다!

Menu의 가격을 수정하기 위해 storeId를 받을 필요가 없지만, Menu가 Store에 종속되기 때문에 일단은 Store에 뒀습니다! 저도 Menu에 있는게 더 깔끔하다고 생각이 들긴 합니다...!!

@kimhyun5u
Copy link
Member

저도 계속 하면서 메뉴 controller를 따로 둬야하나 싶었습니다!

Menu의 가격을 수정하기 위해 storeId를 받을 필요가 없지만, Menu가 Store에 종속되기 때문에 일단은 Store에 뒀습니다! 저도 Menu에 있는게 더 깔끔하다고 생각이 들긴 합니다...!!

그렇군요!! 어렵네요 ㅠㅠ 저는 일단 MenuApiController 만들긴 했씁니다

@Hyeon-Uk Hyeon-Uk merged commit 48bcf4b into main Aug 18, 2024
1 check passed
@Hyeon-Uk Hyeon-Uk deleted the feature/104_Hyeon-Uk_가게의_음식_상품_가격_수정 branch August 20, 2024 01:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 기능 개발
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

[기능] 가게의 음식 상품 가격 수정
3 participants