This commit is contained in:
Tokumeikoi
2020-04-20 16:07:06 +08:00
parent 50b5ed6b8e
commit 3b486e4693
10 changed files with 109 additions and 25 deletions

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers\Admin;
use App\Http\Requests\Admin\PlanSave;
use App\Http\Requests\Admin\PlanSort;
use App\Http\Requests\Admin\PlanUpdate;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
@ -16,7 +17,7 @@ class PlanController extends Controller
public function fetch(Request $request)
{
return response([
'data' => Plan::get()
'data' => Plan::orderBy('sort', 'ASC')->get()
]);
}
@ -91,4 +92,19 @@ class PlanController extends Controller
'data' => true
]);
}
public function sort(PlanSort $request)
{
DB::beginTransaction();
foreach ($request->input('plan_ids') as $k => $v) {
if (!Plan::find($v)->update(['sort' => $k + 1])) {
DB::rollBack();
abort(500, '保存失败');
}
}
DB::commit();
return response([
'data' => true
]);
}
}

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers\Admin;
use App\Http\Requests\Admin\ServerSave;
use App\Http\Requests\Admin\ServerSort;
use App\Http\Requests\Admin\ServerUpdate;
use App\Services\ServerService;
use Illuminate\Http\Request;
@ -12,12 +13,13 @@ use App\Models\Server;
use App\Models\Plan;
use App\Models\User;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
class ServerController extends Controller
{
public function fetch(Request $request)
{
$server = Server::get();
$server = Server::orderBy('sort', 'ASC')->get();
for ($i = 0; $i < count($server); $i++) {
if (!empty($server[$i]['tags'])) {
$server[$i]['tags'] = json_decode($server[$i]['tags']);
@ -206,4 +208,19 @@ class ServerController extends Controller
'data' => $config
]);
}
public function sort(ServerSort $request)
{
DB::beginTransaction();
foreach ($request->input('server_ids') as $k => $v) {
if (!Server::find($v)->update(['sort' => $k + 1])) {
DB::rollBack();
abort(500, '保存失败');
}
}
DB::commit();
return response([
'data' => true
]);
}
}

View File

@ -14,7 +14,7 @@ class TutorialController extends Controller
public function fetch(Request $request)
{
return response([
'data' => Tutorial::get()
'data' => Tutorial::orderBy('sort', 'ASC')->get()
]);
}
@ -60,22 +60,10 @@ class TutorialController extends Controller
public function sort(TutorialSort $request)
{
$sort = $request->input('sort');
$tutorial = Tutorial::find($request->input('id'))->first();
if (!$tutorial) {
abort(500, '教程不存在');
}
DB::beginTransaction();
$tutorial->sort = $sort;
if (!$tutorial->save()) {
DB::rollBack();
abort(500, '保存失败');
}
$tutorials = Tutorial::where('sort', '>', $sort)->get();
foreach ($tutorials as $tutorial) {
$sort++;
if (!$tutorial->save(['sort' => $sort])) {
foreach ($request->input('tutorial_ids') as $k => $v) {
if (!Tutorial::find($v)->update(['sort' => $k + 1])) {
DB::rollBack();
abort(500, '保存失败');
}
}

View File

@ -19,7 +19,7 @@ class ClientController extends Controller
$userService = new UserService();
if ($userService->isAvailable($user)) {
$servers = Server::where('show', 1)
->orderBy('name')
->orderBy('sort', 'ASC')
->get();
foreach ($servers as $item) {
$groupId = json_decode($item['group_id']);

View File

@ -52,6 +52,7 @@ class TutorialController extends Controller
}
$tutorial = Tutorial::select(['id', 'category_id', 'title'])
->where('show', 1)
->orderBy('sort', 'ASC')
->get()
->groupBy('category_id');
$user = User::find($request->session()->get('id'));