โณ๏ธ ์ฅ๋ฐ๊ตฌ๋ ๊ตฌํ (2)
๐ ํ๋ชฉ ๋ฆฌ์คํธ
3๏ธโฃ ์ฅ๋ฐ๊ตฌ๋ ํ๋ชฉ ์ญ์
โณ๏ธ API : GET /cart/delete/{uniqueId}
โก๏ธ ์๋ ์๊ตฌ ์ฌํญ์ ์ฃผ์ด์ง API ๋ /cart/remove/{productId} ์์ง๋ง ๊ทธ๊ฒ๋ณด๋ค๋ unique ํ ๊ฐ์ธ indexUnique ๋ฅผ ์ฐ๋ฉด ์ข์ ๊ฒ ๊ฐ์์ ์์ ํ์๋ค.
โ CartItem ์ Index_unique ๋ฅผ ์ฌ์ฉํ์ฌ ๋ก์ง ๊ตฌ์ฑ
public class CartController {
// (์๋ต)
@PreAuthorize("isAuthenticated()")
@GetMapping("/delete/{uniqueId}")
public String deleteCartItem(@PathVariable Long uniqueId) {
cartService.deleteCartItem(uniqueId);
return "redirect:/cart/list";
}
}
public class CartService {
// (์๋ต)
public void deleteCartItem(Long uniqueId) {
CartItem cartItem = cartRepository.findByIndexUnique(uniqueId).orElse(null);
if (cartItem == null) {
throw new NotFoundException();
}
cartRepository.delete(cartItem);
}
}
โก Test Case ์์ฑ (CartServiceTests)
@Test
@DisplayName("์ํ ์ญ์ ํ์ธ")
void t3() {
// When
cartService.deleteCartItem(23L);
List<CartItem> cartItemList = cartService.findAllByMemberId(2L);
// Then
assertThat(cartItemList.size()).isEqualTo(0);
}

โฃ UI ์ ์ฉ ๋ฐ ํ์ธ


โณ๏ธ ์ฃผ๋ฌธ ๊ตฌํ
๐ ์ฃผ๋ฌธ ์์ฑ
โณ๏ธ API : GET /order/create
โณ๏ธ ์๊ตฌ์ฌํญ
โ๏ธ ์ฃผ๋ฌธ์ ํ๋ฉด ์ผ๋จ ์ฃผ๋ฌธ์ ์ํ๋ ์ค๋น์ํ์ด๋ค.
โ๏ธ ์ฌ๊ธฐ์ ๊ฒฐ์ ๋ฅผ ํ๊ฑฐ๋, ์ฃผ๋ฌธ์ทจ์๋ฅผ ํ ์ ์๋ค.
โ Entity ์์ฑ (Order & OrderItem)
โก Service ๊ตฌํ
โข Test Case ์์ฑ (OderServiceTests)
public class OrderServiceTests {
// (์๋ต)
@Test
@DisplayName("์ฃผ๋ฌธ ์์ฑ")
@Rollback(value = false)
public void t1() {
// Given
Member member = memberService.findByUsername("user2").get();
List<CartItem> cartItems = cartService.findAllByMemberId(member.getId());
// When
Order order = orderService.createFromCart(member);
// Then
assertThat(order.getOrderItems().size()).isEqualTo(cartItems.size());
}
}





๐ ์ฐธ๊ณ
โ ๊ฐ์ฌ๋ Order ๊ด๋ จ : https://www.youtube.com/watch?v=XlVT0QjD7yw
โก Order ๊ด๋ จ ์ฝ๋ : https://github.com/jhs512/app_2022_09_22/commit/b65b626a7afc13d33ef2447add502b45a0708f9b
'LikeLion_Final_Project ๐ฅ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [2์ฃผ์ฐจ] Mission ํด๊ฒฐ ์ผ์ง (1) (1) | 2022.10.25 |
|---|---|
| [1์ฃผ์ฐจ] ํผ์ด ๋ฆฌ๋ทฐ ์ผ์ง (0) | 2022.10.20 |
| [1์ฃผ์ฐจ] Mission ํด๊ฒฐ ์ผ์ง (0) | 2022.10.19 |
| [0์ฃผ์ฐจ] ํ๋ก์ ํธ ๊ฐ์ (0) | 2022.10.17 |