|
...
|
...
|
@@ -424,8 +424,10 @@ class RankDataLogic extends BaseLogic |
|
|
|
*/
|
|
|
|
public function save_rank($project_id, $data, int $indexed_pages_num = 0, string $lang = ''){
|
|
|
|
$without_project_ids = []; //不用处理排名的项目
|
|
|
|
$without_extension_project_ids = [658]; //是否达标只统计主词的
|
|
|
|
|
|
|
|
$first_num = $first_page_num = $first_three_pages_num = $first_five_pages_num = $first_ten_pages_num = 0;
|
|
|
|
$first_page_without_extension_num = 0; //不算扩展词在首页的数量
|
|
|
|
|
|
|
|
foreach ($data as &$ranks){
|
|
|
|
ksort($ranks);
|
|
...
|
...
|
@@ -446,6 +448,7 @@ class RankDataLogic extends BaseLogic |
|
|
|
//排名第一页
|
|
|
|
if($last['position'] > 0 && $last['position'] <= 10){
|
|
|
|
$first_page_num ++;
|
|
|
|
$last['g'] == 1 && $first_page_without_extension_num++;
|
|
|
|
}
|
|
|
|
//排名前三页
|
|
|
|
if($last['position'] > 0 && $last['position'] <= 30){
|
|
...
|
...
|
@@ -476,8 +479,14 @@ class RankDataLogic extends BaseLogic |
|
|
|
$keyword_num = DeployBuild::where('project_id', $project_id)->value('keyword_num');
|
|
|
|
$type = Project::where('id', $project_id)->value('type');
|
|
|
|
$model->is_compliance = 0;
|
|
|
|
if ($keyword_num && $type == Project::TYPE_TWO && $first_page_num >= $keyword_num) {
|
|
|
|
Log::channel('rank_data')->info('项目' . $project_id . ':关键词达标'. $keyword_num .' - ' . $first_page_num);
|
|
|
|
|
|
|
|
//是否达标
|
|
|
|
$is_compliance = $first_page_num >= $keyword_num;
|
|
|
|
if(in_array($project_id, $without_extension_project_ids)){
|
|
|
|
$is_compliance = $first_page_without_extension_num >= $keyword_num;
|
|
|
|
}
|
|
|
|
if ($keyword_num && $type == Project::TYPE_TWO && $is_compliance) {
|
|
|
|
Log::channel('rank_data')->info('项目' . $project_id . ':关键词达标'. $keyword_num .' - ' . $first_page_num . ' - ' . $first_page_without_extension_num);
|
|
|
|
|
|
|
|
//项目表更新
|
|
|
|
if (($model->updated_date != date('Y-m-d') || empty($model->is_compliance)) && !$lang) {
|
...
|
...
|
|