diff --git a/server/src/main/java/com/soopgyeol/api/controller/UserController.java b/server/src/main/java/com/soopgyeol/api/controller/UserController.java index b8dec11..576a256 100644 --- a/server/src/main/java/com/soopgyeol/api/controller/UserController.java +++ b/server/src/main/java/com/soopgyeol/api/controller/UserController.java @@ -1,8 +1,11 @@ package com.soopgyeol.api.controller; +import com.soopgyeol.api.common.dto.ApiResponse; import com.soopgyeol.api.common.dto.NicknameUpdateRequest; import com.soopgyeol.api.common.dto.NicknameUpdateResponse; +import com.soopgyeol.api.config.auth.CustomUserDetails; import com.soopgyeol.api.domain.user.User; +import com.soopgyeol.api.domain.user.dto.MoneyBalanceResponse; import com.soopgyeol.api.domain.user.dto.UserInfoResponse; import com.soopgyeol.api.service.UserService; import com.soopgyeol.api.service.jwt.JwtProvider; @@ -69,4 +72,12 @@ public ResponseEntity deleteMe(@RequestHeader("Authorization") String authori } } + @GetMapping("/money-balance") + public ResponseEntity> getMoneyBalance ( + @AuthenticationPrincipal CustomUserDetails userDetails + ) { + MoneyBalanceResponse response = userService.getMoneyBalance(userDetails.getUserId()); + return ResponseEntity.ok(new ApiResponse<>(true, "회원 잔액 조회 성공", response)); + } + } \ No newline at end of file diff --git a/server/src/main/java/com/soopgyeol/api/domain/user/dto/MoneyBalanceResponse.java b/server/src/main/java/com/soopgyeol/api/domain/user/dto/MoneyBalanceResponse.java new file mode 100644 index 0000000..ff2e9d5 --- /dev/null +++ b/server/src/main/java/com/soopgyeol/api/domain/user/dto/MoneyBalanceResponse.java @@ -0,0 +1,10 @@ +package com.soopgyeol.api.domain.user.dto; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public class MoneyBalanceResponse { + private int moneyBalance; +} diff --git a/server/src/main/java/com/soopgyeol/api/service/UserService.java b/server/src/main/java/com/soopgyeol/api/service/UserService.java index 5e0e5da..99e4611 100644 --- a/server/src/main/java/com/soopgyeol/api/service/UserService.java +++ b/server/src/main/java/com/soopgyeol/api/service/UserService.java @@ -1,6 +1,7 @@ package com.soopgyeol.api.service; import com.soopgyeol.api.domain.user.User; +import com.soopgyeol.api.domain.user.dto.MoneyBalanceResponse; import com.soopgyeol.api.repository.UserRepository; import com.soopgyeol.api.repository.StageRepository; import com.soopgyeol.api.repository.InventoryRepository; @@ -46,4 +47,11 @@ public void deleteUser(Long userId) { userRepository.delete(user); } + public MoneyBalanceResponse getMoneyBalance(Long userId){ + User user = userRepository.findById(userId) + .orElseThrow(() -> new IllegalArgumentException("유저가 존재하지 않습니다.")); + + return new MoneyBalanceResponse(user.getMoneyBalance()); + } + }