|
|
@@ -266,6 +266,7 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
orderDon.setMoney(payRequest.getDonMoney());
|
|
|
orderDon.setRealMoney(payRequest.getDonMoney());
|
|
|
orderDon.setCurrency(payRequest.getCurrency());
|
|
|
+ orderDon.setRate(payRequest.getRate());
|
|
|
List<Long> dpSkuIds = payRequest.getDpSkuIds();
|
|
|
if (CollUtil.isNotEmpty(dpSkuIds)) {
|
|
|
if (dpSkuIds.size() > 1) {
|
|
|
@@ -1979,6 +1980,9 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
}
|
|
|
BigDecimal userBalance = user.getBalance();
|
|
|
//扣除余额 是否成功
|
|
|
+ if (!"USD".equals(orderDon.getCurrency())){
|
|
|
+ subBalance = subBalance.divide(orderDon.getRate(),2,RoundingMode.HALF_UP);
|
|
|
+ }
|
|
|
Integer success = userMapper.deductBalance(user.getId(), subBalance, userBalance);
|
|
|
if (success != 1) throw BusinessRuntimeException.getInstance(I18nMessageUtil.getI18nMsg("user_balance_not_enough"));
|
|
|
orderDon.setBalance(subBalance);
|