update rm deadcode
This commit is contained in:
+46
-111
@@ -26,6 +26,7 @@ use App\Http\Controllers\Api\Admin\VCenter\VCenterController;
|
||||
use App\Http\Controllers\Api\Admin\DnsManager\ServerController as DnsServerController;
|
||||
use App\Http\Controllers\Api\Admin\DnsManager\DomainController as DnsDomainController;
|
||||
use App\Http\Controllers\Api\Admin\DnsManager\RecordController as DnsRecordController;
|
||||
use App\Http\Controllers\Api\Admin\DnsManager\RegistrarController;
|
||||
use App\Http\Controllers\Api\Admin\Hosting\HostingAccountController;
|
||||
use App\Http\Controllers\Api\Admin\OsManager\OsGroupController;
|
||||
use App\Http\Controllers\Api\Admin\OsManager\OsController;
|
||||
@@ -44,11 +45,7 @@ use App\Http\Controllers\Api\Admin\Docs\PostController as AdminPostController;
|
||||
use App\Http\Controllers\Api\Admin\Media\MediaController as AdminMediaController;
|
||||
use App\Http\Controllers\Api\NotificationController;
|
||||
use App\Http\Controllers\Api\Admin\InfraManagement\InfraManagementController;
|
||||
use App\Http\Services\Media;
|
||||
use App\Http\Services\vCenter as ServiceVCenter;
|
||||
use App\Models\ModuleVmware;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
/*
|
||||
@@ -66,7 +63,7 @@ Route::prefix('v1')
|
||||
/* Api for Admin */
|
||||
->group(function () {
|
||||
Route::prefix('administrator')->group(function () {
|
||||
Route::post('login', [AuthController::class, 'login'])->middleware('throttle:5,1');
|
||||
Route::post('login', [AuthController::class, 'login'])->middleware('throttle:30,1');
|
||||
|
||||
Route::middleware('api.auth:admin')->group(function () {
|
||||
Route::post('logout', [AuthController::class, 'logout']);
|
||||
@@ -265,35 +262,47 @@ Route::prefix('v1')
|
||||
->controller(AdminPostCategoryController::class)
|
||||
->as('post-categories.')
|
||||
->group(function () {
|
||||
Route::get('/', 'index')->name('index');
|
||||
Route::post('/', 'store')->name('store');
|
||||
Route::get('trashed', 'trashed')->name('trashed');
|
||||
Route::post('bulk-restore', 'bulkRestore')->name('bulk-restore');
|
||||
Route::post('bulk-force-delete', 'bulkForceDelete')->name('bulk-force-delete');
|
||||
Route::post('{id}/restore', 'restore')->name('restore');
|
||||
Route::delete('{id}/force-delete', 'forceDelete')->name('force-delete');
|
||||
Route::get('{id}', 'show')->name('show');
|
||||
Route::put('{id}', 'update')->name('update');
|
||||
Route::delete('{id}', 'destroy')->name('destroy');
|
||||
Route::get('/', 'index')->middleware('perm:post.view')->name('index');
|
||||
Route::post('/', 'store')->middleware('perm:post.create')->name('store');
|
||||
Route::get('trashed', 'trashed')->middleware('perm:post.view')->name('trashed');
|
||||
Route::post('bulk-restore', 'bulkRestore')->middleware('perm:post.edit')->name('bulk-restore');
|
||||
Route::post('bulk-force-delete', 'bulkForceDelete')
|
||||
->middleware('perm:post.destroy')
|
||||
->name('bulk-force-delete');
|
||||
Route::post('{id}/restore', 'restore')->middleware('perm:post.edit')->name('restore');
|
||||
Route::delete('{id}/force-delete', 'forceDelete')
|
||||
->middleware('perm:post.destroy')
|
||||
->name('force-delete');
|
||||
Route::get('{id}', 'show')->middleware('perm:post.view')->name('show');
|
||||
Route::put('{id}', 'update')->middleware('perm:post.edit')->name('update');
|
||||
Route::delete('{id}', 'destroy')->middleware('perm:post.destroy')->name('destroy');
|
||||
});
|
||||
|
||||
Route::prefix('posts')
|
||||
->controller(AdminPostController::class)
|
||||
->as('posts.')
|
||||
->group(function () {
|
||||
Route::get('/', 'index')->name('index');
|
||||
Route::post('/', 'store')->name('store');
|
||||
Route::post('sync-wordpress', 'syncWordpress')->name('sync-wordpress');
|
||||
Route::post('bulk-delete', 'bulkDelete')->name('bulk-delete');
|
||||
Route::post('bulk-update-status', 'bulkUpdateStatus')->name('bulk-update-status');
|
||||
Route::get('trashed', 'trashed')->name('trashed');
|
||||
Route::post('bulk-restore', 'bulkRestore')->name('bulk-restore');
|
||||
Route::post('bulk-force-delete', 'bulkForceDelete')->name('bulk-force-delete');
|
||||
Route::post('{id}/restore', 'restore')->name('restore');
|
||||
Route::delete('{id}/force-delete', 'forceDelete')->name('force-delete');
|
||||
Route::get('{id}', 'show')->name('show');
|
||||
Route::put('{id}', 'update')->name('update');
|
||||
Route::delete('{id}', 'destroy')->name('destroy');
|
||||
Route::get('/', 'index')->middleware('perm:post.view')->name('index');
|
||||
Route::post('/', 'store')->middleware('perm:post.create')->name('store');
|
||||
Route::post('sync-wordpress', 'syncWordpress')
|
||||
->middleware('perm:post.create')
|
||||
->name('sync-wordpress');
|
||||
Route::post('bulk-delete', 'bulkDelete')->middleware('perm:post.destroy')->name('bulk-delete');
|
||||
Route::post('bulk-update-status', 'bulkUpdateStatus')
|
||||
->middleware('perm:post.edit')
|
||||
->name('bulk-update-status');
|
||||
Route::get('trashed', 'trashed')->middleware('perm:post.view')->name('trashed');
|
||||
Route::post('bulk-restore', 'bulkRestore')->middleware('perm:post.edit')->name('bulk-restore');
|
||||
Route::post('bulk-force-delete', 'bulkForceDelete')
|
||||
->middleware('perm:post.destroy')
|
||||
->name('bulk-force-delete');
|
||||
Route::post('{id}/restore', 'restore')->middleware('perm:post.edit')->name('restore');
|
||||
Route::delete('{id}/force-delete', 'forceDelete')
|
||||
->middleware('perm:post.destroy')
|
||||
->name('force-delete');
|
||||
Route::get('{id}', 'show')->middleware('perm:post.view')->name('show');
|
||||
Route::put('{id}', 'update')->middleware('perm:post.edit')->name('update');
|
||||
Route::delete('{id}', 'destroy')->middleware('perm:post.destroy')->name('destroy');
|
||||
});
|
||||
|
||||
// Orders (module: order)
|
||||
@@ -422,6 +431,8 @@ Route::prefix('v1')
|
||||
Route::delete('{id}/dns/{recordId}', 'dnsDestroy')->middleware('perm:domain.manager');
|
||||
});
|
||||
|
||||
Route::get('registrars', [RegistrarController::class, 'index'])->middleware('perm:domain.manager');
|
||||
|
||||
// DNS Manager — Servers (module: domain.manager)
|
||||
Route::prefix('dns-servers')
|
||||
->controller(DnsServerController::class)
|
||||
@@ -538,12 +549,13 @@ Route::prefix('v1')
|
||||
Route::prefix('media')
|
||||
->controller(AdminMediaController::class)
|
||||
->group(function () {
|
||||
Route::get('/', 'index');
|
||||
Route::post('bulk-destroy', 'bulkDestroy');
|
||||
Route::delete('{id}', 'destroy');
|
||||
Route::get('/', 'index')->middleware('perm:media.view');
|
||||
Route::post('bulk-destroy', 'bulkDestroy')->middleware('perm:media.destroy');
|
||||
Route::delete('{id}', 'destroy')->middleware('perm:media.destroy');
|
||||
});
|
||||
|
||||
Route::post('media/upload', [AdminSettingController::class, 'uploadMedia']);
|
||||
Route::post('media/upload', [AdminSettingController::class, 'uploadMedia'])
|
||||
->middleware('perm:media.create');
|
||||
|
||||
// Provider (active vCenter chain + provider settings — module: module-vcenter)
|
||||
Route::prefix('provider')->group(function () {
|
||||
@@ -577,6 +589,7 @@ Route::prefix('v1')
|
||||
// Dashboard Stats
|
||||
Route::prefix('dashboard')
|
||||
->controller(\App\Http\Controllers\Api\Admin\Dashboard\DashboardController::class)
|
||||
->middleware('perm:dashboard.view')
|
||||
->group(function () {
|
||||
Route::get('stats', 'stats');
|
||||
Route::get('monthly-stats', 'monthlyStats');
|
||||
@@ -600,6 +613,7 @@ Route::prefix('v1')
|
||||
// Queue Monitor (Horizon)
|
||||
Route::prefix('queue')
|
||||
->controller(QueueMonitorController::class)
|
||||
->middleware('perm:queue.manager')
|
||||
->group(function () {
|
||||
Route::get('jobs/recent', 'recent');
|
||||
Route::get('jobs/pending', 'pending');
|
||||
@@ -755,85 +769,6 @@ Route::prefix('v1')
|
||||
// Public branding settings — không cần token, dùng cho trang đăng nhập.
|
||||
Route::get('settings/public', [AdminSettingController::class, 'public']);
|
||||
|
||||
Route::prefix('system')
|
||||
->middleware(['api.auth'])
|
||||
->group(function () {
|
||||
Route::post('get-all-image', function (Media $media) {
|
||||
$files = $media->getAllMedia();
|
||||
return response()->json(['data' => $files]);
|
||||
})->name('api.GetAllImage');
|
||||
|
||||
Route::get('get-ticket-console', function (Request $request, ServiceVCenter $serviceVCenter) {
|
||||
$product_id = $request->get('product');
|
||||
if (!$product_id) {
|
||||
return response()->json(['error' => true, 'message' => 'Please choose product']);
|
||||
}
|
||||
$product = ModuleVmware::with('ipAddress.host.datacenter.vCenter')->find($product_id);
|
||||
if (!$product) {
|
||||
return response()->json(['error' => true, 'message' => "Can't find product"]);
|
||||
}
|
||||
|
||||
$vcenter = null;
|
||||
if (
|
||||
$product->ipAddress &&
|
||||
$product->ipAddress->host &&
|
||||
$product->ipAddress->host->datacenter &&
|
||||
$product->ipAddress->host->datacenter->vCenter
|
||||
) {
|
||||
$vcenter = $product->ipAddress->host->datacenter->vCenter;
|
||||
}
|
||||
|
||||
if (!$vcenter) {
|
||||
return response()->json(['error' => true, 'message' => "Can't find vCenter information"]);
|
||||
}
|
||||
|
||||
// Đăng nhập vCenter trước khi lấy ticket
|
||||
if (!$serviceVCenter->loginServer($vcenter)) {
|
||||
return response()->json([
|
||||
'error' => true,
|
||||
'message' => 'Không thể đăng nhập vào vCenter',
|
||||
]);
|
||||
}
|
||||
|
||||
$ConsoleTicket = $serviceVCenter->GetConsoleTickets($product->vmware_id);
|
||||
|
||||
// Nếu login hết hạn, thử login lại 1 lần nữa
|
||||
if ($ConsoleTicket === 'Login_Again') {
|
||||
if ($serviceVCenter->loginServer($vcenter)) {
|
||||
$ConsoleTicket = $serviceVCenter->GetConsoleTickets($product->vmware_id);
|
||||
} else {
|
||||
return response()->json([
|
||||
'error' => true,
|
||||
'message' => 'Không thể đăng nhập lại vào vCenter',
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
// Nếu vẫn lỗi, trả về lỗi rõ ràng
|
||||
if (is_string($ConsoleTicket)) {
|
||||
return response()->json([
|
||||
'error' => true,
|
||||
'message' => "Failed to get console ticket: $ConsoleTicket",
|
||||
]);
|
||||
}
|
||||
|
||||
if ($ConsoleTicket['error']) {
|
||||
return response()->json([
|
||||
'error' => true,
|
||||
'message' => $ConsoleTicket['data'],
|
||||
]);
|
||||
}
|
||||
|
||||
return response()
|
||||
->json([
|
||||
'error' => false,
|
||||
'data' => $ConsoleTicket['data'],
|
||||
'vmware-api-session-id' => $serviceVCenter->token,
|
||||
])
|
||||
->cookie('vmware-api-session-id', $serviceVCenter->token, 60, '/', null, false, false);
|
||||
})->name('api.GetConsoleTicket');
|
||||
});
|
||||
|
||||
Route::get('pdf-invoice', function () {
|
||||
// return Pdf::loadView('pdf.invoice-pdf')->setPaper('a4', 'portrait')->stream('hoa-don-mau.pdf');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user