feat(labor): 노임관리 API 구현
- Labor 모델 (BelongsToTenant, SoftDeletes)
- LaborController 7개 엔드포인트
- LaborService 비즈니스 로직
- FormRequest 4개 (Index/Store/Update/BulkDelete)
- 마이그레이션 및 라우트 등록
API: GET/POST /labor, GET/PUT/DELETE /labor/{id}, DELETE /labor/bulk, GET /labor/stats
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -72,6 +72,7 @@
|
||||
use App\Http\Controllers\Api\V1\PopupController;
|
||||
// use App\Http\Controllers\Api\V1\ProductBomItemController; // REMOVED: products 테이블 삭제됨
|
||||
// use App\Http\Controllers\Api\V1\ProductController; // REMOVED: products 테이블 삭제됨
|
||||
use App\Http\Controllers\Api\V1\LaborController;
|
||||
use App\Http\Controllers\Api\V1\PositionController;
|
||||
use App\Http\Controllers\Api\V1\PostController;
|
||||
use App\Http\Controllers\Api\V1\PricingController;
|
||||
@@ -1001,6 +1002,17 @@
|
||||
Route::get('/{id}/revisions', [PricingController::class, 'revisions'])->whereNumber('id')->name('v1.pricing.revisions'); // 변경이력
|
||||
});
|
||||
|
||||
// Labor (노임관리)
|
||||
Route::prefix('labor')->group(function () {
|
||||
Route::get('', [LaborController::class, 'index'])->name('v1.labor.index'); // 목록
|
||||
Route::get('/stats', [LaborController::class, 'stats'])->name('v1.labor.stats'); // 통계
|
||||
Route::delete('/bulk', [LaborController::class, 'bulkDestroy'])->name('v1.labor.bulk-destroy'); // 일괄 삭제
|
||||
Route::post('', [LaborController::class, 'store'])->name('v1.labor.store'); // 등록
|
||||
Route::get('/{id}', [LaborController::class, 'show'])->whereNumber('id')->name('v1.labor.show'); // 상세
|
||||
Route::put('/{id}', [LaborController::class, 'update'])->whereNumber('id')->name('v1.labor.update'); // 수정
|
||||
Route::delete('/{id}', [LaborController::class, 'destroy'])->whereNumber('id')->name('v1.labor.destroy'); // 삭제
|
||||
});
|
||||
|
||||
// REMOVED: Products & Materials 라우트 삭제됨 (products/materials 테이블 삭제)
|
||||
// 모든 품목 관리는 /items 엔드포인트 사용
|
||||
|
||||
|
||||
Reference in New Issue
Block a user