[프로젝트] 웹 siCloud - day10

_bean_·2023년 8월 1일
0

[팀 프로젝트] siCloud

목록 보기
11/21
post-thumbnail

오류 및 문제점

1. 쇼핑몰 테이블

  • 문제점: 쇼핑몰에서 생성된 주문을 담을 테이블이 필요하다.
  • 해결방안: 쇼핑몰 주문내역, 주문상품 테이블을 만든다.

2. 출고 등록 로직 수정

  • 문제점: 출고 등록은 쇼핑몰의 주문건을 끌고오는 것이다.
  • 해결방안: 쇼핑몰의 주문 생성을 만든 후 ShoppingService를 이용해 주문건을 가져온다.

진행 상황

1. API 문서 완성

2. 쇼핑몰 주문 더미 데이터 생성

3. 쇼핑몰 주문 생성 코드 작성

// ShoppingService.java
@Transactional
public boolean register(Long sellerNo, List<ShoppingProductDTO> shoppingProductDTOs) {
	// 수집된 주문이 없는 경우
	if(shoppingProductDTOs.size() == 0) return false;
		
	List<ShoppingProduct> shoppingProducts = new ArrayList<>();
	Seller seller = sellerService.findById(sellerNo);
	StringBuilder exportNo = new StringBuilder("S");
	exportNo.append(sellerNo);
	exportNo.append("-");
	exportNo.append(new Date().getTime() % 10000000);
		
	Shopping shopping = shoppingProductDTOs.get(0)
			.toShopping(exportNo.toString(), "11번가", seller); 
		
	Shopping savedShopping = shoppingRepository.save(shopping);

	for(ShoppingProductDTO shoppingProductDTO: shoppingProductDTOs) {
		Product findedProduct = productService.findByProductNo(shoppingProductDTO.getProductNo());
		shoppingProducts.add(shoppingProductDTO.toShoppingProduct(findedProduct, savedShopping));
	}
		
	List<ShoppingProduct> savedProduct = shoppingProductRepository.saveAll(shoppingProducts);
		
	return (savedShopping != null && savedProduct != null);
}
profile
어쩌다 풀스택 :3

0개의 댓글