feat: complete equipment handover workflow

This commit is contained in:
2026-08-04 17:15:51 +01:00
parent 809eab9d4a
commit d829f34580
24 changed files with 1800 additions and 28 deletions

View File

@@ -5,6 +5,7 @@ use App\Http\Controllers\ApprovalController;
use App\Http\Controllers\AssetController;
use App\Http\Controllers\DashboardController;
use App\Http\Controllers\NotificationController;
use App\Http\Controllers\OperationController;
use App\Http\Controllers\ReservationController;
use Illuminate\Support\Facades\Route;
@@ -31,6 +32,17 @@ Route::middleware(['auth', 'verified'])->group(function () {
Route::post('{reservation:uuid}/itens/{item}/substituir', [ApprovalController::class, 'substitute'])->name('substitute');
});
Route::middleware('can:operate-inventory')->prefix('operacoes')->name('operations.')->group(function () {
Route::get('/', [OperationController::class, 'index'])->name('index');
Route::post('{reservation:uuid}/preparar', [OperationController::class, 'prepare'])->name('prepare');
Route::post('{reservation:uuid}/entregar', [OperationController::class, 'deliver'])->name('deliver');
Route::post('{reservation:uuid}/devolver', [OperationController::class, 'returnEquipment'])->name('return');
Route::post('{reservation:uuid}/concluir', [OperationController::class, 'complete'])->name('complete');
Route::post('{reservation:uuid}/falta', [OperationController::class, 'noShow'])->name('no-show');
Route::post('{reservation:uuid}/atraso', [OperationController::class, 'overdue'])->name('overdue');
Route::post('{reservation:uuid}/itens/{item}/incidente', [OperationController::class, 'incident'])->name('incident');
});
Route::middleware('can:administer')->prefix('administracao')->name('admin.')->group(function () {
Route::get('snipe-it', [SnipeItController::class, 'index'])->name('snipe-it.index');
Route::post('snipe-it/testar', [SnipeItController::class, 'testConnection'])->name('snipe-it.test');