-
Notifications
You must be signed in to change notification settings - Fork 0
Refoctor: 관리자용 메뉴 이름 추가 #251
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
Conversation
|
Caution Review failedThe pull request is closed. Walkthrough
Changes
Sequence Diagram(s)sequenceDiagram
participant Admin as Admin API
participant Service as MenuService
participant Entity as Menu Entity
Admin->>Service: MenuCreateRequest(adminDisplayName, ...)
Service->>Entity: Menu 생성자(adminDisplayName, ...)
Entity-->>Service: Menu 객체 반환
Service-->>Admin: MenuCreateResponse(adminDisplayName, ...)
Admin->>Service: MenuUpdateRequest(adminDisplayName, ...)
Service->>Entity: updateInfo(adminDisplayName, ...)
Entity-->>Service: 메뉴 정보 갱신
Service-->>Admin: 결과 반환
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~15분 Possibly related PRs
Suggested reviewers
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (1)
✨ Finishing Touches
🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (3)
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuCreateResponse.java (1)
7-7: 사용하지 않는 import 제거 필요@NotNull import가 추가되었지만 코드에서 사용되지 않습니다.
-import jakarta.validation.constraints.NotNull;nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuReadDto.java (1)
7-7: 사용하지 않는 import 제거 필요@NotNull import가 추가되었지만 코드에서 사용되지 않습니다.
-import jakarta.validation.constraints.NotNull;nowait-domain/domain-core-rdb/src/main/java/com/nowait/domaincorerdb/menu/entity/Menu.java (1)
53-53: 생성자 매개변수 순서를 검토하세요.생성자에
adminDisplayName매개변수가 추가되었지만, 매개변수 순서가 논리적으로 적절한지 확인이 필요합니다. 일반적으로 관련 필드들(adminDisplayName,name)을 인접하게 배치하는 것이 가독성에 좋습니다.매개변수 순서를 다음과 같이 조정하는 것을 고려해보세요:
-public Menu(LocalDateTime createdAt, Long id, Long storeId, String adminDisplayName, String name, String description, Integer price, Boolean isSoldOut, Boolean deleted) { +public Menu(LocalDateTime createdAt, Long id, Long storeId, String name, String adminDisplayName, String description, Integer price, Boolean isSoldOut, Boolean deleted) {Also applies to: 57-57
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (6)
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuCreateRequest.java(2 hunks)nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuCreateResponse.java(3 hunks)nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuReadDto.java(3 hunks)nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuUpdateRequest.java(1 hunks)nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/service/MenuService.java(1 hunks)nowait-domain/domain-core-rdb/src/main/java/com/nowait/domaincorerdb/menu/entity/Menu.java(2 hunks)
🔇 Additional comments (8)
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuUpdateRequest.java (1)
13-13: adminDisplayName 필드 추가 확인됨업데이트 요청에서 adminDisplayName 필드가 올바르게 추가되었습니다. 다른 DTO들과 달리 @NotNull 어노테이션이 없는데, 업데이트 시 부분 업데이트를 허용하려는 의도로 보입니다.
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuCreateRequest.java (1)
30-30: 기본값 설정 로직 확인adminDisplayName이 null일 때 name을 기본값으로 사용하는 로직이 있습니다. 이 비즈니스 로직이 의도된 것인지 확인이 필요합니다.
adminDisplayName의 기본값을 name으로 설정하는 것이 비즈니스 요구사항에 맞는지 검토해 주세요.
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/service/MenuService.java (1)
110-110: updateInfo 메서드 호출 업데이트 확인됨adminDisplayName 파라미터가 updateInfo 메서드 호출에 올바르게 추가되었습니다. 파라미터 순서가 논리적으로 배치되어 있습니다.
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuCreateResponse.java (1)
18-18: adminDisplayName 필드 매핑 확인됨adminDisplayName 필드가 올바르게 추가되고 fromEntity 메서드에서 적절히 매핑되었습니다.
Also applies to: 31-31
nowait-app-admin-api/src/main/java/com/nowait/applicationadmin/menu/dto/MenuReadDto.java (1)
18-18: adminDisplayName 필드 매핑 확인됨adminDisplayName 필드가 올바르게 추가되고 fromEntity 메서드에서 적절히 매핑되었습니다.
Also applies to: 30-30
nowait-domain/domain-core-rdb/src/main/java/com/nowait/domaincorerdb/menu/entity/Menu.java (3)
34-35: 필드 제약 조건이 적절합니다.
adminDisplayName필드가nullable = false로 설정되어 관리자용 메뉴명이 항상 존재하도록 보장합니다. 이는 관리자 화면에서 메뉴를 표시할 때 일관성을 유지하는 데 도움이 됩니다.
65-66: null 체크 로직이 일관성 있게 적용되었습니다.
updateInfo메서드에서adminDisplayName에 대한 null 체크가 다른 필드들과 동일한 패턴으로 구현되어 일관성이 유지됩니다. 이는 부분 업데이트 시나리오에서 기존 값을 유지할 수 있도록 합니다.
65-70: updateInfo 메서드 시그니처 및 DTO 일관성 확인 완료
- MenuService.updateInfo 호출부에서 4개 인자(adminDisplayName, name, description, price)를 올바르게 전달함
- MenuUpdateRequest, MenuCreateRequest, MenuReadDto, MenuCreateResponse 등 DTO에
private Integer price필드 선언 및 서비스 호출부 매핑(getPrice())이 정상적으로 이루어짐위 검증 결과, 변경된 엔티티 메서드 시그니처에 맞춰 서비스 레이어와 DTO 모두 올바르게 업데이트되었으므로 별도 수정할 사항이 없습니다.
작업 요약
Issue Link
#250
문제점 및 어려움
어드민 영역 주문 조회 시 관리자 메뉴 이름으로 보여야 되는건지 확인 필요
해결 방안
Reference
Summary by CodeRabbit