refactor: Remove extensive unused administrative UI, styling, and JavaScript assets, and introduce a new payment API controller.

This commit is contained in:
pbao9
2026-03-09 14:16:39 +07:00
parent 23a496f511
commit 7b3c955d38
456 changed files with 2212 additions and 74052 deletions
+61 -2
View File
@@ -4,8 +4,10 @@ use App\Http\Controllers\Api\Admin\Auth\AuthController;
use App\Http\Controllers\Api\Admin\Customer\CustomerController;
use App\Http\Controllers\Api\Admin\Invoice\InvoiceController;
use App\Http\Controllers\Api\Admin\Order\OrderController;
use App\Http\Controllers\Api\Admin\Payment\PaymentController;
use App\Http\Controllers\Api\Admin\Product\ProductCategoryController;
use App\Http\Controllers\Api\Admin\Product\ProductController;
use App\Http\Controllers\Api\Admin\VPS\VPSController;
use App\Http\Controllers\Api\Admin\VCenter\VCenterController;
use App\Http\Services\Media;
use App\Http\Services\vCenter as ServiceVCenter;
@@ -39,6 +41,20 @@ Route::prefix('v1')
// Customers
Route::prefix('customers')->group(function () {
Route::get('/', [CustomerController::class, 'index']);
Route::get('/datatable', [CustomerController::class, 'datatable']);
Route::post('/', [CustomerController::class, 'store']);
Route::get('{id}', [CustomerController::class, 'show']);
Route::put('{id}', [CustomerController::class, 'update']);
Route::delete('{id}', [CustomerController::class, 'destroy']);
Route::post('{id}/reset-password', [CustomerController::class, 'resetPassword']);
Route::post('{id}/add-credit', [CustomerController::class, 'addCredit']);
Route::get('{id}/products', [CustomerController::class, 'getProducts']);
Route::get('{id}/invoices', [CustomerController::class, 'getInvoices']);
Route::get('{id}/transactions', [CustomerController::class, 'getTransactions']);
Route::get('{id}/domains', [CustomerController::class, 'getDomains']);
Route::get('trash', [CustomerController::class, 'trash']);
Route::post('{id}/restore', [CustomerController::class, 'restore']);
Route::delete('{id}/force', [CustomerController::class, 'forceDelete']);
});
// Products
@@ -48,6 +64,9 @@ Route::prefix('v1')
Route::get('{id}', [ProductController::class, 'show']);
Route::put('{id}', [ProductController::class, 'update']);
Route::delete('{id}', [ProductController::class, 'destroy']);
Route::post('{id}/duplicate', [ProductController::class, 'duplicate']);
Route::post('import', [ProductController::class, 'import']);
Route::get('export', [ProductController::class, 'export']);
});
// Product Categories (Groups)
@@ -62,11 +81,45 @@ Route::prefix('v1')
// Orders
Route::prefix('orders')->group(function () {
Route::get('/', [OrderController::class, 'index']);
Route::get('/datatable', [OrderController::class, 'datatable']);
Route::post('/', [OrderController::class, 'store']);
Route::get('{id}', [OrderController::class, 'show']);
Route::put('{id}', [OrderController::class, 'update']);
Route::delete('{id}', [OrderController::class, 'destroy']);
Route::post('{id}/accept', [OrderController::class, 'accept']);
Route::post('{id}/cancel', [OrderController::class, 'cancel']);
});
// Invoices
Route::prefix('invoices')->group(function () {
Route::get('/', [InvoiceController::class, 'index']);
Route::get('/datatable', [InvoiceController::class, 'datatable']);
Route::post('/', [InvoiceController::class, 'store']);
Route::get('{id}', [InvoiceController::class, 'show']);
Route::put('{id}', [InvoiceController::class, 'update']);
Route::delete('{id}', [InvoiceController::class, 'destroy']);
Route::post('{id}/paid', [InvoiceController::class, 'markAsPaid']);
Route::post('{id}/cancel', [InvoiceController::class, 'cancel']);
});
// Payments
Route::prefix('payments')->group(function () {
Route::get('/', [PaymentController::class, 'index']);
Route::post('/', [PaymentController::class, 'store']);
Route::get('{id}', [PaymentController::class, 'show']);
Route::put('{id}', [PaymentController::class, 'update']);
Route::delete('{id}', [PaymentController::class, 'destroy']);
});
// VPS
Route::prefix('vps')->group(function () {
Route::get('/', [VPSController::class, 'index']);
Route::get('{id}', [VPSController::class, 'show']);
Route::put('{id}', [VPSController::class, 'update']);
Route::post('{id}/power-on', [VPSController::class, 'powerOn']);
Route::post('{id}/power-off', [VPSController::class, 'powerOff']);
Route::post('{id}/restart', [VPSController::class, 'restart']);
Route::get('{id}/console-ticket', [VPSController::class, 'getConsoleTicket']);
});
// vCenter
@@ -78,6 +131,13 @@ Route::prefix('v1')
Route::put('node/{type}/{id}', [VCenterController::class, 'updateNode']);
Route::delete('node/{type}/{id}', [VCenterController::class, 'destroyNode']);
});
// vCenter Manager Power Operations
Route::prefix('vcenter-manager')->group(function () {
Route::post('vm/power-on', [App\Http\Controllers\admin\VCenterManagerController::class, 'powerOn']);
Route::post('vm/power-off', [App\Http\Controllers\admin\VCenterManagerController::class, 'powerOff']);
Route::get('vms/powered-off', [App\Http\Controllers\admin\VCenterManagerController::class, 'getPoweredOffVms']);
});
});
});
@@ -85,8 +145,7 @@ Route::prefix('v1')
Route::post('get-all-image', function (Media $media) {
$files = $media->getAllMedia();
$data = view('administrator.pages.component.media')->with('media', $files)->render();
return response()->json(['data' => $data]);
return response()->json(['data' => $files]);
})->name('api.GetAllImage');