From a0ffeb954bee15967cd0d7b1db8fc85c180c8ee6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B6=8C=ED=98=81=EC=84=B1?= Date: Thu, 29 Jan 2026 07:44:04 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EA=B2=AC=EC=A0=81=20=ED=99=95=EC=A0=95/?= =?UTF-8?q?=EC=B7=A8=EC=86=8C=20API=20=EB=9D=BC=EC=9A=B0=ED=8A=B8=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - POST /quotes/{id}/finalize 라우트 추가 - POST /quotes/{id}/cancel-finalize 라우트 추가 - 라우트 누락으로 인한 404 오류 수정 Co-Authored-By: Claude Opus 4.5 --- routes/api/v1/sales.php | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/routes/api/v1/sales.php b/routes/api/v1/sales.php index 9101180..493517f 100644 --- a/routes/api/v1/sales.php +++ b/routes/api/v1/sales.php @@ -59,6 +59,9 @@ Route::post('/calculate/bom', [QuoteController::class, 'calculateBom'])->name('v1.quotes.calculate-bom'); Route::post('/calculate/bom/bulk', [QuoteController::class, 'calculateBomBulk'])->name('v1.quotes.calculate-bom-bulk'); + // 품목 단가 조회 (수동 품목 추가 시 사용) + Route::post('/items/prices', [QuoteController::class, 'getItemPrices'])->name('v1.quotes.item-prices'); + // 단건 조회/수정/삭제 (id 경로는 구체적인 경로 뒤에 배치) Route::get('/{id}', [QuoteController::class, 'show'])->whereNumber('id')->name('v1.quotes.show'); Route::put('/{id}', [QuoteController::class, 'update'])->whereNumber('id')->name('v1.quotes.update'); @@ -67,6 +70,10 @@ Route::put('/{id}/stage', [QuoteController::class, 'updateStage'])->whereNumber('id')->name('v1.quotes.stage'); Route::put('/{id}/items', [QuoteController::class, 'updateItems'])->whereNumber('id')->name('v1.quotes.items'); + // 견적 확정/확정 취소 + Route::post('/{id}/finalize', [QuoteController::class, 'finalize'])->whereNumber('id')->name('v1.quotes.finalize'); + Route::post('/{id}/cancel-finalize', [QuoteController::class, 'cancelFinalize'])->whereNumber('id')->name('v1.quotes.cancel-finalize'); + // 히스토리 Route::get('/{id}/histories', [QuoteController::class, 'histories'])->whereNumber('id')->name('v1.quotes.histories'); Route::post('/{id}/histories', [QuoteController::class, 'addHistory'])->whereNumber('id')->name('v1.quotes.histories.store');