공통 모듈 repo 위치 변경
💡build.gradle 변경
- repositories
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
- implementation
implementation 'com.github.ElevenHub:HubEleven-common:v0.0.1'
💡변경 사유
- 기존 common (공통 모듈) 이 팀장님 개인 repo 위치에 있어, 팀원 모두 공통 모듈 변경 가능하도록 팀 organization repo로 변경
응답값 변경
💡기존 코드
@Operation(summary = "주문 생성 API", description = "새로운 주문을 생성한다.")
@PostMapping
public ResponseEntity<ApiResponse<OrderResponse>> create(
@Valid @RequestBody OrderRequests.Create request) {
OrderResult result = orderService.create(request);
return ApiResponseEntity.success(OrderResponse.from(result));
}
- return ApiResponseEntity.success(OrderResponse.from(result));
💡변경 코드
@Operation(summary = "주문 생성 API", description = "새로운 주문을 생성한다.")
@PostMapping
public ResponseEntity<ApiResponse<OrderResponse>> create(
@Valid @RequestBody OrderRequests.Create request) {
OrderResult result = orderService.create(request);
return ResponseEntity.status(HttpStatus.CREATED)
.body(ApiResponse.success(OrderResponse.from(result)));
}
- return ResponseEntity.status(HttpStatus.CREATED).body(ApiResponse.success(OrderResponse.from(result)));
💡변경 사유
ErrorCode
💡기존 코드
public enum OrderErrorCode implements StatusCode {
// Company
REQUESTOR_COMPANY_NOT_FOUND(HttpStatus.NOT_FOUND, "업체를 찾을 수 없습니다."),
RECIPIENT_COMPANY_NOT_FOUND(HttpStatus.NOT_FOUND, "업체를 찾을 수 없습니다."),
// Product
PRODUCT_NOT_FOUND(HttpStatus.NOT_FOUND, "상품을 찾을 수 없습니다."),
// Stock
STOCK_RESTORE_FAILED(HttpStatus.BAD_REQUEST, "재고 복구에 실패했습니다."),
STOCK_INSUFFICIENT(HttpStatus.BAD_REQUEST, "재고가 부족합니다."),
// Order
ORDER_NOT_FOUND(HttpStatus.NOT_FOUND, "주문을 찾을 수 없습니다."),
// Authorization
MASTER_ONLY(HttpStatus.FORBIDDEN, "MASTER 권한이 있어야 수행할 수 있습니다."),
HUB_MANAGER_ONLY(HttpStatus.FORBIDDEN, "HUB_MANAGER 권한이 있어야 수행할 수 있습니다."),
DELIVERY_MANAGER_ONLY(HttpStatus.FORBIDDEN, "DELIVERY_MANAGER 권한이 있어야 수행할 수 있습니다."),
COMPANY_MANAGER_ONLY(HttpStatus.FORBIDDEN, "COMPANY_MANAGER 권한이 있어야 수행할 수 있습니다.");
private final HttpStatus httpStatus;
private final String message;
@Override
public String getName() {
return name();
}
}
💡변경 코드
@Getter
@RequiredArgsConstructor
public enum OrderErrorCode implements ErrorCode {
// Company
REQUESTOR_COMPANY_NOT_FOUND(HttpStatus.NOT_FOUND, "업체를 찾을 수 없습니다."),
RECIPIENT_COMPANY_NOT_FOUND(HttpStatus.NOT_FOUND, "업체를 찾을 수 없습니다."),
// Product
PRODUCT_NOT_FOUND(HttpStatus.NOT_FOUND, "상품을 찾을 수 없습니다."),
// Stock
STOCK_RESTORE_FAILED(HttpStatus.BAD_REQUEST, "재고 복구에 실패했습니다."),
STOCK_INSUFFICIENT(HttpStatus.BAD_REQUEST, "재고가 부족합니다."),
// Order
ORDER_NOT_FOUND(HttpStatus.NOT_FOUND, "주문을 찾을 수 없습니다."),
// Authorization
MASTER_ONLY(HttpStatus.FORBIDDEN, "MASTER 권한이 있어야 수행할 수 있습니다."),
HUB_MANAGER_ONLY(HttpStatus.FORBIDDEN, "HUB_MANAGER 권한이 있어야 수행할 수 있습니다."),
DELIVERY_MANAGER_ONLY(HttpStatus.FORBIDDEN, "DELIVERY_MANAGER 권한이 있어야 수행할 수 있습니다."),
COMPANY_MANAGER_ONLY(HttpStatus.FORBIDDEN, "COMPANY_MANAGER 권한이 있어야 수행할 수 있습니다.");
private final HttpStatus httpStatus;
private final String message;
}
- implements 를 ErrorCode 로 변경
- 기존 StatusCode 의 Override 메서드 삭제
💡변경 사유
'Projects > HubEleven' 카테고리의 다른 글
| [리팩토링] 권한 별 기능 제한 로직 구현 (2) (업데이트 중..) (0) | 2026.01.08 |
|---|---|
| [리팩토링] 권한 별 기능 제한 로직 구현 (1) (업데이트 중..) (0) | 2026.01.07 |
| [리팩토링] Swagger Request DTO 메서드 충돌 트러블슈팅 (0) | 2026.01.06 |
| [동시성 처리] 테스트 코드 런타임 에러 발생 (업데이트 중..) (0) | 2026.01.05 |
| [동시성 처리] 재고 감소 통합 테스트 코드 3 - Test Fixture (0) | 2026.01.01 |