|
...
|
...
|
@@ -19,6 +19,7 @@ use App\Models\GoogleSearch\GoogleCodeCountry; |
|
|
|
use App\Models\Product\CategoryRelated;
|
|
|
|
use App\Models\Product\Keyword;
|
|
|
|
use App\Models\Product\Product;
|
|
|
|
use App\Models\Project\AggregateKeyword;
|
|
|
|
use App\Models\Project\AiBlogTask;
|
|
|
|
use App\Models\Project\DeployOptimize;
|
|
|
|
use App\Models\Project\Project;
|
|
...
|
...
|
@@ -66,7 +67,36 @@ class UpdateRoute extends Command |
|
|
|
*/
|
|
|
|
public function handle()
|
|
|
|
{
|
|
|
|
return $this->_action();
|
|
|
|
return $this->keyword_actions();
|
|
|
|
}
|
|
|
|
|
|
|
|
public function keyword_actions(){
|
|
|
|
$a = new AggregateKeyword();
|
|
|
|
$list = $a->formatQuery(['status'=>1])->pluck('project_id')->unique()->values()->toArray();
|
|
|
|
foreach ($list as $v){
|
|
|
|
echo date('Y-m-d H:i:s').' 执行的项目id:'.$v.PHP_EOL;
|
|
|
|
ProjectServer::useProject($v);
|
|
|
|
$keywordModel = new Keyword();
|
|
|
|
$keyList = $keywordModel->list(['status'=>1],'id',['id','title'],'asc');
|
|
|
|
foreach ($keyList as $keyV){
|
|
|
|
echo date('Y-m-d H:i:s').'对应数据id:'.$keyV['id'].PHP_EOL;
|
|
|
|
$keywordInfo = $keywordModel->read(['id'=>$keyV['id']],['id']);
|
|
|
|
if($keywordInfo !== false){
|
|
|
|
$keywordIds = $keywordModel->formatQuery(['id'=>['!=',$keyV['id'],'title'=>$keyV['title']]])->pluck('id')->toArray();
|
|
|
|
if(!empty($keywordIds)){
|
|
|
|
echo date('Y-m-d H:i:s').'清空对应重复的关键词....'.PHP_EOL;
|
|
|
|
$keywordModel->del(['id'=>['in',$keywordIds]]);
|
|
|
|
$routeMapModel = new RouteMap();
|
|
|
|
$routeMapModel->del(['source'=>'product_keyword','source_id'=>['in',$keywordIds]]);
|
|
|
|
}else{
|
|
|
|
echo date('Y-m-d H:i:s').'无重复关键词..'.PHP_EOL;
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
echo '当前关键词已被清除'.PHP_EOL;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
DB::disconnect('custom_mysql');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
...
|
...
|
|