瀏覽代碼

修改订单问题

plf 3 年之前
父節點
當前提交
92fc8c0c64
共有 1 個文件被更改,包括 15 次插入3 次删除
  1. 15 3
      src/main/java/com/caimei/modules/order/service/NewOrderService.java

+ 15 - 3
src/main/java/com/caimei/modules/order/service/NewOrderService.java

@@ -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());