Bladeren bron

fixed:用户端-加钟

刘学玺 4 maanden geleden
bovenliggende
commit
d6746f251f
2 gewijzigde bestanden met toevoegingen van 4 en 4 verwijderingen
  1. 3 1
      app/Http/Controllers/Client/OrderController.php
  2. 1 3
      app/Services/Client/OrderService.php

+ 3 - 1
app/Http/Controllers/Client/OrderController.php

@@ -2,6 +2,7 @@
 
 namespace App\Http\Controllers\Client;
 
+use App\Enums\OrderType;
 use App\Http\Controllers\Controller;
 use App\Services\Client\OrderService;
 use Illuminate\Http\Request;
@@ -286,7 +287,7 @@ class OrderController extends Controller
      * @bodyParam project_id int required 项目ID. Example: 1
      * @bodyParam use_balance boolean 使用余额. Example: false
      * @bodyParam order_id int 订单ID. Example: 15
-     * @bodyParam payment_type string 支付类型. Example: balance
+     * @bodyParam payment_type number 支付类型. Example: 1 (1:余额,2:微信,3:支付宝)
      *
      * @response {
      *   "status": "success",
@@ -296,6 +297,7 @@ class OrderController extends Controller
     public function addTime(Request $request)
     {
         $data = $request->only(['project_id', 'use_balance', 'order_id', 'payment_type']);
+        $data['order_type'] = OrderType::OVERTIME->value;
 
         return $this->service->createOrder(Auth::user()->id, $data);
     }

+ 1 - 3
app/Services/Client/OrderService.php

@@ -143,8 +143,6 @@ class OrderService
             // 上门订单必须指定技师和地址
             abort_if($orderType == OrderType::VISIT->value && empty($data['coach_id']), 400, '技师ID不能为空');
             abort_if($orderType == OrderType::VISIT->value && empty($data['address_id']), 400, '地址ID不能为空');
-            // 抢单订单必须指定地址
-            abort_if($orderType == OrderType::GRAB->value && empty($data['address_id']), 400, '地址ID不能为空');
             // 加钟订单必须指定原订单
             abort_if($orderType == OrderType::OVERTIME->value && empty($data['order_id']), 400, '原订单ID不能为空');
             // 到店订单必须指定店铺
@@ -165,7 +163,7 @@ class OrderService
                 $data['address_id'] = $originalOrder->address_id;
 
                 $this->validateCoach($originalOrder->coach_id);
-                abort_if(! in_array($originalOrder->state, ['service_ing', 'service_end']), 400, '原订单状态不允许加钟');
+                abort_if(! in_array($originalOrder->state, [OrderStatus::SERVING->value, OrderStatus::FINISHED->value]), 400, '原订单状态不允许加钟');
                 $data = $this->prepareAddTimeData($originalOrder, $data);
             }