refactor: update permission middleware for cutting routes to enhance access control and streamline permission checks

This commit is contained in:
Yoga Pangestu 2026-06-20 18:47:22 +07:00
parent 4d5901cc63
commit 44312e76c9

View File

@ -256,31 +256,33 @@
}); });
Route::prefix('cuttings')->name('cuttings.') Route::prefix('cuttings')->name('cuttings.')
->middleware('permission:'.Permission::CUTTINGS_VIEW->value)
->group(function () { ->group(function () {
Route::get('/', [CuttingController::class, 'index'])->name('index'); Route::get('/', [CuttingController::class, 'index'])
->middleware('permission:'.Permission::CUTTINGS_VIEW->value)
->name('index');
Route::get('create', [CuttingController::class, 'create']) Route::get('create', [CuttingController::class, 'create'])
->middleware('permission:'.Permission::CUTTINGS_CREATE->value) ->middleware('permission:'.Permission::CUTTINGS_VIEW->value.'|'.Permission::CUTTINGS_CREATE->value)
->name('create'); ->name('create');
Route::post('/', [CuttingController::class, 'store']) Route::post('/', [CuttingController::class, 'store'])
->middleware('permission:'.Permission::CUTTINGS_CREATE->value) ->middleware('permission:'.Permission::CUTTINGS_VIEW->value.'|'.Permission::CUTTINGS_CREATE->value)
->name('store'); ->name('store');
Route::get('{cutting}/edit', [CuttingController::class, 'edit']) Route::get('{cutting}/edit', [CuttingController::class, 'edit'])
->middleware('permission:'.Permission::CUTTINGS_UPDATE->value) ->middleware('permission:'.Permission::CUTTINGS_VIEW->value.'|'.Permission::CUTTINGS_UPDATE->value)
->name('edit'); ->name('edit');
Route::put('{cutting}', [CuttingController::class, 'update']) Route::put('{cutting}', [CuttingController::class, 'update'])
->middleware('permission:'.Permission::CUTTINGS_UPDATE->value) ->middleware('permission:'.Permission::CUTTINGS_VIEW->value.'|'.Permission::CUTTINGS_UPDATE->value)
->name('update'); ->name('update');
Route::post('{cutting}/status', [CuttingController::class, 'transitionStatus']) Route::post('{cutting}/status', [CuttingController::class, 'transitionStatus'])
->middleware('permission:'.Permission::CUTTINGS_COMPLETE->value.'|'.Permission::CUTTINGS_VERIFY->value.'|'.Permission::CUTTINGS_REJECT->value)
->name('transition-status'); ->name('transition-status');
Route::delete('{cutting}', [CuttingController::class, 'destroy']) Route::delete('{cutting}', [CuttingController::class, 'destroy'])
->middleware('permission:'.Permission::CUTTINGS_DELETE->value) ->middleware('permission:'.Permission::CUTTINGS_VIEW->value.'|'.Permission::CUTTINGS_DELETE->value)
->name('destroy'); ->name('destroy');
}); });
}); });