|
|
@@ -76,11 +76,19 @@ class OrderService extends BaseService
|
|
|
self::payAfter($return, $payWay);
|
|
|
PurchaseService::payAfter($purchase, $payWay);
|
|
|
|
|
|
+ if (isset($return->sendType) == false) {
|
|
|
+ util::fail('没有找到配送方式');
|
|
|
+ }
|
|
|
+ //自取订单直接完成
|
|
|
+ if ($return->sendType == OrderClass::SEND_TYPE_NO) {
|
|
|
+ self::withoutSend($return, $purchase);
|
|
|
+ }
|
|
|
+
|
|
|
return $return->attributes;
|
|
|
}
|
|
|
|
|
|
//自取免配送流程处理 ssh 2021.1.24
|
|
|
- public static function withoutSend($order)
|
|
|
+ public static function withoutSend($order, $purchase)
|
|
|
{
|
|
|
if (isset($order->status) == false) {
|
|
|
util::fail('没有订单状态');
|
|
|
@@ -88,7 +96,6 @@ class OrderService extends BaseService
|
|
|
if ($order->status == OrderClass::ORDER_STATUS_COMPLETE) {
|
|
|
util::fail('订单已完成');
|
|
|
}
|
|
|
-
|
|
|
//自取订单,订单直接完成。【现在有三个地方有订单完成操作】
|
|
|
$shopId = $order->shopId ?? 0;
|
|
|
$shop = Shop::findBySql('select * from ' . Shop::tableName() . ' where id = :id for update', ['id' => $shopId])->one();
|
|
|
@@ -98,7 +105,6 @@ class OrderService extends BaseService
|
|
|
$shop->unSendOrder -= 1;
|
|
|
$shop->sendingOrder += 1;
|
|
|
$shop->save();
|
|
|
-
|
|
|
//自取免配送
|
|
|
$order->sendType = OrderClass::SEND_TYPE_NO;
|
|
|
$order->save();
|
|
|
@@ -106,6 +112,15 @@ class OrderService extends BaseService
|
|
|
//订单完成
|
|
|
self::finish($order, $shop);
|
|
|
|
|
|
+ $purchaseShopId = $purchase->shopId;
|
|
|
+ $purchaseShop = Shop::findBySql('select * from ' . Shop::tableName() . ' where id = :id for update', ['id' => $purchaseShopId])->one();
|
|
|
+ if (empty($purchaseShop)) {
|
|
|
+ util::fail('没有找到门店');
|
|
|
+ }
|
|
|
+ $purchaseShop->cgUnSend -= 1;
|
|
|
+ $purchaseShop->cgSending += 1;
|
|
|
+ $purchaseShop->save();
|
|
|
+
|
|
|
OrderSendClass::withoutSend($order);
|
|
|
|
|
|
return OrderClass::TOTAL_FLOW;
|
|
|
@@ -459,15 +474,6 @@ class OrderService extends BaseService
|
|
|
$time = date("Y-m-d H:i:s");
|
|
|
$placeData = ['payTime' => $time, 'orderSn' => $orderSn, 'orderId' => $orderId];
|
|
|
OrderSendClass::placeOrder($placeData);
|
|
|
-
|
|
|
- if (isset($order->sendType) == false) {
|
|
|
- util::fail('没有找到配送方式');
|
|
|
- }
|
|
|
-
|
|
|
- if ($order->sendType == OrderClass::SEND_TYPE_NO) {
|
|
|
- self::withoutSend($order);
|
|
|
- }
|
|
|
-
|
|
|
}
|
|
|
|
|
|
}
|