Files
sam-api/routes/api/v1/equipment.php

46 lines
3.7 KiB
PHP
Raw Normal View History

<?php
use App\Http\Controllers\V1\Equipment\EquipmentController;
use App\Http\Controllers\V1\Equipment\EquipmentInspectionController;
use App\Http\Controllers\V1\Equipment\EquipmentPhotoController;
use App\Http\Controllers\V1\Equipment\EquipmentRepairController;
use Illuminate\Support\Facades\Route;
Route::prefix('equipment')->group(function () {
// 설비 CRUD
Route::get('', [EquipmentController::class, 'index'])->name('v1.equipment.index');
Route::get('/options', [EquipmentController::class, 'options'])->name('v1.equipment.options');
Route::get('/stats', [EquipmentController::class, 'stats'])->name('v1.equipment.stats');
Route::post('', [EquipmentController::class, 'store'])->name('v1.equipment.store');
Route::get('/{id}', [EquipmentController::class, 'show'])->whereNumber('id')->name('v1.equipment.show');
Route::put('/{id}', [EquipmentController::class, 'update'])->whereNumber('id')->name('v1.equipment.update');
Route::delete('/{id}', [EquipmentController::class, 'destroy'])->whereNumber('id')->name('v1.equipment.destroy');
Route::post('/{id}/restore', [EquipmentController::class, 'restore'])->whereNumber('id')->name('v1.equipment.restore');
Route::patch('/{id}/toggle', [EquipmentController::class, 'toggleActive'])->whereNumber('id')->name('v1.equipment.toggle');
// 점검 템플릿
Route::get('/{id}/templates', [EquipmentInspectionController::class, 'templates'])->whereNumber('id')->name('v1.equipment.templates');
Route::post('/{id}/templates', [EquipmentInspectionController::class, 'storeTemplate'])->whereNumber('id')->name('v1.equipment.templates.store');
Route::put('/templates/{templateId}', [EquipmentInspectionController::class, 'updateTemplate'])->whereNumber('templateId')->name('v1.equipment.templates.update');
Route::delete('/templates/{templateId}', [EquipmentInspectionController::class, 'deleteTemplate'])->whereNumber('templateId')->name('v1.equipment.templates.destroy');
Route::post('/{id}/templates/copy', [EquipmentInspectionController::class, 'copyTemplates'])->whereNumber('id')->name('v1.equipment.templates.copy');
// 점검
Route::get('/inspections', [EquipmentInspectionController::class, 'index'])->name('v1.equipment.inspections.index');
Route::patch('/inspections/toggle', [EquipmentInspectionController::class, 'toggleDetail'])->name('v1.equipment.inspections.toggle');
Route::patch('/inspections/set-result', [EquipmentInspectionController::class, 'setResult'])->name('v1.equipment.inspections.set-result');
Route::patch('/inspections/notes', [EquipmentInspectionController::class, 'updateNotes'])->name('v1.equipment.inspections.notes');
Route::delete('/inspections/reset', [EquipmentInspectionController::class, 'resetInspection'])->name('v1.equipment.inspections.reset');
// 수리이력
Route::get('/repairs', [EquipmentRepairController::class, 'index'])->name('v1.equipment.repairs.index');
Route::post('/repairs', [EquipmentRepairController::class, 'store'])->name('v1.equipment.repairs.store');
Route::put('/repairs/{id}', [EquipmentRepairController::class, 'update'])->whereNumber('id')->name('v1.equipment.repairs.update');
Route::delete('/repairs/{id}', [EquipmentRepairController::class, 'destroy'])->whereNumber('id')->name('v1.equipment.repairs.destroy');
// 사진
Route::get('/{id}/photos', [EquipmentPhotoController::class, 'index'])->whereNumber('id')->name('v1.equipment.photos.index');
Route::post('/{id}/photos', [EquipmentPhotoController::class, 'store'])->whereNumber('id')->name('v1.equipment.photos.store');
Route::delete('/{id}/photos/{fileId}', [EquipmentPhotoController::class, 'destroy'])->whereNumber('id')->name('v1.equipment.photos.destroy');
});