34 lines
2.3 KiB
PHP
34 lines
2.3 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use Modules\TaskManagement\Http\Controllers\TaskController;
|
|
use Modules\TaskManagement\Http\Controllers\TaskDelayController;
|
|
use Modules\TaskManagement\Http\Controllers\TaskImportController;
|
|
use Modules\TaskManagement\Http\Controllers\TaskMaterialController;
|
|
|
|
Route::middleware(['web', 'auth', 'permission:projects.access'])->group(function () {
|
|
// Tasks Index
|
|
Route::get('tasks', [TaskController::class, 'index'])->name('projects.tasks.index');
|
|
|
|
Route::post('tasks', [TaskController::class, 'store'])->name('projects.tasks.store');
|
|
Route::put('tasks/{task}', [TaskController::class, 'update'])->name('projects.tasks.update');
|
|
Route::delete('tasks/{task}', [TaskController::class, 'destroy'])->name('projects.tasks.destroy');
|
|
Route::patch('tasks/{task}/transition', [TaskController::class, 'transition'])->name('projects.tasks.transition');
|
|
Route::post('tasks/reorder', [TaskController::class, 'reorder'])->name('projects.tasks.reorder');
|
|
|
|
// Task Import
|
|
Route::get('projects/{project}/tasks/template', [TaskImportController::class, 'template'])->name('projects.tasks.template');
|
|
Route::post('projects/{project}/tasks/import', [TaskImportController::class, 'import'])->name('projects.tasks.import');
|
|
|
|
// Task Materials
|
|
Route::post('projects/{project}/tasks/{task}/materials', [TaskMaterialController::class, 'store'])->name('projects.tasks.materials.store');
|
|
Route::post('projects/{project}/tasks/{task}/materials/bulk', [TaskMaterialController::class, 'storeBulk'])->name('projects.tasks.materials.storeBulk');
|
|
Route::put('projects/{project}/tasks/{task}/materials/{taskMaterial}', [TaskMaterialController::class, 'update'])->name('projects.tasks.materials.update');
|
|
Route::delete('projects/{project}/tasks/{task}/materials/{taskMaterial}', [TaskMaterialController::class, 'destroy'])->name('projects.tasks.materials.destroy');
|
|
|
|
// Task Delays
|
|
Route::post('projects/{project}/tasks/{task}/delays', [TaskDelayController::class, 'store'])->name('projects.tasks.delays.store');
|
|
Route::put('projects/{project}/tasks/{task}/delays/{delay}', [TaskDelayController::class, 'update'])->name('projects.tasks.delays.update');
|
|
Route::delete('projects/{project}/tasks/{task}/delays/{delay}', [TaskDelayController::class, 'destroy'])->name('projects.tasks.delays.destroy');
|
|
});
|