diff --git a/app/Services/OrderService.php b/app/Services/OrderService.php index 4cf71153..254df9a8 100644 --- a/app/Services/OrderService.php +++ b/app/Services/OrderService.php @@ -326,6 +326,23 @@ public function store(array $data) ->update(['order_id' => $order->id]); } + // 재고생산: 저장 즉시 확정 + 생산지시 자동 생성 (2단계 프로세스 제거) + if ($isStock) { + // 1. 확정 처리 (DRAFT → CONFIRMED) + $order->status_code = Order::STATUS_CONFIRMED; + $order->save(); + + // 2. 재고 예약 + $order->load('items'); + app(StockService::class)->reserveForOrder($order->items, $order->id); + + // 3. 생산지시 자동 생성 (createProductionOrder 재활용) + $this->createProductionOrder($order->id, []); + + // 최종 상태 반영 (createProductionOrder에서 IN_PROGRESS로 변경됨) + $order->refresh(); + } + return $this->loadDetailRelations($order); }); }