|
|
@@ -798,7 +798,7 @@ public class WFTOrderService {
|
|
|
if (canRefundMoney.compareTo(refundMoney) >= 0) {
|
|
|
//退款金额大于订单金额,则直接退退款金额
|
|
|
refundOrder(userOrderInfo,refundMoney, "账户退款", SystemConstants.STATUS_ONE);
|
|
|
- //账户变动及日志记录
|
|
|
+ //账户变动及日志记录(退款清空账户余额)
|
|
|
userAccountService.updateAccountBalanceAndLog(
|
|
|
SecurityUtils.getUserId(),
|
|
|
refundMoney,
|
|
|
@@ -810,23 +810,23 @@ public class WFTOrderService {
|
|
|
userOrderInfo.setOrderStatus(SystemConstants.STATUS_FOUR);
|
|
|
userOrderInfoMapper.updateById(userOrderInfo);
|
|
|
refundMoney = BigDecimal.ZERO;
|
|
|
- continue;
|
|
|
+ break;
|
|
|
}
|
|
|
if (canRefundMoney.compareTo(refundMoney) < 0) {
|
|
|
//退款金额小于订单金额,则先退订单金额
|
|
|
refundOrder(userOrderInfo, canRefundMoney, "账户退款", SystemConstants.STATUS_TWO);
|
|
|
- //账户变动及日志记录
|
|
|
+ //账户变动及日志记录(减少账户余额)
|
|
|
userAccountService.updateAccountBalanceAndLog(
|
|
|
SecurityUtils.getUserId(),
|
|
|
canRefundMoney,
|
|
|
- SystemConstants.ACCOUNT_REFUND,
|
|
|
+ SystemConstants.CHANGE_TYPE_REDUCE,
|
|
|
SystemConstants.ACCOUNT_LOG_REFUND_NOTE,
|
|
|
userOrderInfo.getId()
|
|
|
);
|
|
|
//修改订单状态
|
|
|
userOrderInfo.setOrderStatus(SystemConstants.STATUS_FOUR);
|
|
|
userOrderInfoMapper.updateById(userOrderInfo);
|
|
|
- refundMoney = refundMoney.subtract(userOrderInfo.getOrderMoney());
|
|
|
+ refundMoney = refundMoney.subtract(canRefundMoney);
|
|
|
}
|
|
|
}
|
|
|
return "账户退款,预计3个工作日内分一笔或多笔退还!到期如未收到,请联系客服处理!";
|