-
Notifications
You must be signed in to change notification settings - Fork 0
[TB-35] 영수증 도메인 로직 수정 #40
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
Codecov ReportAttention: Patch coverage is 📢 Thoughts on this report? Let us know! |
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.
Pull Request Overview
This PR refactors receipt domain logic to push monthly and category expense calculations into query-level DTOs, removes legacy domain service classes, and unifies S3 URL handling and method naming.
- Removed
ReceiptEditor/ReceiptItemEditorand inlined mapping & validation in application services - Introduced
MonthlyExpenseResultandCategoryExpenseResultrecords for QueryDSL-level DTOs - Added
createObjectNametoS3UrlBuilderand updated controllers/use cases to match renamed methods
Reviewed Changes
Copilot reviewed 22 out of 32 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/test/java/com/ClubAccount_BE/factory/receipt/ReceiptTestFactory.java | Updated import path for ReceiptCategory after package move |
| src/main/java/com/ClubAccount_BE/receipt/domain/service/ReceiptItemEditor.java | Removed legacy editor service |
| src/main/java/com/ClubAccount_BE/receipt/domain/service/ReceiptEditor.java | Removed legacy editor service |
| src/main/java/com/ClubAccount_BE/receipt/domain/ReceiptMonthlyExpenseResult.java | Deleted outdated DTO in favor of record |
| src/main/java/com/ClubAccount_BE/receipt/domain/ReceiptCategoryExpenseResult.java | Deleted outdated DTO in favor of record |
| src/main/java/com/ClubAccount_BE/receipt/domain/ReceiptCategory.java | Moved enum from type package to receipt.domain |
| src/main/java/com/ClubAccount_BE/receipt/domain/Receipt.java | Updated updateAmountMatched to accept items and renamed image check |
| src/main/java/com/ClubAccount_BE/receipt/domain/MonthlyExpenseResult.java | Added new record for monthly expense |
| src/main/java/com/ClubAccount_BE/receipt/domain/CategoryExpenseResult.java | Added new record for category expense |
| src/main/java/com/ClubAccount_BE/receipt/application/service/UpdateReceiptService.java | Inlined item mapping & amount validation, removed service deps |
| src/main/java/com/ClubAccount_BE/receipt/application/service/FindReceiptService.java | Renamed methods, inlined expense queries, removed service deps |
| src/main/java/com/ClubAccount_BE/receipt/application/service/DeleteReceiptService.java | Adjusted delete logic to filter non-default images inline |
| src/main/java/com/ClubAccount_BE/receipt/application/service/CreateReceiptService.java | Inlined item mapping & amount validation, removed service deps |
| src/main/java/com/ClubAccount_BE/receipt/application/port/in/FindReceiptUseCase.java | Renamed use-case methods to align with controller changes |
| src/main/java/com/ClubAccount_BE/receipt/adapter/in/web/dto/response/ReceiptResponse.java | Updated import path for ReceiptCategory |
| src/main/java/com/ClubAccount_BE/receipt/adapter/in/web/dto/response/ReceiptMonthlyExpenseResponse.java | Switched to MonthlyExpenseResult record |
| src/main/java/com/ClubAccount_BE/receipt/adapter/in/web/dto/response/ReceiptCategoryExpenseResponse.java | Switched to CategoryExpenseResult record |
| src/main/java/com/ClubAccount_BE/receipt/adapter/in/web/dto/request/ReceiptRequest.java | Updated import path for ReceiptCategory |
| src/main/java/com/ClubAccount_BE/receipt/adapter/in/web/api/FindReceiptApi.java | Updated API signatures & paths for date/category queries |
| src/main/java/com/ClubAccount_BE/receipt/adapter/in/web/FindReceiptController.java | Updated controller method names & mappings |
| src/main/java/com/ClubAccount_BE/core/s3/S3UrlBuilder.java | Added createObjectName to interface |
| src/main/java/com/ClubAccount_BE/core/s3/DefaultS3UrlBuilder.java | Implemented createObjectName with UUID prefix |
Comments suppressed due to low confidence (3)
src/main/java/com/ClubAccount_BE/receipt/domain/Receipt.java:97
- The method name
isDefaultImageis misleading because it returns true for non-default images. Consider renaming it tohasCustomImageorisNonDefaultImagefor clarity.
public boolean isDefaultImage(String defaultImage) {
src/main/java/com/ClubAccount_BE/receipt/domain/MonthlyExpenseResult.java:6
- [nitpick] Consider adding class-level Javadoc to explain the purpose of this record and the semantics of its fields.
public record MonthlyExpenseResult(
src/main/java/com/ClubAccount_BE/receipt/domain/CategoryExpenseResult.java:6
- [nitpick] Consider adding class-level Javadoc to clarify the intent of this record and document its fields.
public record CategoryExpenseResult(
src/main/java/com/ClubAccount_BE/receipt/application/service/CreateReceiptService.java
Outdated
Show resolved
Hide resolved
src/main/java/com/ClubAccount_BE/receipt/application/service/UpdateReceiptService.java
Outdated
Show resolved
Hide resolved
tiemo0708
left a comment
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.
코파일럿이 잡아준거만 확인하면 될거 같습니다.
고생하셨습니다
src/main/java/com/ClubAccount_BE/receipt/application/service/CreateReceiptService.java
Outdated
Show resolved
Hide resolved
|



📌 작업 개요
✅ 작업 내용
📂 리뷰 요구사항