diff --git a/pluss-service-bundle/src/main/java/cn/pluss/platform/realFans/impl/RealFansServiceImpl.java b/pluss-service-bundle/src/main/java/cn/pluss/platform/realFans/impl/RealFansServiceImpl.java index bf5ff7c..cb13574 100644 --- a/pluss-service-bundle/src/main/java/cn/pluss/platform/realFans/impl/RealFansServiceImpl.java +++ b/pluss-service-bundle/src/main/java/cn/pluss/platform/realFans/impl/RealFansServiceImpl.java @@ -45,14 +45,11 @@ public class RealFansServiceImpl extends ServiceImpl i private GeneralPushUtil generalPushUtil; @Override - public void removeProfit(String orderNumber) { - - MerchantOrder order= merchantOrderService.queryMerchantOrder(new MerchantOrder().setOrderNumber(orderNumber)); + public void removeProfit(MerchantOrder order) { if(ObjectUtil.isEmpty(order)){ - log.error("订单信息不存在:{}",orderNumber); + log.error("订单信息不存在"); return; } - cancelUserProfitV2(order); } @@ -90,7 +87,7 @@ public class RealFansServiceImpl extends ServiceImpl i for (MerchantProfit p : profitList) { sumProfitMoney = sumProfitMoney.add(new BigDecimal(String.valueOf(p.getPrice()))); } - order.setProfitShareMoney(sumProfitMoney.abs().negate().setScale(4, BigDecimal.ROUND_DOWN).doubleValue()); + order.setProfitShareMoney(new BigDecimal(order.getProfitShareMoney()).add(sumProfitMoney.abs().negate().setScale(4, BigDecimal.ROUND_DOWN)).doubleValue()); log.info("【去除分润结算结束】订单号:{}产生的分润总额:{}", order.getOrderNumber(), sumProfitMoney); } } @@ -156,7 +153,7 @@ public class RealFansServiceImpl extends ServiceImpl i return; } log.info("userId:{},rate:{},amount:{}",nowUserApp.getUserId(),profitRate,order.getConsumeFee()); - BigDecimal profitAmt = profitRate.divide(BigDecimal.valueOf(100)).multiply(BigDecimal.valueOf(order.getConsumeFee())).setScale(4, BigDecimal.ROUND_DOWN); + BigDecimal profitAmt = profitRate.divide(BigDecimal.valueOf(100)).multiply(order.getRefundAmt()).setScale(4, BigDecimal.ROUND_DOWN); MerchantProfit profit = new MerchantProfit(nowUserApp,nowUserApp , order, profitAmt.abs().negate(), profitRate, "5", "1"); profits.add(profit); // sendProfitMessage(nowUserApp, profitAmt, order.getOrderNumber()); @@ -171,7 +168,7 @@ public class RealFansServiceImpl extends ServiceImpl i public void removeProfit(MerchantOrder order, BigDecimal refundAmt,BigDecimal useRefundAmt) { BigDecimal consumeFee = BigDecimal.valueOf(order.getConsumeFee()); if(refundAmt.compareTo(consumeFee) == 0){ - removeProfit(order.getOrderNumber()); + removeProfit(order); }else{ QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.eq("orderNumber",order.getOrderNumber());