|
@@ -442,16 +442,14 @@ class OrderService
|
|
|
$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, '该订单未分配给您');
|
|
|
|
|
|
// 更新订单状态
|
|
|
- $order->update([
|
|
|
- 'state' => OrderStatus::ACCEPTED->value,
|
|
|
- 'accepted_at' => now(),
|
|
|
- ]);
|
|
|
+ $order->state = OrderStatus::ACCEPTED->value;
|
|
|
+ $order->save();
|
|
|
|
|
|
// 记录日志
|
|
|
Log::info('技师接单成功', [
|
|
@@ -461,6 +459,9 @@ class OrderService
|
|
|
'order_no' => $order->order_no,
|
|
|
]);
|
|
|
|
|
|
+ // 清理技师相关缓存
|
|
|
+ app(AccountService::class)->clearTimeSlotCache($coach->id);
|
|
|
+
|
|
|
return [
|
|
|
'message' => '接单成功',
|
|
|
'order_id' => $orderId,
|