diff --git a/server/src/main/java/com/soopgyeol/api/controller/AuthController.java b/server/src/main/java/com/soopgyeol/api/controller/AuthController.java index f92ac6b..2549192 100644 --- a/server/src/main/java/com/soopgyeol/api/controller/AuthController.java +++ b/server/src/main/java/com/soopgyeol/api/controller/AuthController.java @@ -14,9 +14,9 @@ import java.util.Map; //임시 토큰 코드 사용 시 활성화 -//import com.soopgyeol.api.domain.user.User; -//import com.soopgyeol.api.repository.UserRepository; -//import com.soopgyeol.api.service.jwt.JwtProvider; +import com.soopgyeol.api.domain.user.User; +import com.soopgyeol.api.repository.UserRepository; +import com.soopgyeol.api.service.jwt.JwtProvider; @RestController @RequiredArgsConstructor @RequestMapping("/api/v1/auth/oauth") @@ -84,20 +84,20 @@ public void kakaoAutoLogin(@RequestParam String code, HttpServletResponse respon // 임시 토큰 생성시 활성화 -// private final UserRepository userRepository; -// private final JwtProvider jwtProvider; -// @PostMapping("/dev-login") -// public OAuthLoginResponse devLogin(@RequestParam Long userId) { -// User user = userRepository.findById(userId) -// .orElseThrow(() -> new IllegalArgumentException("유저 없음")); -// -// String jwt = jwtProvider.createToken(user.getId(), user.getRole()); -// -// return OAuthLoginResponse.builder() -// .jwtToken(jwt) -// .isNewUser(false) -// .build(); -// } + private final UserRepository userRepository; + private final JwtProvider jwtProvider; + @PostMapping("/dev-login") + public OAuthLoginResponse devLogin(@RequestParam Long userId) { + User user = userRepository.findById(userId) + .orElseThrow(() -> new IllegalArgumentException("유저 없음")); + + String jwt = jwtProvider.createToken(user.getId(), user.getRole()); + + return OAuthLoginResponse.builder() + .jwtToken(jwt) + .isNewUser(false) + .build(); + } } diff --git a/server/src/main/java/com/soopgyeol/api/service/buy/BuyServiceImpl.java b/server/src/main/java/com/soopgyeol/api/service/buy/BuyServiceImpl.java index 8219e9a..fe72b98 100644 --- a/server/src/main/java/com/soopgyeol/api/service/buy/BuyServiceImpl.java +++ b/server/src/main/java/com/soopgyeol/api/service/buy/BuyServiceImpl.java @@ -2,8 +2,10 @@ import com.soopgyeol.api.domain.buy.dto.BuyResult; import com.soopgyeol.api.domain.buy.entity.Purchase; +import com.soopgyeol.api.domain.item.entity.Inventory; import com.soopgyeol.api.domain.item.entity.Item; import com.soopgyeol.api.domain.user.User; +import com.soopgyeol.api.repository.InventoryRepository; import com.soopgyeol.api.repository.ItemRepository; import com.soopgyeol.api.repository.PurchaseRepository; import com.soopgyeol.api.repository.UserRepository; @@ -12,19 +14,24 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDateTime; + @Service public class BuyServiceImpl implements BuyService { private final ItemRepository itemRepository; private final PurchaseRepository purchaseRepository; private final UserRepository userRepository; + private final InventoryRepository inventoryRepository; public BuyServiceImpl(ItemRepository itemRepository, PurchaseRepository purchaseRepository, - UserRepository userRepository) { + UserRepository userRepository, + InventoryRepository inventoryRepository) { this.itemRepository = itemRepository; this.purchaseRepository = purchaseRepository; this.userRepository = userRepository; + this.inventoryRepository = inventoryRepository; } @Transactional @@ -61,6 +68,15 @@ public BuyResult buyItem(Long userId, Long itemId) { purchaseRepository.save(purchase); + Inventory inventory = Inventory.builder() + .user(user) + .item(item) + .isBuyed(true) + .isDisplayed(false) // 기본값, 필요에 따라 true로 + .buyAt(LocalDateTime.now()) + .build(); + inventoryRepository.save(inventory); + return BuyResult.builder() .itemId(item.getId()) .itemName(item.getName())