作者 赵彬吉

白帽排名达标

@@ -79,11 +79,11 @@ class RankDataLog extends BaseCommands @@ -79,11 +79,11 @@ class RankDataLog extends BaseCommands
79 $this->output('保存排名数据:ID'.$log->project_id . ',APINO' . $log->api_no); 79 $this->output('保存排名数据:ID'.$log->project_id . ',APINO' . $log->api_no);
80 if(Str::endsWith($log->api_no, '_bmseo')){ 80 if(Str::endsWith($log->api_no, '_bmseo')){
81 //白帽版 81 //白帽版
82 - (new RankDataLogic())->save_rank_bmseo($log->project_id, $log->api_no, $res); 82 + $is_compliance = (new RankDataLogic())->save_rank_bmseo($log->project_id, $log->api_no, $res);
83 }else{ 83 }else{
84 $is_compliance = (new RankDataLogic())->save_rank($log->project_id, $log->api_no, $res, null, $log->lang); 84 $is_compliance = (new RankDataLogic())->save_rank($log->project_id, $log->api_no, $res, null, $log->lang);
85 - $log->is_compliance = $is_compliance;  
86 } 85 }
  86 + $log->is_compliance = $is_compliance;
87 $log->status = 1; 87 $log->status = 1;
88 $log->save(); 88 $log->save();
89 89
@@ -22,6 +22,7 @@ use App\Models\RankData\IndexedPages; @@ -22,6 +22,7 @@ use App\Models\RankData\IndexedPages;
22 use App\Models\RankData\IndexedPages as IndexedPagesModel; 22 use App\Models\RankData\IndexedPages as IndexedPagesModel;
23 use App\Models\RankData\RankData; 23 use App\Models\RankData\RankData;
24 use App\Models\RankData\RankDataBmseo; 24 use App\Models\RankData\RankDataBmseo;
  25 +use App\Models\RankData\RankDataLog;
25 use App\Models\RankData\RankWeek; 26 use App\Models\RankData\RankWeek;
26 use App\Models\RankData\RankWeek as RankWeekModel; 27 use App\Models\RankData\RankWeek as RankWeekModel;
27 use App\Models\RankData\RecommDomain; 28 use App\Models\RankData\RecommDomain;
@@ -709,6 +710,24 @@ class RankDataLogic extends BaseLogic @@ -709,6 +710,24 @@ class RankDataLogic extends BaseLogic
709 $first_ten_pages_num ++; 710 $first_ten_pages_num ++;
710 } 711 }
711 } 712 }
  713 +
  714 + //保证关键词数
  715 + $keyword_num = DeployBuild::where('project_id', $project_id)->value('keyword_num');
  716 + $is_compliance = $first_page_num >= $keyword_num;
  717 +
  718 + if ($keyword_num && $is_compliance) {
  719 + Log::channel('rank_data')->info('项目' . $project_id . '白帽版:关键词达标'. $keyword_num .' - ' . $first_page_num);
  720 +
  721 + $compliance_log = RankDataLog::where('api_no', $api_no)->where('date', date('Y-m-d'))->where('is_compliance', 1)->first();
  722 + if (!$compliance_log) {
  723 + $compliance_day = Project::where(['id' => $project_id])->value('finish_remain_day') ?: 0;
  724 + Project::where('id', $project_id)->update(['bm_is_remain_today' => 1, 'bm_finish_remain_day' => $compliance_day + 1]);
  725 + Log::channel('rank_data')->info('项目' . $project_id . '白帽版:达标天数+1:' . ($compliance_day + 1));
  726 + }
  727 + }else {
  728 + Log::channel('rank_data')->info('项目' . $project_id . '白帽版:关键词未达标'. $keyword_num .' - ' . $first_page_num);
  729 + }
  730 +
712 $where = [ 731 $where = [
713 'project_id' => $project_id, 732 'project_id' => $project_id,
714 'api_no' => $api_no, 733 'api_no' => $api_no,
@@ -728,7 +747,7 @@ class RankDataLogic extends BaseLogic @@ -728,7 +747,7 @@ class RankDataLogic extends BaseLogic
728 $model->updated_date = date('Y-m-d'); 747 $model->updated_date = date('Y-m-d');
729 $model->save(); 748 $model->save();
730 749
731 - return true; 750 + return $is_compliance;
732 } 751 }
733 752
734 /** 753 /**