Files
2026-07-01 10:51:05 +07:00

58 lines
2.7 KiB
PHP

<?php
use Illuminate\Support\Facades\Route;
use Modules\DomainFluctuation\App\Http\Controllers\Api\Admin\DomainFluctuationController as AdminDomainFluctuationController;
use Modules\DomainFluctuation\App\Http\Controllers\Api\Admin\TermController as AdminTermController;
use Modules\DomainFluctuation\App\Http\Controllers\Api\Client\DomainFluctuationController as ClientDomainFluctuationController;
/*
|--------------------------------------------------------------------------
| Domain Fluctuation API Routes
|--------------------------------------------------------------------------
|
| Khai báo biến động tên miền theo TT45/2025/TT-BKHCN
| - admin: portal-admin (CRUD đầy đủ)
| - client: portal-client (đọc danh sách + chi tiết active)
|
*/
Route::prefix('v1')
->group(function () {
// Admin
Route::prefix('administrator')
->middleware('api.auth:admin')
->group(function () {
Route::prefix('domain-fluctuations')
->controller(AdminDomainFluctuationController::class)
->group(function () {
Route::get('/', 'index')->middleware('perm:domain-fluctuation.view');
Route::post('/', 'store')->middleware('perm:domain-fluctuation.create');
Route::get('{id}', 'show')->middleware('perm:domain-fluctuation.view');
Route::put('{id}', 'update')->middleware('perm:domain-fluctuation.edit');
Route::delete('{id}', 'destroy')->middleware('perm:domain-fluctuation.destroy');
});
Route::prefix('domain-fluctuation-terms')
->controller(AdminTermController::class)
->group(function () {
Route::get('/', 'index')->middleware('perm:domain-fluctuation.view');
Route::post('/', 'store')->middleware('perm:domain-fluctuation.create');
Route::get('{id}', 'show')->middleware('perm:domain-fluctuation.view');
Route::put('{id}', 'update')->middleware('perm:domain-fluctuation.edit');
Route::delete('{id}', 'destroy')->middleware('perm:domain-fluctuation.destroy');
});
});
// Client (portal-client)
Route::prefix('client')
->middleware('api.auth')
->group(function () {
Route::prefix('domain-fluctuations')
->controller(ClientDomainFluctuationController::class)
->group(function () {
Route::get('/', 'index');
Route::get('{id}', 'show');
});
});
});