作者 lyh

gx

... ... @@ -60,9 +60,20 @@ class RouteMap extends Base
}
$i=1;
$sign = generateRoute($title);
$route = $sign;
while(self::isExist($route, $source, $source_id, $project_id)){
$route = $sign .'-'.$i;
$info = self::where(['project_id' => $project_id, 'source' => $source, 'source_id'=>$source_id])->first();
if($info === false){
if($source == self::SOURCE_PRODUCT_KEYWORD){
$suffix = '-tag';
}
if($source == self::SOURCE_PRODUCT){
$suffix = '-product';
}
}else{
$suffix = '';
}
$route = $sign.$suffix;
while(self::isExist($route, $source_id, $project_id)){
$route = $sign .'-'.$i.$suffix;
$i++;
}
return $route;
... ... @@ -78,14 +89,13 @@ class RouteMap extends Base
* @author zbj
* @date 2023/4/17
*/
protected static function isExist($route, $source, $source_id, $project_id){
protected static function isExist($route, $source_id, $project_id){
$fixed = ['search','api']; //固定的路由
if(in_array($route, $fixed)){
return true;
}
$where = [
'project_id' => $project_id,
'route' => $route,
'project_id' => $project_id, 'route' => $route,
];
$route = self::where($where)->first();
if($route){
... ... @@ -119,13 +129,6 @@ class RouteMap extends Base
$route_map->source = $source;
$route_map->source_id = $source_id;
$route_map->project_id = $project_id;
if ($source == self::SOURCE_PRODUCT_KEYWORD){
$route = self::setKeywordRoute($route);
//查看当前路由是否存在
}elseif ($source == self::SOURCE_PRODUCT){
//产品单独处理路由
$route = self::setProductRoute($route);
}
}
if($source == self::SOURCE_NEWS){
$route_map->path = self::SOURCE_NEWS;
... ... @@ -141,43 +144,43 @@ class RouteMap extends Base
}
/**
* @remark :产品新增单独处理路由
* @name :setProductRoute
* @author :lyh
* @method :post
* @time :2023/11/21 18:48
*/
public static function setProductRoute($route,$i = 0){
$routes = $route.'-'.$i.'-product';
$routeMapModel = new RouteMap();
$routeInfo = $routeMapModel->read(['route'=>$routes]);
if($routeInfo === false){
return $routes;
}else{
$i = $i + 1;
return self::setProductRoute($route,$i);
}
}
/**
* @remark :关键字新增单独处理路由
* @name :setProductRoute
* @author :lyh
* @method :post
* @time :2023/11/21 18:48
*/
public static function setKeywordRoute($route,$i = 0){
$routes = $route.'-'.$i.'-tag';
$routeMapModel = new RouteMap();
$routeInfo = $routeMapModel->read(['route'=>$routes]);
if($routeInfo === false){
return $routes;
}else{
$i = $i + 1;
return self::setProductRoute($route,$i);
}
}
// /**
// * @remark :产品新增单独处理路由
// * @name :setProductRoute
// * @author :lyh
// * @method :post
// * @time :2023/11/21 18:48
// */
// public static function setProductRoute($route,$i = 0){
// $routes = $route.'-'.$i.'-product';
// $routeMapModel = new RouteMap();
// $routeInfo = $routeMapModel->read(['route'=>$routes]);
// if($routeInfo === false){
// return $routes;
// }else{
// $i = $i + 1;
// return self::setProductRoute($route,$i);
// }
// }
//
// /**
// * @remark :关键字新增单独处理路由
// * @name :setProductRoute
// * @author :lyh
// * @method :post
// * @time :2023/11/21 18:48
// */
// public static function setKeywordRoute($route,$i = 0){
// $routes = $route.'-'.$i.'-tag';
// $routeMapModel = new RouteMap();
// $routeInfo = $routeMapModel->read(['route'=>$routes]);
// if($routeInfo === false){
// return $routes;
// }else{
// $i = $i + 1;
// return self::setKeywordRoute($route,$i);
// }
// }
/**
* @param $route
... ...