feat/KD-41-domain Schedule 도메인 엔티티 설계#277
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Walkthrough새로운 Schedule 도메인 모듈을 추가하여 스케줄 관리 기능을 구현합니다. 엔티티, 리포지토리, 커맨드/쿼리 서비스, 예외 처리 및 JPA 인프라 계층으로 구성된 완전한 도메인 구조를 포함합니다. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Possibly related issues
Suggested reviewers
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
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. Comment |
Test Coverage Report
Files
|
Codecov Report❌ Patch coverage is ❌ Your patch status has failed because the patch coverage (0.00%) is below the target coverage (10.00%). You can increase the patch coverage or adjust the target coverage. @@ Coverage Diff @@
## develop #277 +/- ##
=============================================
- Coverage 92.81% 83.70% -9.11%
Complexity 164 164
=============================================
Files 50 55 +5
Lines 487 540 +53
Branches 4 5 +1
=============================================
Hits 452 452
- Misses 29 82 +53
Partials 6 6
Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
aics-domain/src/main/java/kgu/developers/domain/schedule/domain/ScheduleRepository.java (1)
11-11:findBySubmissionTyp메서드명 오타 수정 권장신규 인터페이스 공개 API에 오타가 남으면 이후 전반에 걸쳐 오용될 가능성이 커집니다. 지금 단계에서
findBySubmissionType으로 정정하고 구현체 및 서비스 계층 호출부도 함께 맞춰 주세요.아래 패치를 적용해 주세요:
- Optional<Schedule> findBySubmissionTyp(SubmissionType submissionType); + Optional<Schedule> findBySubmissionType(SubmissionType submissionType);
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (12)
aics-domain/src/main/java/kgu/developers/domain/schedule/application/command/ScheduleService.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/application/query/ScheduleQueryService.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/domain/Schedule.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/domain/ScheduleRepository.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/domain/ScheduleStatus.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/domain/SubmissionType.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/exception/DuplicateScheduleTypeException.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/exception/ScheduleDomainExceptionCode.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/exception/ScheduleNotFoundException.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/infrastructure/JpaScheduleRepository.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/infrastructure/ScheduleJpaEntity.java(1 hunks)aics-domain/src/main/java/kgu/developers/domain/schedule/infrastructure/ScheduleRepositoryImpl.java(1 hunks)
🧰 Additional context used
🧬 Code graph analysis (5)
aics-domain/src/main/java/kgu/developers/domain/schedule/application/query/ScheduleQueryService.java (2)
aics-domain/src/main/java/kgu/developers/domain/schedule/exception/ScheduleNotFoundException.java (1)
ScheduleNotFoundException(7-9)aics-domain/src/main/java/kgu/developers/domain/schedule/application/command/ScheduleService.java (1)
Service(13-44)
aics-domain/src/main/java/kgu/developers/domain/schedule/infrastructure/ScheduleJpaEntity.java (1)
aics-domain/src/main/java/kgu/developers/domain/schedule/domain/Schedule.java (1)
Getter(10-60)
aics-domain/src/main/java/kgu/developers/domain/schedule/application/command/ScheduleService.java (1)
aics-domain/src/main/java/kgu/developers/domain/schedule/application/query/ScheduleQueryService.java (1)
Service(12-30)
aics-domain/src/main/java/kgu/developers/domain/schedule/domain/ScheduleStatus.java (1)
aics-domain/src/main/java/kgu/developers/domain/schedule/domain/Schedule.java (1)
Getter(10-60)
aics-domain/src/main/java/kgu/developers/domain/schedule/domain/SubmissionType.java (1)
aics-domain/src/main/java/kgu/developers/domain/schedule/domain/Schedule.java (1)
Getter(10-60)
🔇 Additional comments (5)
aics-domain/src/main/java/kgu/developers/domain/schedule/exception/DuplicateScheduleTypeException.java (1)
7-9: 도메인 예외 코드 매핑이 일관적입니다. CustomException 계층에서 사용하는 코드 위임 패턴을 그대로 따르고 있어 추가 수정이 필요 없어 보입니다.aics-domain/src/main/java/kgu/developers/domain/schedule/exception/ScheduleNotFoundException.java (1)
7-9: 조회 실패 예외 정의가 명확합니다. SCHEDULE_MANAGEMENT_NOT_FOUND 코드를 그대로 위임하여 도메인 전반의 에러 처리 방식과 잘 맞습니다.aics-domain/src/main/java/kgu/developers/domain/schedule/infrastructure/JpaScheduleRepository.java (1)
8-10: 파생 쿼리 선언이 적절합니다. SubmissionType을 기반으로 Optional 조회를 노출하여 서비스 계층에서 중복 여부나 존재 여부를 명확히 분기할 수 있겠습니다.aics-domain/src/main/java/kgu/developers/domain/schedule/domain/SubmissionType.java (1)
6-17: 라벨 포함 enum 구성이 깔끔합니다. @requiredargsconstructor와 @Getter 조합으로 한글 라벨을 안전하게 노출할 수 있어 유지보수가 수월해 보입니다.aics-domain/src/main/java/kgu/developers/domain/schedule/domain/ScheduleStatus.java (1)
6-14: 상태 enum 정의가 Schedule.statusAt과 잘 호응합니다. 각 상태에 한글 라벨을 부여해 표현 계층에서도 재사용하기 좋겠습니다.
…SubmissionTyp 오타 수정 , entity,repository 패키지 생성하여 분리 작업
LeeHanEum
left a comment
There was a problem hiding this comment.
PR에 DDL도 같이 올려주면 좋을거 같아요~
LGTM👍
|
ddl 추가해주신것도 확인 했습니다! 따로 이슈는 없어 보이네요 |
Summary
해당 PR에 대한 요약을 작성해주세요.
Schedule 도메인 엔티티 설계하고 서비스 기능을 구현했습니다.
Tasks