refactor: 系统其他urls回显
This commit is contained in:
@@ -158,7 +158,76 @@ class System
|
|||||||
[
|
[
|
||||||
'name' => '其他内页',
|
'name' => '其他内页',
|
||||||
'link_to' => 'system_page',
|
'link_to' => 'system_page',
|
||||||
'data' => [
|
'data' => $this->getSystemOtherPages()
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
return success('获取成功', $urls);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 获取文章分类数据
|
||||||
|
private function getArticleCategory($lang_id)
|
||||||
|
{
|
||||||
|
$data = ArticleCategoryModel::field([
|
||||||
|
'id',
|
||||||
|
'pid',
|
||||||
|
'name'
|
||||||
|
])
|
||||||
|
->language($lang_id)
|
||||||
|
->isShow(true)
|
||||||
|
->order(['sort' => 'asc', 'id' => 'desc'])
|
||||||
|
->select();
|
||||||
|
|
||||||
|
return $data->toArray();
|
||||||
|
}
|
||||||
|
// 获取产品分类数据
|
||||||
|
private function getProductCategory($lang_id)
|
||||||
|
{
|
||||||
|
$data = ProductCategoryModel::field([
|
||||||
|
'id',
|
||||||
|
'pid',
|
||||||
|
'name'
|
||||||
|
])
|
||||||
|
->language($lang_id)
|
||||||
|
->isShow(true)
|
||||||
|
->order(['sort' => 'asc', 'id' => 'desc'])
|
||||||
|
->select();
|
||||||
|
|
||||||
|
return $data->toArray();
|
||||||
|
}
|
||||||
|
// 根据文章分类获取文章
|
||||||
|
private function getArticleByCategory($lang_id, $category_id)
|
||||||
|
{
|
||||||
|
$data = ArticleModel::field([
|
||||||
|
'id',
|
||||||
|
'title' => 'name'
|
||||||
|
])
|
||||||
|
->language($lang_id)
|
||||||
|
->category($category_id)
|
||||||
|
->select();
|
||||||
|
|
||||||
|
return $data->toArray();
|
||||||
|
}
|
||||||
|
// 根据产品分类获取产品
|
||||||
|
private function getProductByCategory($lang_id, $category_id)
|
||||||
|
{
|
||||||
|
$data = ProductModel::field([
|
||||||
|
'id',
|
||||||
|
'name'
|
||||||
|
])
|
||||||
|
->language($lang_id)
|
||||||
|
->category($category_id)
|
||||||
|
->enabled()
|
||||||
|
->isShow(true)
|
||||||
|
->select();
|
||||||
|
|
||||||
|
return $data->toArray();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取系统其他内页
|
||||||
|
private function getSystemOtherPages()
|
||||||
|
{
|
||||||
|
return [
|
||||||
[
|
[
|
||||||
'id' => 1,
|
'id' => 1,
|
||||||
'name' => '首页',
|
'name' => '首页',
|
||||||
@@ -270,70 +339,7 @@ class System
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
|
||||||
]
|
|
||||||
];
|
];
|
||||||
|
|
||||||
return success('获取成功', $urls);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 获取文章分类数据
|
|
||||||
private function getArticleCategory($lang_id)
|
|
||||||
{
|
|
||||||
$data = ArticleCategoryModel::field([
|
|
||||||
'id',
|
|
||||||
'pid',
|
|
||||||
'name'
|
|
||||||
])
|
|
||||||
->language($lang_id)
|
|
||||||
->isShow(true)
|
|
||||||
->order(['sort' => 'asc', 'id' => 'desc'])
|
|
||||||
->select();
|
|
||||||
|
|
||||||
return $data->toArray();
|
|
||||||
}
|
|
||||||
// 获取产品分类数据
|
|
||||||
private function getProductCategory($lang_id)
|
|
||||||
{
|
|
||||||
$data = ProductCategoryModel::field([
|
|
||||||
'id',
|
|
||||||
'pid',
|
|
||||||
'name'
|
|
||||||
])
|
|
||||||
->language($lang_id)
|
|
||||||
->isShow(true)
|
|
||||||
->order(['sort' => 'asc', 'id' => 'desc'])
|
|
||||||
->select();
|
|
||||||
|
|
||||||
return $data->toArray();
|
|
||||||
}
|
|
||||||
// 根据文章分类获取文章
|
|
||||||
private function getArticleByCategory($lang_id, $category_id)
|
|
||||||
{
|
|
||||||
$data = ArticleModel::field([
|
|
||||||
'id',
|
|
||||||
'title' => 'name'
|
|
||||||
])
|
|
||||||
->language($lang_id)
|
|
||||||
->category($category_id)
|
|
||||||
->select();
|
|
||||||
|
|
||||||
return $data->toArray();
|
|
||||||
}
|
|
||||||
// 根据产品分类获取产品
|
|
||||||
private function getProductByCategory($lang_id, $category_id)
|
|
||||||
{
|
|
||||||
$data = ProductModel::field([
|
|
||||||
'id',
|
|
||||||
'name'
|
|
||||||
])
|
|
||||||
->language($lang_id)
|
|
||||||
->category($category_id)
|
|
||||||
->enabled()
|
|
||||||
->isShow(true)
|
|
||||||
->select();
|
|
||||||
|
|
||||||
return $data->toArray();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 根据系统页面url获取回显数据项
|
// 根据系统页面url获取回显数据项
|
||||||
@@ -351,21 +357,29 @@ class System
|
|||||||
parse_str($url, $params);
|
parse_str($url, $params);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (empty($params['id'])) return [];
|
|
||||||
|
|
||||||
switch ($link_to) {
|
switch ($link_to) {
|
||||||
case 'article_category':
|
case 'article_category':
|
||||||
|
if (empty($params['id'])) return [];
|
||||||
$data = ArticleCategoryModel::field(['id', 'name'])->bypk($params['id'])->find();
|
$data = ArticleCategoryModel::field(['id', 'name'])->bypk($params['id'])->find();
|
||||||
break;
|
break;
|
||||||
case 'article':
|
case 'article':
|
||||||
|
if (empty($params['id'])) return [];
|
||||||
$data = ArticleModel::field(['id', 'title' => 'name'])->bypk($params['id'])->find();
|
$data = ArticleModel::field(['id', 'title' => 'name'])->bypk($params['id'])->find();
|
||||||
break;
|
break;
|
||||||
case 'product_category':
|
case 'product_category':
|
||||||
|
if (empty($params['id'])) return [];
|
||||||
$data = ProductCategoryModel::field(['id', 'name'])->bypk($params['id'])->find();
|
$data = ProductCategoryModel::field(['id', 'name'])->bypk($params['id'])->find();
|
||||||
break;
|
break;
|
||||||
case 'product':
|
case 'product':
|
||||||
|
if (empty($params['id'])) return [];
|
||||||
$data = ProductModel::field(['id', 'name'])->bypk($params['id'])->find();
|
$data = ProductModel::field(['id', 'name'])->bypk($params['id'])->find();
|
||||||
break;
|
break;
|
||||||
|
case 'system_page':
|
||||||
|
$data = array_filter($this->getSystemOtherPages(), function($item) use ($params, $link) {
|
||||||
|
if (empty($params['id'])) return $item['url'] == $link;
|
||||||
|
return $item['id'] == $params['id'];
|
||||||
|
});
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return [];
|
return [];
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user