作者 赵彬吉
<?php
use App\Models\File\Image;
use App\Models\RouteMap\RouteMap;
use App\Services\CosService;
use App\Utils\EncryptUtils;
use App\Utils\LogUtils;
... ... @@ -560,3 +561,24 @@ function ends_with($string, $suffix)
{
return substr($string, -strlen($suffix)) === $suffix;
}
/**
* @remark :获取二级路由
* @name :getRouteMap
* @author :lyh
* @method :post
* @time :2023/11/10 14:29
*/
function getRouteMap($source,$source_id){
$route = '';
$routeMapModel = new RouteMap();
$info = $routeMapModel->read(['source'=>$source,'source_id'=>$source_id]);
if($info !== false){
if(!empty($info['path'])){
$route = $info['path'].'/'.$info['route'];
}else{
$route = $info['route'];
}
}
return $route;
}
... ...
... ... @@ -24,6 +24,9 @@ class ATemplateModuleController extends BaseController
* @time :2023/6/28 16:54
*/
public function lists(ATemplateModuleLogic $ATemplateModuleLogic){
if(!isset($this->map['test_model'])){
$this->map['test_model'] = 0;
}
$lists = $ATemplateModuleLogic->aTemplateModuleLists($this->map,$this->page,$this->row,$this->order);
$this->response('success',Code::SUCCESS,$lists);
}
... ...
... ... @@ -9,6 +9,7 @@ use App\Http\Controllers\Bside\BaseController;
use App\Http\Logic\Bside\User\UserLogic;
use App\Models\Project\DeployBuild;
use App\Models\Project\Project;
use App\Models\RouteMap\RouteMap;
use App\Models\User\ProjectMenu as ProjectMenuModel;
use App\Models\User\ProjectRole as ProjectRoleModel;
use App\Models\User\User;
... ... @@ -207,4 +208,36 @@ class ComController extends BaseController
$str = $common->encrypt($data);
$this->response('success',Code::SUCCESS,['str'=>$str]);
}
/**
* @remark :获取访问链接
* @name :getLink
* @author :lyh
* @method :post
* @time :2023/11/10 15:18
*/
public function getLink(){
$this->request->validate([
'type' => 'required',
], [
'type.required' => '类型不能为空',
]);
switch ($this->param['type']){
case 'news':
$url_link = $this->user['domain'].RouteMap::SOURCE_NEWS.'/';
break;
case 'news_category':
$url_link = $this->user['domain'].RouteMap::PATH_NEWS_CATE.'/';
break;
case 'blog':
$url_link = $this->user['domain'].RouteMap::SOURCE_BLOG.'/';
break;
case 'blog_category':
$url_link = $this->user['domain'].RouteMap::PATH_BLOG_CATE.'/';
break;
default:
$url_link = $this->user['domain'];
}
$this->response('success',Code::SUCCESS,['url'=>$url_link]);
}
}
... ...
... ... @@ -27,7 +27,7 @@ class BlogCategoryController extends BaseController
$blogModel = new BlogModel();
foreach ($lists as $k => $v){
$v['num'] = $blogModel->formatQuery(['category_id'=>['like','%,' . $v['id'] . ',%']])->count();
$v['url'] = $this->user['domain'] . $v['alias'].'/';
$v['url'] = $this->user['domain'] . getRouteMap(RouteMap::SOURCE_BLOG_CATE,$v['id']);
$lists[$k] = $v;
}
if(!isset($this->map['name'])){
... ... @@ -81,7 +81,6 @@ class BlogCategoryController extends BaseController
'id.required' => 'ID不能为空'
]);
$info = $blogCategoryLogic->info_blog_category();
$info['url'] = $this->user['domain'] . $info['alias'];
$this->response('success',Code::SUCCESS,$info);
}
... ...
... ... @@ -10,6 +10,7 @@ use App\Models\Blog\Blog as BlogModel;
use App\Models\Blog\BlogCategory;
use App\Models\Blog\BlogCategory as BlogCategoryModel;
use App\Models\Product\Category;
use App\Models\RouteMap\RouteMap;
use App\Models\User\User;
class BlogController extends BaseController
... ... @@ -35,7 +36,7 @@ class BlogController extends BaseController
$user = new User();
foreach ($lists['list'] as $k => $v){
$v['category_name'] = $this->categoryName($v['category_id'],$data);
$v['url'] = $this->user['domain'] .$v['url'].'/';
$v['url'] = $this->user['domain'] . getRouteMap(RouteMap::SOURCE_BLOG,$v['id']);
$v['image_link'] = getImageUrl($v['image']);
$v['operator_name'] = $user->getName($v['operator_id']);
$lists['list'][$k] = $v;
... ...
... ... @@ -27,7 +27,7 @@ class NewsCategoryController extends BaseController
$newsModel = new NewsModel();
foreach ($lists as $k => $v){
$v['num'] = $newsModel->formatQuery(['category_id'=>['like','%,' . $v['id'] . ',%']])->count();
$v['url'] = $this->user['domain'] . $v['alias'].'/';
$v['url'] = $this->user['domain'].getRouteMap(RouteMap::SOURCE_NEWS_CATE,$v['id']);
$lists[$k] = $v;
}
if(!isset($this->map['name'])){
... ...
... ... @@ -8,6 +8,7 @@ use App\Http\Logic\Bside\News\NewsLogic;
use App\Http\Requests\Bside\News\NewsRequest;
use App\Models\News\News as NewsModel;
use App\Models\News\NewsCategory;
use App\Models\RouteMap\RouteMap;
use App\Models\User\User;
... ... @@ -35,7 +36,7 @@ class NewsController extends BaseController
$user = new User();
foreach ($lists['list'] as $k => $v){
$v['category_name'] = $this->categoryName($v['category_id'],$data);
$v['url'] = $this->user['domain'] .$v['url'].'/';
$v['url'] = $this->user['domain'].getRouteMap(RouteMap::SOURCE_NEWS,$v['id']);
$v['image_link'] = getImageUrl($v['image']);
$v['operator_name'] = $user->getName($v['operator_id']);
$lists['list'][$k] = $v;
... ... @@ -44,6 +45,8 @@ class NewsController extends BaseController
$this->response('success',Code::SUCCESS,$lists);
}
/**
* @remark :处理列表返回参数
* @name :handleReturnParam
... ...
... ... @@ -22,6 +22,9 @@ class BTemplateModuleController extends BaseController
* @time :2023/6/29 11:33
*/
public function lists(BTemplateModuleLogic $BTemplateModuleLogic){
if(!isset($this->map['test_model'])){
$this->map['test_model'] = 0;
}
$list = $BTemplateModuleLogic->ModuleList($this->map,$this->order);
$this->response('success',Code::SUCCESS,$list);
}
... ...
... ... @@ -214,15 +214,15 @@ class DomainInfoLogic extends BaseLogic
}
//保存301跳转数据+其他域名
$data = [
'other_domain'=>json_encode($this->param['other_domain']),
'extend_config'=>json_encode($this->param['extend_config']),
'other_domain'=>json_encode($this->param['other_domain'] ?? []),
'extend_config'=>json_encode($this->param['extend_config'] ?? []),
'type'=>$this->param['type'],
'private_key' => $this->param['key'] ?? '',
'private_cert' => $this->param['cert'] ?? '',
];
$this->model->edit($data,['id'=>$this->param['id']]);
//生成证书
$this->setDomainSsl($server_info['init_domain'],$info['domain'],$this->param['extend_config'],$this->param['other_domain']);
$this->setDomainSsl($server_info['init_domain'],$info['domain'],$this->param['extend_config'] ?? [],$this->param['other_domain'] ?? []);
return $this->success();
}
... ...
... ... @@ -181,10 +181,6 @@ class CustomTemplateLogic extends BaseLogic
'route'=>$info['url'],
];
$this->setRouteDeleteSave($data);
//"字符串以\"-product\"结尾"
if (!ends_with($route, "-tag")) {
$route = $route."-tag";
}
}
return $route;
}
... ...
... ... @@ -215,10 +215,6 @@ class ProductLogic extends BaseLogic
'route'=>$route,
];
$this->setRouteDeleteSave($data);
//"字符串以\"-product\"结尾"
if (!ends_with($route, "-product")) {
$route = $route."-product";
}
}
return $route;
}
... ...
... ... @@ -16,6 +16,7 @@ Route::middleware(['bloginauth'])->group(function () {
//获取当前登录用户项目详情
Route::any('/get_project', [\App\Http\Controllers\Bside\BCom\ComController::class, 'get_project'])->name('get_project');
Route::any('/generateToken', [\App\Http\Controllers\Bside\BCom\ComController::class, 'generateToken'])->name('generateToken');
Route::any('/getLink', [\App\Http\Controllers\Bside\BCom\ComController::class, 'getLink'])->name('getLink');
//用户相关路由
Route::prefix('user')->group(function () {
Route::any('/', [\App\Http\Controllers\Bside\User\UserController::class, 'lists'])->name('user_lists');
... ...