Skip to content

Commit

Permalink
feat: order error fix
Browse files Browse the repository at this point in the history
  • Loading branch information
Jeongh00 committed Aug 4, 2024
1 parent aef33c7 commit ea101bd
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import java.util.List;

public record ApprovalRequest(
List<Long> menuIds,
List<Long> cartIds,
String orderNum,
String paymentKey,
Integer amount,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.likelion.apimodule.payment.dto.request.ApprovalRequest;
import com.likelion.apimodule.security.util.JwtUtil;
import com.likelion.coremodule.cart.service.CartQueryService;
import com.likelion.coremodule.market.service.MarketQueryService;
import com.likelion.coremodule.menu.domain.Menu;
import com.likelion.coremodule.menu.service.MenuQueryService;
Expand All @@ -20,6 +21,8 @@
import java.security.SecureRandom;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

@Slf4j
@Service
Expand All @@ -37,12 +40,22 @@ public class PaymentService {
private static final String ALPHANUMERIC = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
private static final SecureRandom random = new SecureRandom();
private final MenuQueryService menuQueryService;
private final CartQueryService cartQueryService;

public void approval(String accessToken, ApprovalRequest request) {

String email = jwtUtil.getEmail(accessToken);
User user = userQueryService.findByEmail(email);
Store store = storeQueryService.findStoreById(request.menuIds().get(0));

List<Menu> menuList = new ArrayList<>();
for (Long id : request.cartIds()) {
Menu menu = menuQueryService.findMenuById(id);
menuList.add(menu);

cartQueryService.deleteCartByUserIdAndCartId(user.getUserId(), id);
}

Store store = storeQueryService.findStoreById(menuList.get(0).getId());

// 토스 페이 결제 승인
// TossPaymentResponse tossPaymentResponse = paymentClient.confirmPayment(request);
Expand All @@ -55,9 +68,9 @@ public void approval(String accessToken, ApprovalRequest request) {
visitHour(request.visitHour()).visitMin(request.visitMin()).build();
orderQueryService.saveOrder(order);

for (int i = 0; i < request.menuIds().size(); i++) {
for (Menu value : menuList) {

Long m = request.menuIds().get(i);
Long m = value.getId();
Menu menu = menuQueryService.findMenuById(m);

final OrderItem orderItem = OrderItem.builder().order(order).menu(menu).quantity(request.amount()).build();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package com.likelion.coremodule.cart.service;

import com.likelion.coremodule.cart.domain.Cart;
import com.likelion.coremodule.cart.exception.CartErrorCode;
import com.likelion.coremodule.cart.exception.CartException;
import com.likelion.coremodule.cart.repository.CartRepository;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
Expand All @@ -17,6 +19,10 @@ public void saveCart(Cart cart) {
cartRepository.save(cart);
}

public Cart findCartById(Long cartId) {
return cartRepository.findById(cartId).orElseThrow(() -> new CartException(CartErrorCode.NO_CART_INFO));
}

public List<Cart> findCartsByUserId(Long userId) {
return cartRepository.findCartsByUserUserId(userId);
}
Expand Down

0 comments on commit ea101bd

Please sign in to comment.