You've already forked FrameTour-BE
feat(AppClaimController): 优化优惠券领取结果展示
- 在 ClaimResp 中添加 couponType 字段,用于展示优惠券类型 -根据 CouponType 枚举值,设置不同的优惠券类型描述- 优化折扣优惠券和满减优惠券的描述生成逻辑- 保留原有的通用优惠券描述配置
This commit is contained in:
@@ -7,6 +7,7 @@ import com.ycwl.basic.pricing.dto.CouponClaimRequest;
|
||||
import com.ycwl.basic.pricing.dto.CouponClaimResult;
|
||||
import com.ycwl.basic.pricing.dto.req.VoucherPrintReq;
|
||||
import com.ycwl.basic.pricing.dto.resp.VoucherPrintResp;
|
||||
import com.ycwl.basic.pricing.enums.CouponType;
|
||||
import com.ycwl.basic.pricing.service.ICouponService;
|
||||
import com.ycwl.basic.pricing.service.VoucherPrintService;
|
||||
import com.ycwl.basic.repository.FaceRepository;
|
||||
@@ -19,6 +20,9 @@ import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/mobile/claim/v1")
|
||||
@AllArgsConstructor
|
||||
@@ -80,6 +84,24 @@ public class AppClaimController {
|
||||
if (claimResult.isSuccess()) {
|
||||
// 领到了
|
||||
claimResp.setHasCoupon(true);
|
||||
switch (claimResult.getCoupon().getCouponType()) {
|
||||
case CouponType.PERCENTAGE:
|
||||
claimResp.setCouponType("折扣优惠券");
|
||||
claimResp.setCouponDesc("打" + (BigDecimal.valueOf(1).setScale(2, RoundingMode.HALF_UP).subtract(claimResult.getCoupon().getDiscountValue())).multiply(BigDecimal.valueOf(10)) + "折");
|
||||
break;
|
||||
case CouponType.FIXED_AMOUNT:
|
||||
if (claimResult.getCoupon().getMinAmount().compareTo(BigDecimal.ZERO) > 0) {
|
||||
claimResp.setCouponType("满减优惠券");
|
||||
claimResp.setCouponDesc("满" + claimResult.getCoupon().getMinAmount() + "减" + claimResult.getCoupon().getDiscountValue());
|
||||
} else {
|
||||
claimResp.setCouponType("直减优惠券");
|
||||
claimResp.setCouponDesc("直减" + claimResult.getCoupon().getDiscountValue());
|
||||
}
|
||||
break;
|
||||
default:
|
||||
claimResp.setCouponType("普通优惠券");
|
||||
break;
|
||||
}
|
||||
claimResp.setCouponDesc(scenicConfig.getString("coupon_desc_for_type_" + req.getType(), "专属折扣券"));
|
||||
claimResp.setCouponCountdown(scenicConfig.getString("coupon_countdown_for_type_" + req.getType(), "送你优惠,保存美好!"));
|
||||
return ApiResponse.success(claimResp);
|
||||
|
@@ -8,6 +8,7 @@ public class ClaimResp {
|
||||
private String printType;
|
||||
private String printCode;
|
||||
private Boolean hasCoupon;
|
||||
private String couponType;
|
||||
private String couponDesc;
|
||||
private String couponCountdown;
|
||||
}
|
||||
|
Reference in New Issue
Block a user