UpdateMainHtml.php 4.8 KB
<?php
/**
 * @remark :
 * @name   :UpdateRoute.php
 * @author :lyh
 * @method :post
 * @time   :2023/11/20 15:07
 */

namespace App\Console\Commands;

use App\Models\Blog\Blog;
use App\Models\Blog\BlogCategory;
use App\Models\CustomModule\CustomModule;
use App\Models\CustomModule\CustomModuleCategory;
use App\Models\CustomModule\CustomModuleContent;
use App\Models\News\News;
use App\Models\News\NewsCategory;
use App\Models\Product\Category;
use App\Models\Product\Keyword;
use App\Models\Product\Product;
use App\Models\Project\Project;
use App\Models\RouteMap\RouteMap;
use App\Models\Template\BTemplate;
use App\Models\Template\BTemplateMain;
use App\Services\ProjectServer;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;

/**
 * @remark :更新所有项目的路由
 * @name   :UpdateRoute
 * @author :lyh
 * @method :post
 * @time   :2023/11/20 15:08
 */
class UpdateMainHtml extends Command
{
    /**
     * The name and signature of the console command.
     *
     * @var string
     */
    protected $signature = 'update_main';

    /**
     * The console command description.
     *
     * @var string
     */
    protected $description = '生成视频模块';

    /**
     * @remark :统一更新路由
     * @name   :handle
     * @author :lyh
     * @method :post
     * @time   :2023/11/20 15:13
     */
    public function handle(){
        $projectModel = new Project();
        $list = $projectModel->list(['is_upgrade'=>0,'type'=>['!=',0]]);
        foreach ($list as $v){
            echo date('Y-m-d H:i:s') . 'project_id:'.$v['id'] . PHP_EOL;
            ProjectServer::useProject($v['id']);
            $this->getVideoModule($v['id']);
            DB::disconnect('custom_mysql');
        }
        echo date('Y-m-d H:i:s') . 'end' . PHP_EOL;
    }

    /**
     * @remark :查看项目是否有video模块
     * @name   :getVideoModule
     * @author :lyh
     * @method :post
     * @time   :2024/1/29 11:29
     */
    public function getVideoModule($project_id){
        $customModel = new CustomModule();
        $info = $customModel->read(['name'=>'视频模块']);
        if($info === false){
            echo date('Y-m-d H:i:s') . '添加,项目id:'.$project_id . PHP_EOL;
            //执行添加
            $data = [
                'name'=>'视频模块',
                'project_id'=>$project_id,
                'route'=>'video',
            ];
            $customModel->add($data);
        }
        return true;
    }

    /**
     * @remark :所有博客数据添加到自定义模块
     * @name   :setBlogCustom
     * @author :lyh
     * @method :post
     * @time   :2024/1/5 10:21
     */
    public function setBlogCustom(){
        $data = [];
        $blogCategoryModel = new BlogCategory();
        $list = $blogCategoryModel->list(['status'=>0]);
        foreach ($list as $v){
            echo date('Y-m-d H:i:s') . '博客分类id:'.$v['id'] . PHP_EOL;
            $data[] = [
                'name'=>$v['name'],
                'route'=>$v['alias'],
                'project_id'=>223,
                'operator_id'=>569,
                'seo_title'=>$v['seo_title'],
                'seo_keywords'=>$v['seo_keywords'],
                'seo_description'=>$v['seo_des'],
                'created_at'=>$v['created_at'],
                'updated_at'=>$v['updated_at'],
                'module_id'=>7
            ];
        }
        $cate = new CustomModuleCategory();
        $cate->insert($data);
    }

    /**
     * @remark :所有博客数据添加到自定义模块
     * @name   :setBlogCustom
     * @author :lyh
     * @method :post
     * @time   :2024/1/5 10:21
     */
    public function setBlogCustomContent(){
        $data = [];
        $blogModel = new Blog();
        $list = $blogModel->list(['status'=>1]);
        foreach ($list as $v){
            echo date('Y-m-d H:i:s') . '博客分类id:'.$v['id'] . PHP_EOL;
            $data[] = [
                'name'=>$v['name'],
                'content'=>$v['text'],
                'remark'=>$v['remark'],
                'route'=>$v['url'],
                'image'=>$v['image'],
                'project_id'=>223,
                'operator_id'=>569,
                'seo_title'=>$v['seo_title'],
                'seo_keywords'=>$v['seo_keywords'],
                'seo_description'=>$v['seo_description'],
                'created_at'=>$v['created_at'],
                'updated_at'=>$v['updated_at'],
                'module_id'=>7,
                'category_id'=>$v['category_id']
            ];
        }
        $content = new CustomModuleContent();
        $content->insert($data);
        return true;
    }

    public function editRoute(){
        $routeMap = new RouteMap();
        $routeMap->edit(['source'=>RouteMap::SOURCE_MODULE,'blog'=>''],['source'=>'blog']);
        $routeMap->edit(['source'=>RouteMap::SOURCE_MODULE_CATE,'blog'=>''],['source'=>'blog_category']);
        return true;
    }
}