diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java index 55a11af30..695574156 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java @@ -354,7 +354,7 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService WxCashBackActivityItem item = wxCashBackActivityItemMapper.selectById(record.getItemId(), record.getTenantId()); EnumCashBackActivityItemRule moneyRule = EnumCashBackActivityItemRule.getEnum(item.getMoneyRule()); record.setCashRate(item.getTotalBackRate()); - record.setCashMoney(record.getOrderMoney().multiply(item.getTotalBackRate()).setScale(2,BigDecimal.ROUND_HALF_UP)); + record.setCashMoney(record.getOrderMoney().multiply(item.getTotalBackRate()).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP)); if (moneyRule == EnumCashBackActivityItemRule.MALL_ONLY) { record.setMallCashMoney(record.getCashMoney()); record.setMerchantCashMoney(new BigDecimal(0)); @@ -362,8 +362,8 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService record.setMallCashMoney(new BigDecimal(0)); record.setMerchantCashMoney(record.getCashMoney()); }else if (moneyRule == EnumCashBackActivityItemRule.SHARE) { - record.setMallCashMoney(record.getCashMoney().multiply(item.getMallBackRate()).setScale(2,BigDecimal.ROUND_HALF_UP)); - record.setMerchantCashMoney(record.getCashMoney().multiply(item.getMerchantBackRate()).setScale(2,BigDecimal.ROUND_HALF_UP)); + record.setMallCashMoney(record.getCashMoney().multiply(item.getMallBackRate()).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP)); + record.setMerchantCashMoney(record.getCashMoney().multiply(item.getMerchantBackRate()).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP)); } }