36 lines
2.1 KiB
PHP
36 lines
2.1 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\Admin\SnipeItController;
|
|
use App\Http\Controllers\ApprovalController;
|
|
use App\Http\Controllers\AssetController;
|
|
use App\Http\Controllers\DashboardController;
|
|
use App\Http\Controllers\ReservationController;
|
|
use Illuminate\Support\Facades\Route;
|
|
|
|
Route::get('/', fn () => redirect()->route(auth()->check() ? 'dashboard' : 'login'))->name('home');
|
|
|
|
Route::middleware(['auth', 'verified'])->group(function () {
|
|
Route::get('dashboard', DashboardController::class)->name('dashboard');
|
|
Route::get('equipamentos', [AssetController::class, 'index'])->name('assets.index');
|
|
Route::get('requisicoes', [ReservationController::class, 'index'])->name('reservations.index');
|
|
Route::get('requisicoes/calendario', [ReservationController::class, 'calendar'])->name('reservations.calendar');
|
|
Route::get('requisicoes/nova', [ReservationController::class, 'create'])->name('reservations.create');
|
|
Route::post('requisicoes', [ReservationController::class, 'store'])->name('reservations.store');
|
|
Route::post('requisicoes/{reservation:uuid}/cancelar', [ReservationController::class, 'cancel'])->name('reservations.cancel');
|
|
|
|
Route::middleware('can:approve-reservations')->prefix('aprovacoes')->name('approvals.')->group(function () {
|
|
Route::get('/', [ApprovalController::class, 'index'])->name('index');
|
|
Route::post('{reservation:uuid}/aprovar', [ApprovalController::class, 'approve'])->name('approve');
|
|
Route::post('{reservation:uuid}/rejeitar', [ApprovalController::class, 'reject'])->name('reject');
|
|
Route::post('{reservation:uuid}/pedir-esclarecimentos', [ApprovalController::class, 'requestInformation'])->name('request-information');
|
|
});
|
|
|
|
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');
|
|
Route::post('snipe-it/sincronizar', [SnipeItController::class, 'sync'])->name('snipe-it.sync');
|
|
});
|
|
});
|
|
|
|
require __DIR__.'/settings.php';
|