作者 刘锟

update

@@ -9,10 +9,15 @@ @@ -9,10 +9,15 @@
9 9
10 namespace App\Console\Commands\Ai; 10 namespace App\Console\Commands\Ai;
11 11
  12 +use App\Helper\Arr;
12 use App\Models\Ai\AiBlog; 13 use App\Models\Ai\AiBlog;
13 use App\Models\Ai\AiBlogAuthor; 14 use App\Models\Ai\AiBlogAuthor;
14 use App\Models\Ai\AiBlogList; 15 use App\Models\Ai\AiBlogList;
  16 +use App\Models\Com\Notify;
  17 +use App\Models\Devops\ServerConfig;
  18 +use App\Models\Devops\ServersIp;
15 use App\Models\Domain\DomainInfo; 19 use App\Models\Domain\DomainInfo;
  20 +use App\Models\Project\Project;
16 use App\Models\Project\ProjectAiSetting; 21 use App\Models\Project\ProjectAiSetting;
17 use App\Models\RouteMap\RouteMap; 22 use App\Models\RouteMap\RouteMap;
18 use App\Services\AiBlogService; 23 use App\Services\AiBlogService;
@@ -212,9 +217,41 @@ class AiBlogTask extends Command @@ -212,9 +217,41 @@ class AiBlogTask extends Command
212 //获取项目域名 217 //获取项目域名
213 $domain = $domainModel->getProjectIdDomain($project_id); 218 $domain = $domainModel->getProjectIdDomain($project_id);
214 if(!empty($domain)){ 219 if(!empty($domain)){
215 - $url = $domain.'api/update_page/?project_id='.$project_id.'&route=7';  
216 - $res = http_get($url);  
217 - echo '返回数据:'.json_encode($res,true).PHP_EOL; 220 + //判断是否是自建站服务器,如果是,不请求C端接口,数据直接入库
  221 + $project_model = new Project();
  222 + $project_info = $project_model->read(['id'=>$project_id],['serve_id']);
  223 + if(!$project_info){
  224 + echo '项目不存在:' . $project_id . PHP_EOL . date('Y-m-d H:i:s');
  225 + return true;
  226 + }
  227 + $serve_ip_model = new ServersIp();
  228 + $serve_ip_info = $serve_ip_model->read(['id'=>$project_info['serve_id']],['servers_id']);
  229 + $servers_id = $serve_ip_info ? $serve_ip_info['servers_id'] : 0;
  230 + if($servers_id == ServerConfig::SELF_SITE_ID){
  231 + //判断是否已有更新进行中
  232 + $notify_model = new Notify();
  233 + $data = [
  234 + 'project_id' => $project_id,
  235 + 'type' => Notify::TYPE_MASTER,
  236 + 'route' => Notify::ROUTE_AI_BLOG,
  237 + 'server_id' => ServerConfig::SELF_SITE_ID,
  238 + 'status' => ['!=',Notify::STATUS_FINISH_SITEMAP]
  239 + ];
  240 + $notify = $notify_model->read($data,['id']);
  241 +
  242 + if(!$notify){
  243 + $domain_array = parse_url($domain);
  244 + $data['data'] = Arr::a2s(['domain'=>$domain_array['host'],'url'=>[],'language'=>[]]);
  245 + $data['status'] = Notify::STATUS_INIT;
  246 + $data['sort'] = 2;
  247 + $notify_model->add($data);
  248 + }
  249 + echo '自建站项目:'.$project_id.'更新';
  250 + }else{
  251 + $url = $domain.'api/update_page/?project_id='.$project_id.'&route=7';
  252 + $res = http_get($url);
  253 + echo '返回数据:'.json_encode($res,true).PHP_EOL;
  254 + }
218 }else{ 255 }else{
219 echo '域名不存在:' . $project_id . PHP_EOL . date('Y-m-d H:i:s'); 256 echo '域名不存在:' . $project_id . PHP_EOL . date('Y-m-d H:i:s');
220 } 257 }