Răsfoiți Sursa

取消订单时,只有非预订单才需要回滚

shish 3 ani în urmă
părinte
comite
c059cbdc7b
2 a modificat fișierele cu 20 adăugiri și 21 ștergeri
  1. 0 3
      app-ghs/controllers/OrderController.php
  2. 20 18
      biz-ghs/order/classes/OrderClass.php

+ 0 - 3
app-ghs/controllers/OrderController.php

@@ -1012,9 +1012,6 @@ class OrderController extends BaseController
         if (isset($order->status) == false || $order->status != 1) {
         if (isset($order->status) == false || $order->status != 1) {
             util::fail('不是待付款状态,无法取消');
             util::fail('不是待付款状态,无法取消');
         }
         }
-        if (isset($order->book) && $order->book == 1) {
-            util::fail('预订单暂不支持取消');
-        }
         $purchaseId = $order->purchaseId ?? 0;
         $purchaseId = $order->purchaseId ?? 0;
         $purchase = PurchaseClass::getById($purchaseId);
         $purchase = PurchaseClass::getById($purchaseId);
         if (empty($purchase)) {
         if (empty($purchase)) {

+ 20 - 18
biz-ghs/order/classes/OrderClass.php

@@ -1399,24 +1399,26 @@ class OrderClass extends BaseClass
         $main->unPayOrder -= 1;
         $main->unPayOrder -= 1;
         $main->cancelOrder += 1;
         $main->cancelOrder += 1;
         $main->save();
         $main->save();
-        //加回库存
-        $orderItem = OrderItemClass::getOrderItem($order->orderSn);
-        foreach ($orderItem as $v) {
-            $stockInfo = ProductClass::addStockByItemNum($v['productId'], $v['num']);
-            $recordData = [];
-            $recordData['sjId'] = $order->sjId;
-            $recordData['shopId'] = $shopId;
-            //增加中央ID
-            $recordData['mainId'] = ProductClass::getMainIdByProductId($v['productId']);
-            $recordData['itemId'] = $v['itemId'] ?? 0;
-            $recordData['itemNum'] = $v['num'];
-            $recordData['oldStock'] = $stockInfo['oldStock'];
-            $recordData['newStock'] = $stockInfo['newStock'];
-            $recordData['productId'] = $v['productId'];
-            $recordData['orderSn'] = $order->orderSn;
-            $recordData['relateName'] = $order->customName ?? '';
-            $recordData['ptStyle'] = dict::getDict('ptStyle', 'ghs');
-            StockRecordClass::addSellStockOrderCancelRecord($recordData);
+        if ($order->book != 1) {
+            //非预订单库存回滚
+            $orderItem = OrderItemClass::getOrderItem($order->orderSn);
+            foreach ($orderItem as $v) {
+                $stockInfo = ProductClass::addStockByItemNum($v['productId'], $v['num']);
+                $recordData = [];
+                $recordData['sjId'] = $order->sjId;
+                $recordData['shopId'] = $shopId;
+                //增加中央ID
+                $recordData['mainId'] = ProductClass::getMainIdByProductId($v['productId']);
+                $recordData['itemId'] = $v['itemId'] ?? 0;
+                $recordData['itemNum'] = $v['num'];
+                $recordData['oldStock'] = $stockInfo['oldStock'];
+                $recordData['newStock'] = $stockInfo['newStock'];
+                $recordData['productId'] = $v['productId'];
+                $recordData['orderSn'] = $order->orderSn;
+                $recordData['relateName'] = $order->customName ?? '';
+                $recordData['ptStyle'] = dict::getDict('ptStyle', 'ghs');
+                StockRecordClass::addSellStockOrderCancelRecord($recordData);
+            }
         }
         }
         return $order;
         return $order;
     }
     }