mirror of
https://github.com/cedar2025/Xboard.git
synced 2025-01-23 19:18:12 -05:00
46 lines
1.1 KiB
PHP
46 lines
1.1 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace App\Http\Controllers\V1\Admin\Server;
|
||
|
|
||
|
use App\Http\Controllers\Controller;
|
||
|
use App\Services\ServerService;
|
||
|
use Illuminate\Http\Request;
|
||
|
use Illuminate\Support\Facades\DB;
|
||
|
|
||
|
class ManageController extends Controller
|
||
|
{
|
||
|
public function getNodes(Request $request)
|
||
|
{
|
||
|
$serverService = new ServerService();
|
||
|
return response([
|
||
|
'data' => $serverService->getAllServers()
|
||
|
]);
|
||
|
}
|
||
|
|
||
|
public function sort(Request $request)
|
||
|
{
|
||
|
ini_set('post_max_size', '1m');
|
||
|
$params = $request->only(
|
||
|
'shadowsocks',
|
||
|
'vmess',
|
||
|
'trojan',
|
||
|
'hysteria',
|
||
|
'vless'
|
||
|
) ?? [];
|
||
|
DB::beginTransaction();
|
||
|
foreach ($params as $k => $v) {
|
||
|
$model = 'App\\Models\\Server' . ucfirst($k);
|
||
|
foreach($v as $id => $sort) {
|
||
|
if (!$model::find($id)->update(['sort' => $sort])) {
|
||
|
DB::rollBack();
|
||
|
abort(500, '保存失败');
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
DB::commit();
|
||
|
return response([
|
||
|
'data' => true
|
||
|
]);
|
||
|
}
|
||
|
}
|