|
|
@@ -11,7 +11,9 @@ use biz\shop\classes\ShopExtClass;
|
|
|
use biz\shop\models\Shop;
|
|
|
use biz\stat\classes\StatOrderCountClass;
|
|
|
use biz\wx\classes\WxMessageClass;
|
|
|
+use bizGhs\product\classes\ProductClass;
|
|
|
use bizGhs\stat\classes\StatYjClass;
|
|
|
+use bizGhs\stock\classes\StockRecordClass;
|
|
|
use bizGhs\ws\services\WsService;
|
|
|
use bizHd\custom\classes\CustomClass;
|
|
|
use bizHd\merchant\classes\SjClass;
|
|
|
@@ -305,16 +307,56 @@ class OrderClass extends BaseClass
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //订单到期未付款的订单置成取消状态 ssh 2020.5.25
|
|
|
+ //订单取消 ssh 20220516
|
|
|
public static function setExpire($order)
|
|
|
{
|
|
|
$now = time();
|
|
|
- if (!empty($order['deadline']) && $now > $order['deadline']) {
|
|
|
- if ($order['status'] == 0) {
|
|
|
- $id = $order['id'];
|
|
|
- OrderClass::updateById($id, ['status' => 4]);
|
|
|
+ if ($order->deadline > $now) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ if ($order->status != 1) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ $order->status = 5;
|
|
|
+ $order->save();
|
|
|
+ //暂时只考虑花材库存的回滚
|
|
|
+ $orderSn = $order->orderSn ?? '';
|
|
|
+ $itemList = OrderItemClass::getAllByCondition(['orderSn' => $orderSn], null, '*', null, true);
|
|
|
+ if (empty($itemList)) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ foreach ($itemList as $item) {
|
|
|
+
|
|
|
+ $ptItemId = $item->ptItemId ?? 0;
|
|
|
+ $sjId = $item->sjId ?? 0;
|
|
|
+ $shopId = $item->shopId ?? 0;
|
|
|
+ $mainId = $item->mainId ?? 0;
|
|
|
+ $ratio = $item->ratio ?? 20;
|
|
|
+ $unitType = $item->unitType ?? 0;
|
|
|
+ $bigNum = 0;
|
|
|
+ $smallNum = 0;
|
|
|
+ if ($unitType == 0) {
|
|
|
+ $bigNum = $item->num;
|
|
|
+ } else {
|
|
|
+ $smallNum = $item->num;
|
|
|
}
|
|
|
+ $itemId = $item->itemId ?? 0;
|
|
|
+ $stockInfo = ProductClass::addStock($itemId, $bigNum, $smallNum);
|
|
|
+ $recordData = [];
|
|
|
+ $recordData['sjId'] = $sjId;
|
|
|
+ $recordData['shopId'] = $shopId;
|
|
|
+ $recordData['mainId'] = $mainId;
|
|
|
+ $recordData['itemId'] = $ptItemId;
|
|
|
+ $recordData['itemNum'] = ProductClass::mergeItemNum($bigNum, $smallNum, $ratio);
|
|
|
+ $recordData['oldStock'] = $stockInfo['oldStock'];
|
|
|
+ $recordData['newStock'] = $stockInfo['newStock'];
|
|
|
+ $recordData['productId'] = $itemId;
|
|
|
+ $recordData['orderSn'] = $orderSn;
|
|
|
+ $recordData['relateName'] = '系统';
|
|
|
+ StockRecordClass::addSellStockOrderCancelRecord($recordData);
|
|
|
+
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
|
|
|
// 扣库存
|