30 lines
2.3 KiB
PHP
30 lines
2.3 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Route;
|
|
use Modules\ProjectManagement\Http\Controllers\ProjectController;
|
|
|
|
Route::middleware(['web', 'auth', 'permission:projects.access'])->group(function () {
|
|
Route::resource('projects', ProjectController::class)->except(['destroy']);
|
|
Route::delete('projects/{project}/discard', [ProjectController::class, 'discard'])->name('projects.discard');
|
|
Route::patch('projects/{project}/transition', [ProjectController::class, 'transition'])->name('projects.transition');
|
|
|
|
// Project Wizard Routes
|
|
Route::get('projects/{project}/wizard', [ProjectController::class, 'wizard'])->name('projects.wizard');
|
|
Route::post('projects/{project}/wizard/details', [ProjectController::class, 'saveWizardDetails'])->name('projects.wizard.save-details');
|
|
Route::post('projects/{project}/wizard/tasks', [ProjectController::class, 'saveWizardTasks'])->name('projects.wizard.tasks');
|
|
Route::post('projects/{project}/wizard/estimates', [ProjectController::class, 'saveWizardEstimates'])->name('projects.wizard.estimates');
|
|
Route::post('projects/{project}/wizard/labor', [ProjectController::class, 'saveWizardLabor'])->name('projects.wizard.labor');
|
|
Route::post('projects/{project}/wizard/equipment', [ProjectController::class, 'saveWizardEquipment'])->name('projects.wizard.equipment');
|
|
Route::post('projects/{project}/wizard/submit', [ProjectController::class, 'submitWizardForApproval'])->name('projects.wizard.submit');
|
|
Route::get('projects/{project}/wizard/export/excel', [ProjectController::class, 'exportWizardExcel'])->name('projects.wizard.export.excel');
|
|
Route::get('projects/{project}/wizard/export/pdf', [ProjectController::class, 'exportWizardPdf'])->name('projects.wizard.export.pdf');
|
|
|
|
// Additional Project Views
|
|
Route::get('projects/{project}/team', [ProjectController::class, 'team'])->name('projects.team');
|
|
Route::get('projects/{project}/materials', [ProjectController::class, 'materials'])->name('projects.materials');
|
|
|
|
// Personnel Management
|
|
Route::post('projects/{project}/personnel', [ProjectController::class, 'addPersonnel'])->name('projects.personnel.add');
|
|
Route::delete('projects/{project}/personnel/{user}', [ProjectController::class, 'removePersonnel'])->name('projects.personnel.remove');
|
|
});
|