From f922fc5f52e4ed41ef523de02c9d257345d385e3 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 20 Jul 2023 14:48:31 +0800 Subject: [PATCH] 支付返利,微信余额支付会有返利。发卷,赠送积分逻辑 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 40 ++++++++++++---------------------------- 1 files changed, 12 insertions(+), 28 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 7656e4d..e4f02b2 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 @@ -150,31 +150,7 @@ /** * */ - Integer isNormal = mallGoods.getIsNormal(); - if(GoodsTypeEnum.SCORE_CHANGE.getValue() == isNormal){ - //普通用户使用原价购买 - amount = sku.getOriginalPrice().multiply(BigDecimal.valueOf(item.getCnt())); - itemPrice = sku.getOriginalPrice(); - }else if(GoodsTypeEnum.BUY_SCORE.getValue() == isNormal){ - //普通用户使用原价购买 - amount = sku.getLevelOnePrice().multiply(BigDecimal.valueOf(item.getCnt())); - itemPrice = sku.getLevelOnePrice(); - }else if(GoodsTypeEnum.NORMAL_GOODS.getValue() == isNormal){ - //普通用户使用原价购买 - amount = sku.getLevelTwoPrice().multiply(BigDecimal.valueOf(item.getCnt())); - itemPrice = sku.getLevelTwoPrice(); - }else if(GoodsTypeEnum.CLASS_ROLL.getValue() == isNormal){ - //普通用户使用原价购买 - amount = sku.getLevelThreePrice().multiply(BigDecimal.valueOf(item.getCnt())); - itemPrice = sku.getLevelThreePrice(); - }else if(GoodsTypeEnum.HOUSE_ROLL.getValue() == isNormal){ - //普通用户使用原价购买 - amount = sku.getLevelThreePrice().multiply(BigDecimal.valueOf(item.getCnt())); - itemPrice = sku.getLevelThreePrice(); - }else{ - throw new FebsException("当前商品无法购买!"); - } - orderItem.setAmount(amount); + orderItem.setAmount(sku.getPresentPrice().multiply(BigDecimal.valueOf(item.getCnt()))); orderItem.setCnt(item.getCnt()); orderItem.setOrderId(orderInfo.getId()); orderItem.setPrice(itemPrice); @@ -322,6 +298,7 @@ String payResultStr = ""; String wxResultStr = ""; + String amountActualMsg = ""; switch (payOrderDto.getType()) { case "1": BrandWCPayRequestData brandWCPayRequestData = null; @@ -333,6 +310,7 @@ wxResultStr = JSONUtil.toJsonStr(brandWCPayRequestData); payResultStr = brandWCPayRequestData.getPrepay_id(); orderInfo.setPayMethod("微信支付"); + amountActualMsg = orderInfo.getAmount().toString(); break; case "2": payResultStr = balancePay(orderInfo, payOrderDto.getTradePwd(), "balance"); @@ -346,6 +324,8 @@ mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2); + + amountActualMsg = orderInfo.getAmount().toString(); break; case "3": /** @@ -396,6 +376,7 @@ mallMoneyFlowService.addMoneyFlow(member.getId(), amountActual.negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2); } + amountActualMsg = amountActual.toString(); if(scoreActual.compareTo(BigDecimal.ZERO) > 0){ mallMoneyFlowService.addMoneyFlow(member.getId(), scoreActual.negate(), MoneyFlowTypeEnum.SCORE_PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"积分支付",2); @@ -413,7 +394,7 @@ payResultStr = orderInfo.getOrderNo(); - orderInfo.setPayOrderNo(orderInfo.getOrderNo()); + orderInfo.setPayOrderNo(payOrderDto.getRollId().toString()); orderInfo.setPayMethod("兑换券支付"); orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue()); orderInfo.setPayTime(new Date()); @@ -430,8 +411,11 @@ String takeCode = ShareCodeUtil.toSerialCode(orderInfo.getId()); orderInfo.setTakeCode(takeCode); this.baseMapper.updateById(orderInfo); - - + StringBuffer stringBuffer = new StringBuffer(); + stringBuffer.append(orderInfo.getId().toString()); + stringBuffer.append("@"); + stringBuffer.append(amountActualMsg); + agentProducer.sendOrderGetMsg(stringBuffer.toString()); // OrderStateDto orderStateDto = new OrderStateDto(); // orderStateDto.setOrderNo(orderInfo.getOrderNo()); -- Gitblit v1.9.1