作者 lyh

gx

@@ -9,6 +9,12 @@ @@ -9,6 +9,12 @@
9 9
10 namespace App\Console\Commands; 10 namespace App\Console\Commands;
11 11
  12 +use App\Models\Blog\Blog;
  13 +use App\Models\Blog\BlogCategory;
  14 +use App\Models\News\News;
  15 +use App\Models\News\NewsCategory;
  16 +use App\Models\Product\Category;
  17 +use App\Models\Product\Keyword;
12 use App\Models\Product\Product; 18 use App\Models\Product\Product;
13 use App\Models\Project\Project; 19 use App\Models\Project\Project;
14 use App\Models\RouteMap\RouteMap; 20 use App\Models\RouteMap\RouteMap;
@@ -51,6 +57,12 @@ class UpdateRoute extends Command @@ -51,6 +57,12 @@ class UpdateRoute extends Command
51 $lists = $projectModel->list(['is_upgrade'=>0]); 57 $lists = $projectModel->list(['is_upgrade'=>0]);
52 foreach ($lists as $k => $v){ 58 foreach ($lists as $k => $v){
53 ProjectServer::useProject($v['id']); 59 ProjectServer::useProject($v['id']);
  60 + $this->setProductRoute($v['id']);
  61 + $this->setProductKeywordRoute($v['id']);
  62 + $this->setBlogRoute($v['id']);
  63 + $this->setNewsRoute($v['id']);
  64 + $this->setBlogCateRoute($v['id']);
  65 + $this->setNewsCateRoute($v['id']);
54 DB::disconnect('custom_mysql'); 66 DB::disconnect('custom_mysql');
55 } 67 }
56 } 68 }
@@ -65,12 +77,12 @@ class UpdateRoute extends Command @@ -65,12 +77,12 @@ class UpdateRoute extends Command
65 public function setProductRoute($project_id){ 77 public function setProductRoute($project_id){
66 $productModel = new Product(); 78 $productModel = new Product();
67 $productList = $productModel->list(['status'=>['!=',2]],'id',['id','route']); 79 $productList = $productModel->list(['status'=>['!=',2]],'id',['id','route']);
68 - foreach ($productList as $k => $v){  
69 - if(!ends_with($v['route'],'-product')){  
70 - $route = $v['route'].'-product';  
71 - $productModel->edit(['route'=>$route],['id'=>$v['id']]);  
72 - $this->param['route'] = RouteMap::setRoute($this->param['route'], RouteMap::SOURCE_PRODUCT, $v['id'], $project_id);  
73 - } 80 + foreach ($productList as $v){
  81 + $route = preg_replace('/-product.*/', '', $v['route']);
  82 + $route = RouteMap::setRoute($route, RouteMap::SOURCE_PRODUCT, $v['id'], $project_id);
  83 + $route = $route.'-product';
  84 + $productModel->edit(['route'=>$route],['id'=>$v['id']]);
  85 + RouteMap::setRoute($route, RouteMap::SOURCE_PRODUCT, $v['id'], $project_id);
74 } 86 }
75 return true; 87 return true;
76 } 88 }
@@ -82,14 +94,77 @@ class UpdateRoute extends Command @@ -82,14 +94,77 @@ class UpdateRoute extends Command
82 * @method :post 94 * @method :post
83 * @time :2023/11/20 15:30 95 * @time :2023/11/20 15:30
84 */ 96 */
85 - public function setProductCateRoute($project_id){  
86 - $productModel = new Product();  
87 - $productList = $productModel->list(['status'=>['!=',2]],'id',['id','route']);  
88 - foreach ($productList as $k => $v){  
89 - if(!ends_with($v['route'],'-product')){  
90 - $route = $v['route'].'-product';  
91 - $productModel->edit(['route'=>$route],['id'=>$v['id']]);  
92 - $this->param['route'] = RouteMap::setRoute($this->param['route'], RouteMap::SOURCE_PRODUCT, $v['id'], $project_id); 97 + public function setNewsRoute($project_id){
  98 + $newsModel = new News();
  99 + $newsList = $newsModel->list(['status'=>['!=',2]],'id',['id','url']);
  100 + foreach ($newsList as $v){
  101 + RouteMap::setRoute($v['url'], RouteMap::SOURCE_NEWS, $v['id'], $project_id);
  102 + }
  103 + return true;
  104 + }
  105 +
  106 + /**
  107 + * @remark :设置路由
  108 + * @name :setRoute
  109 + * @author :lyh
  110 + * @method :post
  111 + * @time :2023/11/20 15:30
  112 + */
  113 + public function setNewsCateRoute($project_id){
  114 + $newsCateModel = new NewsCategory();
  115 + $newsList = $newsCateModel->list([],'id',['id','alias']);
  116 + foreach ($newsList as $v){
  117 + RouteMap::setRoute($v['alias'], RouteMap::SOURCE_NEWS_CATE, $v['id'], $project_id);
  118 + }
  119 + return true;
  120 + }
  121 +
  122 + /**
  123 + * @remark :设置路由
  124 + * @name :setRoute
  125 + * @author :lyh
  126 + * @method :post
  127 + * @time :2023/11/20 15:30
  128 + */
  129 + public function setBlogRoute($project_id){
  130 + $blogModel = new Blog();
  131 + $blogList = $blogModel->list(['status'=>['!=',2]],'id',['id','url']);
  132 + foreach ($blogList as $v){
  133 + RouteMap::setRoute($v['url'], RouteMap::SOURCE_BLOG, $v['id'], $project_id);
  134 + }
  135 + return true;
  136 + }
  137 +
  138 + /**
  139 + * @remark :设置路由
  140 + * @name :setRoute
  141 + * @author :lyh
  142 + * @method :post
  143 + * @time :2023/11/20 15:30
  144 + */
  145 + public function setBlogCateRoute($project_id){
  146 + $blogCateModel = new BlogCategory();
  147 + $blogList = $blogCateModel->list([],'id',['id','alias']);
  148 + foreach ($blogList as $v){
  149 + RouteMap::setRoute($v['alias'], RouteMap::SOURCE_BLOG_CATE, $v['id'], $project_id);
  150 + }
  151 + return true;
  152 + }
  153 +
  154 + /**
  155 + * @remark :设置路由
  156 + * @name :setRoute
  157 + * @author :lyh
  158 + * @method :post
  159 + * @time :2023/11/20 15:30
  160 + */
  161 + public function setProductKeywordRoute($project_id){
  162 + $keywordModel = new Keyword();
  163 + $keywordList = $keywordModel->list([],'id',['id','route']);
  164 + foreach ($keywordList as $v){
  165 + if(!ends_with($v['route'],'-tag')){
  166 + $route = $v['route'].'-tag';
  167 + RouteMap::setRoute($route, RouteMap::SOURCE_BLOG_CATE, $v['id'], $project_id);
93 } 168 }
94 } 169 }
95 return true; 170 return true;
@@ -109,15 +109,7 @@ class RouteMap extends Base @@ -109,15 +109,7 @@ class RouteMap extends Base
109 if(!$route_map){ 109 if(!$route_map){
110 $route_map = new self(); 110 $route_map = new self();
111 $route_map->source = $source; 111 $route_map->source = $source;
112 - if($source == self::SOURCE_NEWS){  
113 - $route_map->path = self::SOURCE_NEWS;  
114 - }elseif($source == self::SOURCE_NEWS_CATE){  
115 - $route_map->path = self::PATH_NEWS_CATE;  
116 - }elseif ($source == self::SOURCE_BLOG){  
117 - $route_map->path = self::SOURCE_BLOG;  
118 - }elseif ($source == self::SOURCE_BLOG_CATE){  
119 - $route_map->path = self::PATH_BLOG_CATE;  
120 - }elseif ($source == self::SOURCE_PRODUCT_KEYWORD){ 112 + if ($source == self::SOURCE_PRODUCT_KEYWORD){
121 $route = $route.'-tag'; 113 $route = $route.'-tag';
122 }elseif ($source == self::SOURCE_PRODUCT){ 114 }elseif ($source == self::SOURCE_PRODUCT){
123 $route = $route.'-product'; 115 $route = $route.'-product';
@@ -125,6 +117,15 @@ class RouteMap extends Base @@ -125,6 +117,15 @@ class RouteMap extends Base
125 $route_map->source_id = $source_id; 117 $route_map->source_id = $source_id;
126 $route_map->project_id = $project_id; 118 $route_map->project_id = $project_id;
127 } 119 }
  120 + if($source == self::SOURCE_NEWS){
  121 + $route_map->path = self::SOURCE_NEWS;
  122 + }elseif($source == self::SOURCE_NEWS_CATE){
  123 + $route_map->path = self::PATH_NEWS_CATE;
  124 + }elseif ($source == self::SOURCE_BLOG){
  125 + $route_map->path = self::SOURCE_BLOG;
  126 + }elseif ($source == self::SOURCE_BLOG_CATE){
  127 + $route_map->path = self::PATH_BLOG_CATE;
  128 + }
128 $route_map->route = $route; 129 $route_map->route = $route;
129 $route_map->save(); 130 $route_map->save();
130 }catch (\Exception $e){ 131 }catch (\Exception $e){