作者 lyh

gx

... ... @@ -9,11 +9,14 @@ namespace App\Console\Commands\Test;
use App\Models\Com\KeywordVideoTask;
use App\Models\Devops\Servers;
use App\Models\Devops\ServersIp;
use App\Models\File\File;
use App\Models\File\File as FileModel;
use App\Models\File\Image;
use App\Models\File\Image as ImageModel;
use App\Models\Product\Keyword;
use App\Models\Product\Product;
use App\Models\Project\DeployOptimize;
use App\Models\Project\MinorLanguages;
use App\Models\Project\Project;
... ... @@ -40,54 +43,37 @@ class Demo extends Command
*/
protected $description = 'demo';
public function handle(){
$keywordVideoModel = new KeywordVideoTask();
$project_id_arr = $keywordVideoModel::where('id','>',0)->pluck('project_id')->toArray();
$projectModel = new Project();
$list = $projectModel->list(['type'=>['!=',0],'delete_status'=>0,'id'=>['in',$project_id_arr]]);
$data = [];
foreach ($list as $v){
echo date('Y-m-d H:i:s') . 'project_id:'.$v['id'] . PHP_EOL;
ProjectServer::useProject($v['id']);
$this->getProductList();
DB::disconnect('custom_mysql');
}
echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
}
// /**
// * Execute the job.
// *
// * @return void
// */
// public function handle()
// {
// $this->param['project_id'] = 181;
// $imageModel = new ImageModel();
// //获取当前项目的所有图片
// $imageList = $imageModel->list(['project_id'=>$this->param['project_id'],'is_cos'=>1],'id',['id','path','is_cos','size']);
// if(!empty($imageList)){
// $amazonS3Service = new AmazonS3Service();
// foreach ($imageList as $k => $v){
// $amazonS3Service->syncImageFiles(getImageUrl($v['path']));
// $imageModel->edit(['is_cos'=>0],['id'=>$v['id']]);
// }
// }
//
// $fileModel = new FileModel();
// $fileList = $fileModel->list(['project_id'=>$this->param['project_id'],'is_cos'=>1],'id',['id','path','is_cos','name']);
// if(!empty($fileList)){
// $amazonS3Service = new AmazonS3Service();
// foreach ($fileList as $k => $v){
// echo date('Y-m-d H:i:s') . '执行的数据id:' . $v['id'] . '名称:'.$v['name'] . PHP_EOL;
// $amazonS3Service->syncImageFiles(getFileUrl($v['path']));
// $fileModel->edit(['is_cos'=>0],['id'=>$v['id']]);
// gc_collect_cycles();
// }
// }
// return true;
// }
// public function handle(){
// $keywordVideoModel = new KeywordVideoTask();
// $project_id_arr = $keywordVideoModel::where('id','>',0)->pluck('project_id')->toArray();
// $projectModel = new Project();
// $list = $projectModel->list(['type'=>['!=',0],'delete_status'=>0,'id'=>['in',$project_id_arr]]);
// $data = [];
// foreach ($list as $v){
// echo date('Y-m-d H:i:s') . 'project_id:'.$v['id'] . PHP_EOL;
// ProjectServer::useProject($v['id']);
// $this->saveKeyword();
// DB::disconnect('custom_mysql');
// }
// echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
// }
public function getProductList(){
$productModel = new Product();
$lists = $productModel::whereRaw('LENGTH(keyword_id) > 50')->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 = ',';
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
... ... @@ -140,26 +126,4 @@ class Demo extends Command
// }
// return true;
// }
public function handle(){
$minorLanguageModel = new MinorLanguages();
$lists = $minorLanguageModel->list();
foreach ($lists as $v){
$d = new DeployOptimize();
$info = $d->read(['project_id'=>$v['project_id']]);
if($info === false){
continue;
}
if(!empty($info['minor_keywords'])){
echo '关键字'.json_decode($info['minor_keywords']);
$minor_keywords = json_decode($info['minor_keywords']);
foreach ($minor_keywords as $v1){
$v1 = (array)$v1;
if($v['language'] == $v1['name']){
$minorLanguageModel->edit(['minor_keywords'=>$v1['keyword']],['id'=>$v['id']]);
}
}
}
}
}
}
... ...
... ... @@ -153,6 +153,8 @@ class ProjectLogic extends BaseLogic
}else{
//初始化项目
$this->createProjectData($this->param);
//双向绑定服务器,需放到保存项目的上方
// $this->setServers($this->param['serve_id'],$this->param['id']);
//保存项目信息
$this->saveProject($this->param);
//保存建站部署信息
... ... @@ -169,8 +171,6 @@ class ProjectLogic extends BaseLogic
$this->syncImageFile($this->param['project_location'],$this->param['id']);
//同步信息表
(new SyncService())->projectAcceptAddress($this->param['id']);
//双向绑定服务器
// $this->setServers($this->param['serve_id'],$this->param['id']);
}
return $this->success();
}
... ... @@ -206,7 +206,10 @@ class ProjectLogic extends BaseLogic
if($serversInfo['being_number'] >= $serversInfo['total']){
$this->fail('请选择其他服务器,当前服务器已满');
}
$project_arr = explode(',',trim($info['project_arr'],','));
$project_arr = [];
if(!empty(trim($info['project_arr'],','))){
$project_arr = explode(',',trim($info['project_arr'],','));
}
if(count($project_arr) >= $serversInfo['ip_total']){
$this->fail('请选择其他服务器,当前ip已满');
}
... ...