From 7f1c8b8b095072f2e336688020fe25526b82beec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=9D=99?= Date: Thu, 17 Feb 2022 15:01:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E8=80=81=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Api/Http/Controllers/Order/OrderController.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) 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();