|
...
|
...
|
@@ -54,157 +54,28 @@ class UpdateRoute extends Command |
|
|
|
*/
|
|
|
|
public function handle(){
|
|
|
|
$projectModel = new Project();
|
|
|
|
$lists = $projectModel->list(['is_upgrade'=>0,'id'=>['>',167],'type'=>['!=',0]]);
|
|
|
|
$lists = $projectModel->list(['is_upgrade'=>0,'type'=>['!=',0]]);
|
|
|
|
foreach ($lists as $k => $v){
|
|
|
|
echo date('Y-m-d H:i:s') . ' start: 项目id为' . $v['id'] . PHP_EOL;
|
|
|
|
ProjectServer::useProject($v['id']);
|
|
|
|
// $this->setProductRoute($v['id']);
|
|
|
|
$this->setProductKeywordRoute($v['id']);
|
|
|
|
// $this->setBlogRoute($v['id']);
|
|
|
|
// $this->setNewsRoute($v['id']);
|
|
|
|
// $this->setBlogCateRoute($v['id']);
|
|
|
|
// $this->setNewsCateRoute($v['id']);
|
|
|
|
$this->getProductKeyword($v['id']);
|
|
|
|
DB::disconnect('custom_mysql');
|
|
|
|
}
|
|
|
|
echo date('Y-m-d H:i:s') . ' end: 项目id为' . $v['id'] . PHP_EOL;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :设置路由
|
|
|
|
* @name :setRoute
|
|
|
|
* @remark :产品关键字
|
|
|
|
* @name :getProductKeyword
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/20 15:30
|
|
|
|
* @time :2023/12/8 11:13
|
|
|
|
*/
|
|
|
|
public function setProductRoute($project_id){
|
|
|
|
$productModel = new Product();
|
|
|
|
$productList = $productModel->list(['status'=>['!=',2]],'id',['id','route']);
|
|
|
|
foreach ($productList as $v){
|
|
|
|
$route = preg_replace('/-2-1-product.*/', '', $v['route']);
|
|
|
|
$route = preg_replace('/-1-1-product.*/', '', $route);
|
|
|
|
$route = preg_replace('/-2-product.*/', '', $route);
|
|
|
|
$route = preg_replace('/-1-product.*/', '', $route);
|
|
|
|
$route = preg_replace('/-product.*/', '', $route);
|
|
|
|
$i = 0;
|
|
|
|
$routes = $this->productRoute($route,$v['id'],$i);
|
|
|
|
$route = RouteMap::setRoute($routes, RouteMap::SOURCE_PRODUCT, $v['id'], $project_id);
|
|
|
|
echo date('Y-m-d H:i:s') . ' 路由表返回的route:' . $route . PHP_EOL;
|
|
|
|
$productModel->edit(['route'=>$route],['id'=>$v['id']]);
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :产品新增单独处理路由
|
|
|
|
* @name :setProductRoute
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/21 18:48
|
|
|
|
*/
|
|
|
|
public function productRoute($route,$id,$i){
|
|
|
|
echo date('Y-m-d H:i:s') . ' 打印$i:' . $i . PHP_EOL;
|
|
|
|
if($i == 0){
|
|
|
|
$routes = $route.'-product';
|
|
|
|
}else{
|
|
|
|
$routes = $route.'-'.$i.'-product';
|
|
|
|
}
|
|
|
|
$routeMapModel = new RouteMap();
|
|
|
|
$routeInfo = $routeMapModel->read(['route'=>$routes,'source'=>'product','source_id'=>['!=',$id]]);
|
|
|
|
if($routeInfo == false){
|
|
|
|
echo date('Y-m-d H:i:s') . ' route:' . $routes . PHP_EOL;
|
|
|
|
return $routes;
|
|
|
|
}else{
|
|
|
|
echo date('Y-m-d H:i:s') . ' 数据:' . $routeInfo['id'] . PHP_EOL;
|
|
|
|
$i = $i + 1;
|
|
|
|
return $this->productRoute($route,$id,$i);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :设置路由
|
|
|
|
* @name :setRoute
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/20 15:30
|
|
|
|
*/
|
|
|
|
public function setNewsRoute($project_id){
|
|
|
|
$newsModel = new News();
|
|
|
|
$newsList = $newsModel->list(['status'=>['!=',2]],'id',['id','url']);
|
|
|
|
foreach ($newsList as $v){
|
|
|
|
RouteMap::setRoute($v['url'], RouteMap::SOURCE_NEWS, $v['id'], $project_id);
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :设置路由
|
|
|
|
* @name :setRoute
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/20 15:30
|
|
|
|
*/
|
|
|
|
public function setNewsCateRoute($project_id){
|
|
|
|
$newsCateModel = new NewsCategory();
|
|
|
|
$newsList = $newsCateModel->list([],'id',['id','alias']);
|
|
|
|
foreach ($newsList as $v){
|
|
|
|
RouteMap::setRoute($v['alias'], RouteMap::SOURCE_NEWS_CATE, $v['id'], $project_id);
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :设置路由
|
|
|
|
* @name :setRoute
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/20 15:30
|
|
|
|
*/
|
|
|
|
public function setBlogRoute($project_id){
|
|
|
|
$blogModel = new Blog();
|
|
|
|
$blogList = $blogModel->list(['status'=>['!=',2]],'id',['id','url']);
|
|
|
|
foreach ($blogList as $v){
|
|
|
|
RouteMap::setRoute($v['url'], RouteMap::SOURCE_BLOG, $v['id'], $project_id);
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :设置路由
|
|
|
|
* @name :setRoute
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/20 15:30
|
|
|
|
*/
|
|
|
|
public function setBlogCateRoute($project_id){
|
|
|
|
$blogCateModel = new BlogCategory();
|
|
|
|
$blogList = $blogCateModel->list([],'id',['id','alias']);
|
|
|
|
foreach ($blogList as $v){
|
|
|
|
RouteMap::setRoute($v['alias'], RouteMap::SOURCE_BLOG_CATE, $v['id'], $project_id);
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @remark :设置路由
|
|
|
|
* @name :setRoute
|
|
|
|
* @author :lyh
|
|
|
|
* @method :post
|
|
|
|
* @time :2023/11/20 15:30
|
|
|
|
*/
|
|
|
|
public function setProductKeywordRoute($project_id){
|
|
|
|
public function getProductKeyword($id){
|
|
|
|
$keywordModel = new Keyword();
|
|
|
|
$keywordList = $keywordModel->list([],'id',['id','route']);
|
|
|
|
if(!empty($keywordList)){
|
|
|
|
foreach ($keywordList as $v){
|
|
|
|
// if(!ends_with($v['route'],'-tag')){
|
|
|
|
// $route = $v['route'].'-tag';
|
|
|
|
// $keywordModel->edit(['route'=>$route],['id'=>$v['id']]);
|
|
|
|
// }
|
|
|
|
$routeMapModel = new RouteMap();
|
|
|
|
$routeMapModel->edit(['route'=>$v['route']],['source_id'=>$v['id'],'source'=>RouteMap::SOURCE_PRODUCT_KEYWORD]);
|
|
|
|
RouteMap::setRoute($v['route'], RouteMap::SOURCE_PRODUCT_KEYWORD, $v['id'], $project_id);
|
|
|
|
}
|
|
|
|
$lists = $keywordModel->list(['route'=>['like','%-1-2-%']]);
|
|
|
|
if(!empty($lists)){
|
|
|
|
echo date('Y-m-d H:i:s') . ' 错误id:' . $id . PHP_EOL;
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
} |
...
|
...
|
|