Skip to content

Commit 80e1d41

Browse files
committed
update: 상품 등록 API 수정
- 등록할 상품의 브랜드가 존재하는지 검증하는 로직 추가
1 parent c5d719c commit 80e1d41

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

apps/commerce-api/src/main/java/com/loopers/application/product/ProductFacade.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.loopers.application.product;
22

3+
import com.loopers.domain.brand.BrandRepository;
34
import com.loopers.domain.like.LikeRepository;
45
import com.loopers.domain.product.Product;
56
import com.loopers.domain.product.ProductRepository;
@@ -17,10 +18,17 @@
1718
public class ProductFacade {
1819
private final ProductRepository productRepository;
1920
private final LikeRepository likeRepository;
21+
private final BrandRepository brandRepository;
2022

2123

2224
@Transactional
2325
public ProductInfo registerProduct(ProductV1Dto.ProductRequest request) {
26+
Long brandId = request.brandId();
27+
28+
brandRepository.findById(brandId).orElseThrow(
29+
() -> new CoreException(ErrorType.NOT_FOUND, "등록하고자 하는 상품의 브랜드가 존재하지 않습니다.")
30+
);
31+
2432
Product product = request.toEntity();
2533
productRepository.save(product);
2634

@@ -52,6 +60,7 @@ public ProductInfo findProductById(Long id) {
5260

5361
@Transactional(readOnly = true)
5462
public List<ProductInfo> searchProductsByCondition(ProductV1Dto.SearchProductRequest request) {
63+
request.filterCondition().conditionValidate();
5564
request.sortCondition().conditionValidate();
5665

5766
List<Product> products = productRepository.searchProductsByCondition(request);

0 commit comments

Comments
 (0)