作者 lyh

gx

... ... @@ -2,6 +2,7 @@
namespace App\Http\Controllers\Aside\Devops;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Devops\ServerConfigLogic;
... ... @@ -21,6 +22,24 @@ class ServerConfigController extends BaseController
{
/**
* @remark :服务器列表
* @name :lists
* @author :lyh
* @method :post
* @time :2023/8/2 14:48
*/
public function lists(ServerConfigLogic $logic){
if(isset($this->map['title']) && !empty($this->map['title'])){
$this->map['title'] = ['like','%'.$this->map['title'],'%'];
}
if(isset($this->map['host']) && !empty($this->map['host'])){
$this->map['host'] = ['like','%'.$this->map['host'],'%'];
}
$lists = $logic->serviceConfigList($this->map,$this->page,$this->row,$this->order);
$this->response('success',Code::SUCCESS,$lists);
}
/**
* 保存配置
* @param ServerConfigRequest $request
* @param ServerConfigLogic $logic
... ...
<?php
namespace App\Http\Controllers\Aside\Devops;
use App\Enums\Common\Code;
use App\Exceptions\AsideGlobalException;
use App\Exceptions\BsideGlobalException;
use App\Http\Controllers\Aside\BaseController;
use App\Http\Logic\Aside\Devops\ServerInformationLogic;
use App\Http\Requests\Aside\Devops\ServerInformationRequest;
use App\Models\Devops\ServerInformation;
use App\Models\Devops\ServerInformationLog;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
class ServerInformationController extends BaseController
{
/**
* @remark :获取服务器列表
* @name :lists
* @author :lyh
* @method :post
* @time :2023/8/1 11:19
*/
public function lists()
{
if(isset($this->map['title']) && !empty($this->map['title'])){
$this->map['title'] = ['like','%'.$this->map['title'],'%'];
}
$serverInformationModel = new ServerInformation();
$lists = $serverInformationModel->lists($this->map,$this->page,$this->row,$this->order);
$this->response('success', Code::SUCCESS, $lists);
}
/**
* 添加
* @param ServerInformationRequest $serverInformationRequest
* @param ServerInformationLogic $serverInformationLogic
* @return void
* @throws AsideGlobalException
* @throws BsideGlobalException
*/
public function add(ServerInformationRequest $serverInformationRequest, ServerInformationLogic $serverInformationLogic)
{
$serverInformationRequest->validated();
$serverInformationLogic->create();
$this->response('服务器添加成功!');
}
/**
* 编辑
* @param ServerInformationRequest $serverInformationRequest
* @param ServerInformationLogic $serverInformationLogic
* @return void
* @throws AsideGlobalException
* @throws BsideGlobalException
*/
public function edit(ServerInformationRequest $serverInformationRequest, ServerInformationLogic $serverInformationLogic)
{
$serverInformationRequest->validate([
'id' => 'required|integer',
], [
'id.required' => 'ID不能为空',
'id.integer' => 'ID必须为整数',
]);
$serverInformationLogic->update();
$this->response('服务器修改成功!');
}
/**
* 删除
* @param ServerInformationLogic $serverInformationLogic
* @return void
* @throws AsideGlobalException
* @throws BsideGlobalException
*/
public function delete(ServerInformationLogic $serverInformationLogic)
{
$serverInformationLogic->get_batch_update();
$this->response('服务器删除成功!');
}
/**
* 恢复数据
* @param ServerInformationLogic $serverInformationLogic
* @return void
* @throws AsideGlobalException
* @throws BsideGlobalException
*/
public function restore(ServerInformationLogic $serverInformationLogic)
{
$serverInformationLogic->get_batch_update(ServerInformationLog::ACTION_RECOVER, ServerInformation::DELETED_DELETE);
$this->response('服务器恢复成功!');
}
/**
* 服务器信息
* @param int $deleted
* @return JsonResponse
* @throws AsideGlobalException
* @throws BsideGlobalException
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
public function getServerInfo(int $deleted = ServerInformation::DELETED_NORMAL)
{
$serverInformationLogic = new ServerInformationLogic();
$data = $serverInformationLogic->serverInfo($deleted);
if (!$data) {
return $this->response('服务器信息不存在', Code::USER_ERROR);
}
return $this->success($data->toArray());
}
/**
* 获取软删除的服务器信息
* @return JsonResponse
* @throws AsideGlobalException
* @throws BsideGlobalException
* @throws ContainerExceptionInterface
* @throws NotFoundExceptionInterface
*/
public function getDeleteServerInfo()
{
return $this->getServerInfo(ServerInformation::DELETED_DELETE);
}
}
<?php
namespace App\Http\Controllers\Aside\Devops;
use App\Enums\Common\Code;
use App\Http\Controllers\Aside\BaseController;
use App\Models\Devops\ServerInformationLog;
use Illuminate\Http\Request;
class ServerInformationLogController extends BaseController
{
public function lists(Request $request)
{
$size = $request->input('size', $this->row);
$data = ServerInformationLog::query()
->orderBy('id', 'desc')
->paginate($size);
return $this->response('success', Code::SUCCESS, $data);
}
}
... ... @@ -23,10 +23,21 @@ class ServerConfigLogic extends BaseLogic
public function __construct()
{
parent::__construct();
$this->param = $this->requestAll;
$this->model = new ServerConfig();
}
/**
* @remark :获取域名列表
* @name :serviceConfigList
* @author :lyh
* @method :post
* @time :2023/8/2 14:51
*/
public function serviceConfigList($map,$page,$row,$order = 'id',$filed = ['*']){
$lists = $this->model->lists($map,$page,$row,$order,$filed);
return $this->success($lists);
}
public function save($param)
{
... ...
... ... @@ -149,29 +149,15 @@ Route::middleware(['aloginauth'])->group(function () {
Route::post('/status', [Aside\Task\TaskController::class, 'status'])->name('admin.task_status');
Route::post('/save_follow', [Aside\Task\TaskController::class, 'save_follow'])->name('admin.task_save_follow');
});
//运维
Route::prefix('devops')->group(function () {
//服务器配置
Route::prefix('server_config')->group(function () {
Route::post('/save', [Aside\Devops\ServerConfigController::class, 'save'])->name('admin.devops.server_config.save');
Route::post('/update_database', [Aside\Devops\ServerConfigController::class, 'updateDatabase'])->name('admin.devops.server_config.update_database');
Route::post('/update_code', [Aside\Devops\ServerConfigController::class, 'updateCode'])->name('admin.devops.server_config.update_code');
});
// 服务器添加|修改|删除
Route::prefix('server')->group(function () {
Route::get('/', [Aside\Devops\ServerInformationController::class, 'lists'])->name('admin.devops.bt'); // 列表 | 搜索
Route::get('/info', [Aside\Devops\ServerInformationController::class, 'getServerInfo'])->name('admin.devops.bt_info'); // 获取信息
Route::get('/delete_info', [Aside\Devops\ServerInformationController::class, 'getDeleteServerInfo'])->name('admin.devops.bt_delete_info'); // 删除信息
Route::post('/add', [Aside\Devops\ServerInformationController::class, 'add'])->name('admin.devops.bt_add'); // 添加
Route::post('/edit', [Aside\Devops\ServerInformationController::class, 'edit'])->name('admin.devops.bt_edit'); // 修改
Route::get('/delete', [Aside\Devops\ServerInformationController::class, 'delete'])->name('admin.devops.bt_delete'); // 删除
Route::get('/restore', [Aside\Devops\ServerInformationController::class, 'restore'])->name('admin.devops.bt_restore'); //恢复数据
Route::get('/log', [Aside\Devops\ServerInformationLogController::class, 'lists'])->name('admin.devops.bt_log_lists'); //日志列表
});
//服务器配置
Route::prefix('server_config')->group(function () {
Route::post('/', [Aside\Devops\ServerConfigController::class, 'lists'])->name('admin.server_config.lists');
Route::post('/save', [Aside\Devops\ServerConfigController::class, 'save'])->name('admin.server_config.save');
Route::post('/update_database', [Aside\Devops\ServerConfigController::class, 'updateDatabase'])->name('admin.server_config.update_database');
Route::post('/update_code', [Aside\Devops\ServerConfigController::class, 'updateCode'])->name('admin..server_config.update_code');
});
// 域名管理
Route::prefix('domain')->group(function () {
Route::any('/', [Aside\Domain\DomainInfoController::class, 'lists'])->name('admin.domain'); // 列表 | 搜索
... ...