From 9ed717fb9529c6568e7e4295c76b68de3b08fc7c Mon Sep 17 00:00:00 2001 From: Klaus Date: Mon, 9 Jun 2025 16:52:19 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EC=BF=A0=ED=8F=B0=20=EC=82=AC=EC=9A=A9?= =?UTF-8?q?=20-=20=EC=BF=A0=ED=8F=B0=20=EC=82=AC=EC=9A=A9=20=EC=99=84?= =?UTF-8?q?=EB=A3=8C=20=EC=95=88=EB=82=B4=20=EB=AC=B8=EA=B5=AC=20=EC=A0=81?= =?UTF-8?q?=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../co/vividnext/sodalive/can/charge/ChargeService.kt | 5 ++++- .../sodalive/can/coupon/CanCouponController.kt | 10 +++++----- .../vividnext/sodalive/can/coupon/CanCouponService.kt | 4 ++-- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/can/charge/ChargeService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/can/charge/ChargeService.kt index 66ea314..63f93eb 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/can/charge/ChargeService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/can/charge/ChargeService.kt @@ -67,7 +67,7 @@ class ChargeService( ) { @Transactional - fun chargeByCoupon(couponNumber: String, member: Member) { + fun chargeByCoupon(couponNumber: String, member: Member): String { val canCouponNumber = couponNumberRepository.findByCouponNumber(couponNumber = couponNumber) ?: throw SodaException("잘못된 쿠폰번호입니다.\n고객센터로 문의해 주시기 바랍니다.") @@ -93,6 +93,7 @@ class ChargeService( chargeRepository.save(couponCharge) member.charge(0, coupon.can, "pg") + return "쿠폰 사용이 완료되었습니다. ${coupon.can}캔이 지급되었습니다." } CouponType.POINT -> { @@ -119,6 +120,8 @@ class ChargeService( expiresAt = LocalDateTime.now().plusDays(3) ) ) + + return "쿠폰 사용이 완료되었습니다. ${coupon.can}포인트가 지급되었습니다." } } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponController.kt b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponController.kt index 9d680a1..628145a 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponController.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponController.kt @@ -109,11 +109,11 @@ class CanCouponController(private val service: CanCouponService) { ) = run { if (member == null) throw SodaException("로그인 정보를 확인해주세요.") - ApiResponse.ok( - service.useCanCoupon( - couponNumber = request.couponNumber, - memberId = member.id!! - ) + val completeMessage = service.useCanCoupon( + couponNumber = request.couponNumber, + memberId = member.id!! ) + + ApiResponse.ok(Unit, completeMessage) } } diff --git a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt index 5870ffc..ff88283 100644 --- a/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt +++ b/src/main/kotlin/kr/co/vividnext/sodalive/can/coupon/CanCouponService.kt @@ -121,7 +121,7 @@ class CanCouponService( } } - fun useCanCoupon(couponNumber: String, memberId: Long) { + fun useCanCoupon(couponNumber: String, memberId: Long): String { val member = memberRepository.findByIdOrNull(id = memberId) ?: throw SodaException("로그인 정보를 확인해주세요.") @@ -129,7 +129,7 @@ class CanCouponService( issueService.validateAvailableUseCoupon(couponNumber, memberId) - chargeService.chargeByCoupon(couponNumber, member) + return chargeService.chargeByCoupon(couponNumber, member) } private fun insertHyphens(input: String): String {