diff --git a/app/Endpoint/Api/Http/Controllers/Order/OrderController.php b/app/Endpoint/Api/Http/Controllers/Order/OrderController.php index c270bb6e..950f39b9 100644 --- a/app/Endpoint/Api/Http/Controllers/Order/OrderController.php +++ b/app/Endpoint/Api/Http/Controllers/Order/OrderController.php @@ -2,6 +2,7 @@ namespace App\Endpoint\Api\Http\Controllers\Order; +use App\Constants\Device; use App\Endpoint\Api\Http\Controllers\Controller; use App\Endpoint\Api\Http\Resources\OrderPackageResource; use App\Endpoint\Api\Http\Resources\OrderResource; @@ -132,11 +133,20 @@ class OrderController extends Controller public function confirm($id, Request $request) { $user = $request->user(); + $clientApp = $request->header('client-app', Device::UNIAPP); + $clientVersion = $request->header('client-version'); - DB::transaction(function () use ($id, $user) { + DB::transaction(function () use ($id, $user, $clientApp, $clientVersion) { $order = $user->orders()->lockForUpdate()->findOrFail($id); - (new OrderService())->confirm($order, true); + // 订单是否可结算 + $isSettlable = false; + + if ($clientApp === Device::UNIAPP && version_compare($clientVersion, '1.3.4', '<')) { + $isSettlable = true; + } + + (new OrderService())->confirm($order, $isSettlable); }); return response()->noContent();