1
0
Files
services_core/routes/api.php
T
2026-06-25 17:11:48 +07:00

85 lines
2.4 KiB
PHP

<?php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\AuthController;
use App\Http\Controllers\Ticket\TicketController;
use App\Http\Controllers\Ticket\TicketTypeController;
use App\Http\Controllers\Ticket\TicketWorkflowController;
use App\Http\Controllers\Ticket\TicketIncidentTypeController;
use App\Http\Controllers\Material\MaterialController;
use App\Http\Controllers\Audit\AuditLogController;
Route::post('/login', [AuthController::class, 'login']);
// Route::prefix('tickets')->group(function () {
// Route::get('/', [TicketController::class, 'index']);
// Route::post('/', [TicketController::class, 'store']);
// });
Route::get('/generate-token', function () {
$user = \App\Models\User::find(1);
return $user->createToken(
'master-token'
)->plainTextToken;
});
Route::middleware('auth:sanctum')->group(function () {
Route::apiResource('tickets', TicketController::class);
Route::apiResource('ticket-types', TicketTypeController::class);
Route::apiResource('ticket-incident-types', TicketIncidentTypeController::class);
Route::prefix('tickets/{ticket}')
->controller(TicketWorkflowController::class)
->group(function () {
Route::get('/workflow', 'history');
Route::post('/assign', 'assign');
Route::post('/reassign', 'reassign');
Route::post('/approve', 'approve');
Route::post('/reject', 'reject');
Route::post('/start', 'start');
Route::post('/pending', 'pending');
Route::post('/resume', 'resume');
Route::post('/resolve', 'resolve');
Route::post('/close', 'close');
Route::post('/cancel', 'cancel');
Route::post('/escalate', 'escalate');
});
Route::prefix('materials')->group(function () {
Route::post('/assign', [MaterialController::class, 'assign']);
Route::post('/transfer', [MaterialController::class, 'transfer']);
Route::post('/return', [MaterialController::class, 'return']);
Route::get('/user/{user_id}', [MaterialController::class, 'listByUser']);
Route::get('/history/{barcode_id}', [MaterialController::class, 'history']);
});
Route::prefix('audit-logs')
->controller(AuditLogController::class)
->group(function () {
Route::get('/', 'index');
Route::get('/{id}', 'show');
});
});