|
...
|
...
|
@@ -10,13 +10,24 @@ |
|
|
|
namespace App\Console\Commands\LyhTest;
|
|
|
|
|
|
|
|
use App\Console\Commands\Domain\DomainInfo;
|
|
|
|
use App\Http\Logic\Aside\Project\ProjectLogic;
|
|
|
|
use App\Models\Ai\AiBlog;
|
|
|
|
use App\Models\Ai\AiBlogAuthor;
|
|
|
|
use App\Models\Com\NoticeLog;
|
|
|
|
use App\Models\Com\V6WeeklyReport;
|
|
|
|
use App\Models\Project\AiBlogTask;
|
|
|
|
use App\Models\Project\DeployBuild;
|
|
|
|
use App\Models\Project\DeployOptimize;
|
|
|
|
use App\Models\Project\OnlineCheck;
|
|
|
|
use App\Models\Project\Project;
|
|
|
|
use App\Models\Project\ProjectAiSetting;
|
|
|
|
use App\Models\ProjectAssociation\ProjectAssociation;
|
|
|
|
use App\Models\RouteMap\RouteMap;
|
|
|
|
use App\Models\Visit\Visit;
|
|
|
|
use App\Models\WebSetting\WebLanguage;
|
|
|
|
use App\Models\WebSetting\WebSetting;
|
|
|
|
use App\Models\Workchat\MessagePush;
|
|
|
|
use App\Services\AiBlogService;
|
|
|
|
use App\Services\ProjectServer;
|
|
|
|
use Illuminate\Console\Command;
|
|
|
|
use Illuminate\Support\Facades\Artisan;
|
|
...
|
...
|
@@ -40,19 +51,44 @@ class lyhDemo extends Command |
|
|
|
|
|
|
|
public function handle(){
|
|
|
|
$projectModel = new Project();
|
|
|
|
$lists = $projectModel->list(['delete_status' => 0,'extend_type'=>0,'type'=>['in',[1,2,3,4]]], 'id', ['id']);
|
|
|
|
$lists = $projectModel->list(['delete_status' => 0,'extend_type'=>0,'type'=>['in',[1,2,3,4,6]]], 'id', ['id']);
|
|
|
|
foreach ($lists as $val) {
|
|
|
|
echo date('Y-m-d H:i:s') . '开始--项目的id:'. $val['id'] . PHP_EOL;
|
|
|
|
ProjectServer::useProject($val['id']);
|
|
|
|
try {
|
|
|
|
$settingModel = new WebSetting();
|
|
|
|
$settingModel->edit(['anchor_num'=>10],['id'=>1,'anchor_num'=>3]);
|
|
|
|
}catch (\Exception $e){
|
|
|
|
DB::disconnect('custom_mysql');
|
|
|
|
$aiBlogModel = new AiBlog();
|
|
|
|
$aiLists = $aiBlogModel->list(['status'=>2],'id',['id','seo_description']);
|
|
|
|
if(!empty($aiLists)){
|
|
|
|
foreach ($aiLists as $item){
|
|
|
|
if(!empty($item['seo_description'])){
|
|
|
|
//查看当前是否包含句号。
|
|
|
|
$result = $this->hasAnyPeriod($item['seo_description']);
|
|
|
|
if($result === false){
|
|
|
|
$text = $this->trimToLastFullWord($item['seo_description']);
|
|
|
|
}else{
|
|
|
|
$arr = explode('.',$item['seo_description']);
|
|
|
|
$text = $arr[0].'.';
|
|
|
|
}
|
|
|
|
$aiBlogModel->edit(['seo_description'=>$text],['id'=>$item['id']]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
DB::disconnect('custom_mysql');
|
|
|
|
echo date('Y-m-d H:i:s') . '结束--项目的id:'. $val['id'] . PHP_EOL;
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function trimToLastFullWord($text) {
|
|
|
|
// 去掉结尾非字母数字字符
|
|
|
|
$text = rtrim($text);
|
|
|
|
// 如果最后一个单词被截断,就删除它
|
|
|
|
if (preg_match('/^(.*?\b)\w*$/', $text, $matches)) {
|
|
|
|
return $matches[1];
|
|
|
|
}
|
|
|
|
return trim($text); // fallback
|
|
|
|
}
|
|
|
|
|
|
|
|
public function hasAnyPeriod($text) {
|
|
|
|
return strpos($text, '.') !== false || mb_strpos($text, '。') !== false;
|
|
|
|
}
|
|
|
|
} |
...
|
...
|
|