作者 lyh

gx脚本锚文本数量

@@ -46,6 +46,121 @@ class lyhDemo extends Command @@ -46,6 +46,121 @@ class lyhDemo extends Command
46 protected $description = '更新路由'; 46 protected $description = '更新路由';
47 47
48 public function handle(){ 48 public function handle(){
  49 + $projectIds = DB::table('gl_project_ai_setting_copy1')
  50 + ->whereIn('mch_id', function ($query) {
  51 + $query->select('mch_id')
  52 + ->from('gl_project_ai_setting_copy1')
  53 + ->groupBy('mch_id')
  54 + ->havingRaw('COUNT(*) > 1');
  55 + })
  56 + ->pluck('project_id');
  57 + $projectIds[] = 811;
  58 + $projectIds[] = 1367;
  59 + $projectIds[] = 1370;
  60 + $projectIds[] = 2201;
  61 + $projectIds[] = 2260;
  62 + $projectIds[] = 2259;
  63 + $data = [];
  64 + $aiSettingModel = new ProjectAiSetting();
  65 + foreach ($projectIds as $item){
  66 + $info = $aiSettingModel->read(['project_id'=>$item]);
  67 + if($info === false){
  68 + echo 'error项目id:'.$item.PHP_EOL;
  69 + }else{
  70 + //获取对应的task_id
  71 + echo '项目id:'.$item.PHP_EOL;
  72 + $aiBlogTask = new AiBlogTask();
  73 + $aiBlogTask->edit(['status'=>1],['type'=>2,'project_id'=>$item]);
  74 + }
  75 + }
  76 +// return true;
  77 +// $aiSettingModel = new ProjectAiSetting();
  78 +// $aiSettingModel->del(['project_id'=>['in',$projectIds]]);
  79 +// $projectModel = new Project();
  80 +// $logic = new ProjectLogic();
  81 +// $lists = $projectModel->list(['delete_status' => 0,'extend_type'=>0,'id'=>['in',$projectIds]], 'id', ['id']);
  82 +// $title = [];
  83 +// foreach ($lists as $val) {
  84 +// //清空作者
  85 +// ProjectServer::useProject($val['id']);
  86 +// AiBlogAuthor::truncate();
  87 +// $routeMapModel = new RouteMap();
  88 +// $routeMapModel->del(['source'=>$routeMapModel::SOURCE_AI_BLOG_AUTHOR]);
  89 +// DB::disconnect('custom_mysql');
  90 +// //重新创建项目拉取作者
  91 +// $info = $logic->getProjectInfo($val['id']);
  92 +// $title[] = $info['company']?:$info['title'];
  93 +// if(empty($info['main_lang_id'])){
  94 +// $info['main_lang_id'] = 1;
  95 +// }
  96 +// if(empty($info['is_ai_blog'])){
  97 +// $info['is_ai_blog'] = 1;
  98 +// }
  99 +//// try {
  100 +// $this->setAiBlog($info['id'],$info['main_lang_id'],$info['is_ai_blog'] ?? 0,
  101 +// $info['company']??"", $info['deploy_optimize']['company_en_name'] ?? '',
  102 +// $info['deploy_optimize']['company_en_description'] ?? '',$info['is_ai_video'] ?? 0,$info['is_related_video'] ?? 0);
  103 +// }catch (\Exception $e){
  104 +// continue;
  105 +// }
  106 +
  107 +// }
  108 + return true;
  109 + }
  110 + public function setAiBlog($project_id,$main_lang_id,$is_ai_blog,$company,$company_en_name,$company_en_description,$is_ai_video = 0,$is_related_video = 0){
  111 + if(empty($main_lang_id) || (empty($is_ai_blog) && empty($is_ai_video))){
  112 + echo '创建失败:'.$project_id.PHP_EOL;
  113 + }
  114 + $this->model = new Project();
  115 + $projectInfo = $this->model->read(['id'=>$project_id],['title','main_lang_id','company']);
  116 + $projectOptimize = DeployOptimize::where('project_id', $project_id)->first();
  117 + //获取项目主语种
  118 + $languageModel = new WebLanguage();
  119 + $languageInfo = $languageModel->read(['id'=>$main_lang_id],['short']);
  120 + if($languageInfo == false){
  121 + echo '创建失败:'.$project_id.PHP_EOL;
  122 + }
  123 + $aiSettingModel = new ProjectAiSetting();
  124 + $aiSettingInfo = $aiSettingModel->read(['project_id'=>$project_id]);
  125 + if($aiSettingInfo === false){
  126 + $aiBlogService = new AiBlogService();
  127 + $result = $aiBlogService->createProject($projectInfo['company']?:$projectInfo['title'],$languageInfo['short'],$company_en_description,$company_en_name,$is_related_video);
  128 + if(isset($result['status']) && $result['status'] == 200){
  129 + //查看当前项目是否已有记录
  130 + $resData = [
  131 + 'project_id'=>$project_id,
  132 + 'mch_id'=>$result['data']['mch_id'],
  133 + 'key'=>$result['data']['key'],
  134 + ];
  135 + $aiSettingModel->add($resData);
  136 + $this->createAuthor($project_id,$result['data']['mch_id'],$result['data']['key']);
  137 + }else{
  138 + echo '创建失败:'.$project_id.PHP_EOL;
  139 + }
  140 + }else{
  141 + //有信息更新
  142 + if(($projectInfo['company'] != $company) || ($projectInfo['main_lang_id'] != $main_lang_id)
  143 + || ($projectOptimize['company_en_name'] != $company_en_name) || ($projectOptimize['company_en_description'] != $company_en_description)){
  144 + $aiBlogService = new AiBlogService();
  145 + $aiBlogService->mch_id = $aiSettingInfo['mch_id'];
  146 + $aiBlogService->key = $aiSettingInfo['key'];
  147 + $aiBlogService->updatedProject($projectInfo['company']?:$projectInfo['title'],$languageInfo['short'],$company_en_description,$company_en_name,$is_related_video);
  148 + }
  149 + }
  150 + return true;
  151 + }
  152 +
  153 + public function createAuthor($project_id,$mch_id,$key){
  154 + //查看当前项目是否已经创建了作者
  155 + $aiBlogTaskModel = new AiBlogTask();
  156 + $aiBlogService = new AiBlogService();
  157 + $aiBlogService->mch_id = $mch_id;
  158 + $aiBlogService->key = $key;
  159 + $result = $aiBlogService->createAuthor();
  160 + if($result['status'] == 200){
  161 + //查看当前是否已有未执行的
  162 + $aiBlogTaskModel->add(['project_id'=>$project_id,'status'=>1,'type'=>1]);
  163 + }
49 return true; 164 return true;
50 } 165 }
51 } 166 }