作者 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,28 @@ class UpdateRoute extends Command @@ -65,12 +77,28 @@ 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'; 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';
71 $productModel->edit(['route'=>$route],['id'=>$v['id']]); 84 $productModel->edit(['route'=>$route],['id'=>$v['id']]);
72 - $this->param['route'] = RouteMap::setRoute($this->param['route'], RouteMap::SOURCE_PRODUCT, $v['id'], $project_id); 85 + RouteMap::setRoute($route, RouteMap::SOURCE_PRODUCT, $v['id'], $project_id);
73 } 86 }
  87 + return true;
  88 + }
  89 +
  90 + /**
  91 + * @remark :设置路由
  92 + * @name :setRoute
  93 + * @author :lyh
  94 + * @method :post
  95 + * @time :2023/11/20 15:30
  96 + */
  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);
74 } 102 }
75 return true; 103 return true;
76 } 104 }
@@ -82,14 +110,61 @@ class UpdateRoute extends Command @@ -82,14 +110,61 @@ class UpdateRoute extends Command
82 * @method :post 110 * @method :post
83 * @time :2023/11/20 15:30 111 * @time :2023/11/20 15:30
84 */ 112 */
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); 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,6 +109,14 @@ class RouteMap extends Base @@ -109,6 +109,14 @@ 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_PRODUCT_KEYWORD){
  113 + $route = $route.'-tag';
  114 + }elseif ($source == self::SOURCE_PRODUCT){
  115 + $route = $route.'-product';
  116 + }
  117 + $route_map->source_id = $source_id;
  118 + $route_map->project_id = $project_id;
  119 + }
112 if($source == self::SOURCE_NEWS){ 120 if($source == self::SOURCE_NEWS){
113 $route_map->path = self::SOURCE_NEWS; 121 $route_map->path = self::SOURCE_NEWS;
114 }elseif($source == self::SOURCE_NEWS_CATE){ 122 }elseif($source == self::SOURCE_NEWS_CATE){
@@ -117,13 +125,6 @@ class RouteMap extends Base @@ -117,13 +125,6 @@ class RouteMap extends Base
117 $route_map->path = self::SOURCE_BLOG; 125 $route_map->path = self::SOURCE_BLOG;
118 }elseif ($source == self::SOURCE_BLOG_CATE){ 126 }elseif ($source == self::SOURCE_BLOG_CATE){
119 $route_map->path = self::PATH_BLOG_CATE; 127 $route_map->path = self::PATH_BLOG_CATE;
120 - }elseif ($source == self::SOURCE_PRODUCT_KEYWORD){  
121 - $route = $route.'-tag';  
122 - }elseif ($source == self::SOURCE_PRODUCT){  
123 - $route = $route.'-product';  
124 - }  
125 - $route_map->source_id = $source_id;  
126 - $route_map->project_id = $project_id;  
127 } 128 }
128 $route_map->route = $route; 129 $route_map->route = $route;
129 $route_map->save(); 130 $route_map->save();