Browse Source

fixed:技师端-接单

刘学玺 4 months ago
parent
commit
13490234d9
1 changed files with 6 additions and 5 deletions
  1. 6 5
      app/Services/Coach/OrderService.php

+ 6 - 5
app/Services/Coach/OrderService.php

@@ -442,16 +442,14 @@ class OrderService
                 $order = Order::lockForUpdate()->findOrFail($orderId);
                 $order = Order::lockForUpdate()->findOrFail($orderId);
 
 
                 // 验证订单状态
                 // 验证订单状态
-                abort_if($order->state !== OrderStatus::ASSIGNED->value, 400, '订单状态异常,无法接单');
+                abort_if($order->state !== OrderStatus::PAID->value, 400, '订单状态异常,无法接单');
 
 
                 // 验证订单是否分配给该技师
                 // 验证订单是否分配给该技师
                 abort_if($order->coach_id !== $coach->id, 403, '该订单未分配给您');
                 abort_if($order->coach_id !== $coach->id, 403, '该订单未分配给您');
 
 
                 // 更新订单状态
                 // 更新订单状态
-                $order->update([
+                $order->state = OrderStatus::ACCEPTED->value;
-                    'state' => OrderStatus::ACCEPTED->value,
+                $order->save();
-                    'accepted_at' => now(),
-                ]);
 
 
                 // 记录日志
                 // 记录日志
                 Log::info('技师接单成功', [
                 Log::info('技师接单成功', [
@@ -461,6 +459,9 @@ class OrderService
                     'order_no' => $order->order_no,
                     'order_no' => $order->order_no,
                 ]);
                 ]);
 
 
+                // 清理技师相关缓存
+                app(AccountService::class)->clearTimeSlotCache($coach->id);
+
                 return [
                 return [
                     'message' => '接单成功',
                     'message' => '接单成功',
                     'order_id' => $orderId,
                     'order_id' => $orderId,