|
@@ -278,13 +278,25 @@ public class NewOrderService extends CrudService<NewOrderDao, NewOrder> {
|
|
|
|
|
|
newOrder.setPromotions(promotionsList);
|
|
|
//查询是否存在余额记录
|
|
|
+ boolean isUpdateUserMoney = false;
|
|
|
CmUserBalanceRecord balanceRecord = new CmUserBalanceRecord();
|
|
|
balanceRecord.setOrderId(newOrder.getOrderID());
|
|
|
List<CmUserBalanceRecord> record = cmUserBalanceRecordService.getBalanceRecord(balanceRecord);
|
|
|
-
|
|
|
- //更新用户余额,增加余额记录
|
|
|
- if (newOrder.getBalancePayFee() != null && newOrder.getBalancePayFee() > 0 && record != null && record.size() == 0) {
|
|
|
+ if (record != null && record.size() > 0) {
|
|
|
+ record.forEach(r -> {
|
|
|
+ r.setDelFlag("1");
|
|
|
+ r.setRemark("修改订单,自动更新余额抵扣,此条记录作废--后台");
|
|
|
+ cmUserBalanceRecordService.updateBalanceRecord(r);
|
|
|
+ });
|
|
|
+ // 更新用户余额
|
|
|
cmUserDao.updateAbleUserMoney(newOrder.getBpOrderUserinfo());
|
|
|
+ isUpdateUserMoney = true;
|
|
|
+ }
|
|
|
+ if (newOrder.getBalancePayFee() != null && newOrder.getBalancePayFee() > 0) {
|
|
|
+ if (!isUpdateUserMoney) {
|
|
|
+ // 更新用户余额
|
|
|
+ cmUserDao.updateAbleUserMoney(newOrder.getBpOrderUserinfo());
|
|
|
+ }
|
|
|
//添加余额收支记录
|
|
|
CmUserBalanceRecord cmUserBalanceRecord = new CmUserBalanceRecord();
|
|
|
cmUserBalanceRecord.setUserId(newOrder.getUserID());
|