From 852b685fc99028dbd47f14e50939e00216ee26e7 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Thu, 15 May 2025 10:50:28 +0800 Subject: [PATCH] feat(mall): 新增新人礼设置功能 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 41 ++++++++++++++++++++++++++++------------- 1 files changed, 28 insertions(+), 13 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index 65239cf..98822cb 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -543,23 +543,23 @@ if (OrderStatusEnum.WAIT_PAY.getValue() != orderInfo.getStatus()) { throw new FebsException("订单状态不能支付"); } - //先支付积分部分 - if(orderInfo.getScoreAmount().compareTo(BigDecimal.ZERO) > 0){ - balanceScorePay(orderInfo, payOrderDto.getTradePwd(), "prizeScore"); - mallMoneyFlowService.addMoneyFlow( - member.getId(), - orderInfo.getAmount().negate(), - ScoreFlowTypeEnum.PAY.getValue(), - orderInfo.getOrderNo(), - FlowTypeEnum.PRIZE_SCORE.getValue(), - StrUtil.format(ScoreFlowTypeEnum.PAY.getDesc(),orderInfo.getScoreAmount()), - 2 - ); - } String payResultStr = ""; String wxResultStr = ""; if(orderInfo.getAmount().compareTo(BigDecimal.ZERO) <= 0){ + //先支付积分部分 + if(orderInfo.getScoreAmount().compareTo(BigDecimal.ZERO) > 0){ + balanceScorePay(orderInfo, payOrderDto.getTradePwd(), "prizeScore"); + mallMoneyFlowService.addMoneyFlow( + member.getId(), + orderInfo.getScoreAmount().negate(), + ScoreFlowTypeEnum.PAY.getValue(), + orderInfo.getOrderNo(), + FlowTypeEnum.PRIZE_SCORE.getValue(), + StrUtil.format(ScoreFlowTypeEnum.PAY.getDesc(),orderInfo.getScoreAmount()), + 2 + ); + } orderInfo.setPayOrderNo(orderInfo.getOrderNo()); orderInfo.setPayMethod("积分支付"); orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue()); @@ -591,8 +591,23 @@ agentProducer.sendOrderReturn(orderInfo.getId()); break; case "3": + payResultStr = balancePay(orderInfo, payOrderDto.getTradePwd(), "balance"); + //先支付积分部分 + if(orderInfo.getScoreAmount().compareTo(BigDecimal.ZERO) > 0){ + balanceScorePay(orderInfo, payOrderDto.getTradePwd(), "prizeScore"); + mallMoneyFlowService.addMoneyFlow( + member.getId(), + orderInfo.getScoreAmount().negate(), + ScoreFlowTypeEnum.PAY.getValue(), + orderInfo.getOrderNo(), + FlowTypeEnum.PRIZE_SCORE.getValue(), + StrUtil.format(ScoreFlowTypeEnum.PAY.getDesc(),orderInfo.getScoreAmount()), + 2 + ); + } + orderInfo.setPayOrderNo(orderInfo.getOrderNo()); orderInfo.setPayMethod("余额支付"); orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue()); -- Gitblit v1.9.1