作者 lyh

修改脚本设置

... ... @@ -10,6 +10,7 @@ namespace App\Console\Commands\Test;
use App\Models\Com\KeywordVideoTask;
use App\Models\Com\KeywordVideoTaskLog;
use App\Models\Devops\ServerConfig;
use App\Models\Devops\Servers;
use App\Models\Devops\ServersIp;
use App\Models\File\File;
... ... @@ -45,17 +46,51 @@ class Demo extends Command
protected $description = 'demo';
public function handle(){
$keywordVideoModel = new KeywordVideoTask();
$project_id_arr = $keywordVideoModel::where('id','>',0)->pluck('project_id')->toArray();
//查看是否有子记录
foreach ($project_id_arr as $values){
$logModel = new KeywordVideoTaskLog();
$logInfo = $logModel->read(['project_id'=>$values]);
if($logInfo === false){
echo date('Y-m-d H:i:s') . '开启的项目project_id:'.$values . PHP_EOL;
$keywordVideoModel->edit(['status'=>0],['project_id'=>$values]);
$serverConfigModel = new ServerConfig();
$lists = $serverConfigModel->list(['type'=>1]);
foreach ($lists as $v){
echo date('Y-m-d H:i:s') . 'title数据:'.$v['title'] . PHP_EOL;
$param = [
'server_name'=>$v['title'],
'being_number'=>$v['count'],
'ip_total'=>1,
'account'=>$v['user'],
'password'=>$v['password'],
'port'=>$v['port'],
'bt_account'=>$v['bt_account'],
'bt_password'=>$v['bt_password'],
'service_type'=>$v['service_type'],
'domain'=>'globalso.com',
];
$serverModel = new Servers();
$server_id = $serverModel->addReturnId($param);
echo date('Y-m-d H:i:s') . 'server_id:'.$server_id . PHP_EOL;
$paramsIp = [
'id'=>$v['id'],
'ip'=>$v['host'],
'servers_id'=>$server_id,
'domain'=>$v['init_domain'],
'created_at'=>date('Y-m-d H:i:s'),
'updated_at'=>date('Y-m-d H:i:s')
];
$serverIpModel = new ServersIp();
$serverIpModel->insert($paramsIp);
}
return true;
}
// public function handle(){
// $keywordVideoModel = new KeywordVideoTask();
// $project_id_arr = $keywordVideoModel::where('id','>',0)->pluck('project_id')->toArray();
// //查看是否有子记录
// foreach ($project_id_arr as $values){
// $logModel = new KeywordVideoTaskLog();
// $logInfo = $logModel->read(['project_id'=>$values]);
// if($logInfo === false){
// echo date('Y-m-d H:i:s') . '开启的项目project_id:'.$values . PHP_EOL;
// $keywordVideoModel->edit(['status'=>0],['project_id'=>$values]);
// }
// }
// $projectModel = new Project();
// $list = $projectModel->list(['type'=>['!=',0],'delete_status'=>0,'id'=>['in',$project_id_arr]]);
// $data = [];
... ... @@ -65,30 +100,30 @@ class Demo extends Command
// $this->getProductList();
// DB::disconnect('custom_mysql');
// }
echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
}
// echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
// }
public function getProductList(){
$productModel = new Product();
$product_all_id = $productModel::whereRaw('LENGTH(keyword_id) > 50')->pluck('id')->toArray();
if(empty($product_all_id)){
return true;
}
$lists = $productModel->whereIn("id", $product_all_id)->orderByRaw(DB::raw("FIELD(id, " . implode(',', $product_all_id) . ")"))->get()->toArray();
foreach ($lists as $k => $v){
echo date('Y-m-d H:i:s') . '项目id:'.$v['project_id'].'+产品product_id:'.$v['id'] . PHP_EOL;
$str = ',';
shuffle($v['keyword_id']);
foreach ($v['keyword_id'] as $key => $value){
if($key == 6){
break;
}
$str .= $value.',';
}
$productModel->edit(['keyword_id'=>$str],['id'=>$v['id']]);
}
return true;
}
// public function getProductList(){
// $productModel = new Product();
// $product_all_id = $productModel::whereRaw('LENGTH(keyword_id) > 50')->pluck('id')->toArray();
// if(empty($product_all_id)){
// return true;
// }
// $lists = $productModel->whereIn("id", $product_all_id)->orderByRaw(DB::raw("FIELD(id, " . implode(',', $product_all_id) . ")"))->get()->toArray();
// foreach ($lists as $k => $v){
// echo date('Y-m-d H:i:s') . '项目id:'.$v['project_id'].'+产品product_id:'.$v['id'] . PHP_EOL;
// $str = ',';
// shuffle($v['keyword_id']);
// foreach ($v['keyword_id'] as $key => $value){
// if($key == 6){
// break;
// }
// $str .= $value.',';
// }
// $productModel->edit(['keyword_id'=>$str],['id'=>$v['id']]);
// }
// return true;
// }
//
// /**
// * @remark :关键字有视频的改为1
... ...
... ... @@ -118,4 +118,21 @@ class ServersIpController extends BaseController
$data = $serversIpLogic->batchSaveServersIp();
$this->response('success',Code::SUCCESS,$data);
}
/**
* @remark :批量删除数据
* @name :batchDel
* @author :lyh
* @method :post
* @time :2024/6/27 13:52
*/
public function batchDel(ServersIpLogic $serversIpLogic){
$this->request->validate([
'ids'=>'required|array',
],[
'ids.required' => 'ip集合不能为空',
]);
$serversIpLogic->batchDelServersIp();
$this->response('success');
}
}
... ...
... ... @@ -74,4 +74,22 @@ class ServersIpLogic extends BaseLogic
}
return $this->success();
}
/**
* @remark :批量删除数据
* @name :batchDelServersIp
* @author :lyh
* @method :post
* @time :2024/6/27 13:55
*/
public function batchDelServersIp(){
foreach ($this->param['ids'] as $v){
$info = $this->model->read(['id'=>$v['id']],['total']);
if($info['total'] != 0){
continue;
}
$this->model->del(['id'=>$v]);
}
return $this->success();
}
}
... ...
... ... @@ -193,15 +193,16 @@ class ProjectLogic extends BaseLogic
}
$serversIpModel = new ServersIp();
$serversIpInfo = $serversIpModel->read(['project_arr'=>['like','%,'.$project_id.',%']]);
$serversModel = new Servers();
if($serversIpInfo !== false){
$string = str_replace(','.$project_id.',',',',$serversIpInfo['project_arr']);
if($string == ','){
$string = '';
}
$serversIpModel->edit(['project_arr'=>$string],['id'=>$serversIpInfo['id']]);
$serversModel->where(['id'=>$serversIpInfo['servers_id']])->decrement('being_number',1);
}
$info = $serversIpModel->read(['id'=>$servers_id]);
$serversModel = new Servers();
$serversInfo = $serversModel->read(['id'=>$info['servers_id']]);
if($serversInfo['being_number'] >= $serversInfo['total']){
$this->fail('请选择其他服务器,当前服务器已满');
... ... @@ -217,7 +218,7 @@ class ProjectLogic extends BaseLogic
array_push($project_arr,$project_id);
$project_str = ','.implode(',',$project_arr).',';
$serversIpModel->edit(['project_arr'=>$project_str,'total'=>count($project_arr)],['id'=>$servers_id]);
$serversModel->where(['id'=>$info['servers_id']])->increment('being_number');
$serversModel->where(['id'=>$info['servers_id']])->increment('being_number',1);
}
return $this->success();
}
... ...
... ... @@ -447,6 +447,7 @@ Route::middleware(['aloginauth'])->group(function () {
Route::any('/list', [Aside\Devops\ServersIpController::class, 'list'])->name('admin.servers_list');
Route::any('/save', [Aside\Devops\ServersIpController::class, 'save'])->name('admin.servers_save');
Route::any('/batchSave', [Aside\Devops\ServersIpController::class, 'batchSave'])->name('admin.servers_batchSave');
Route::any('/batchDel', [Aside\Devops\ServersIpController::class, 'batchDel'])->name('admin.servers_batchDel');
Route::any('/info', [Aside\Devops\ServersIpController::class, 'info'])->name('admin.servers_info');
});
});
... ...