mirror of
https://gitee.com/ulthon/ulthon_admin.git
synced 2026-07-07 10:32:48 +08:00
新增手机端浏览模式
This commit is contained in:
@@ -3,8 +3,10 @@
|
||||
namespace base\admin\controller;
|
||||
|
||||
use app\admin\model\SystemAdmin;
|
||||
use app\admin\model\SystemMenu;
|
||||
use app\admin\model\SystemQuick;
|
||||
use app\common\controller\AdminController;
|
||||
use app\common\service\MenuService;
|
||||
|
||||
class IndexBase extends AdminController
|
||||
{
|
||||
@@ -116,4 +118,39 @@ class IndexBase extends AdminController
|
||||
|
||||
return $this->fetch();
|
||||
}
|
||||
|
||||
public function mobile()
|
||||
{
|
||||
$pid = $this->request->param('pid', 0);
|
||||
|
||||
$menuService = new MenuService(session('admin.id'));
|
||||
|
||||
$home_info = $menuService->getHomeInfo();
|
||||
|
||||
$list_menu = SystemMenu::with(['children' => function ($query) {
|
||||
$query->order('sort', 'desc')->order('id', 'asc');
|
||||
}])->where('pid', $pid)->order([
|
||||
'sort' => 'desc',
|
||||
'id' => 'asc',
|
||||
])
|
||||
->where('status', 1)
|
||||
->select();
|
||||
|
||||
$list_menu_pid = SystemMenu::group('pid')->column('pid');
|
||||
|
||||
foreach ($list_menu as $model_menu) {
|
||||
foreach ($model_menu->children as $model_child) {
|
||||
if (in_array($model_child->id, $list_menu_pid)) {
|
||||
$model_child->href = __url('mobile', ['pid' => $model_child->pid]);
|
||||
} else {
|
||||
$model_child->href = __url($model_child->href);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$this->assign('home_info', $home_info);
|
||||
$this->assign('list_menu', $list_menu);
|
||||
|
||||
return $this->fetch();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace base\admin\model;
|
||||
|
||||
use app\admin\model\SystemMenu;
|
||||
use app\common\constants\MenuConstant;
|
||||
use app\common\model\TimeModel;
|
||||
|
||||
@@ -9,6 +10,11 @@ class SystemMenuBase extends TimeModel
|
||||
{
|
||||
protected $deleteTime = 'delete_time';
|
||||
|
||||
public function children()
|
||||
{
|
||||
return $this->hasMany(SystemMenu::class, 'pid', 'id');
|
||||
}
|
||||
|
||||
public function getPidMenuList()
|
||||
{
|
||||
$list = $this->field('id,pid,title')
|
||||
|
||||
@@ -30,4 +30,5 @@
|
||||
<script src="__STATIC__/plugs/jq-module/city-picker/js/city-picker.data.min.js"></script>
|
||||
<script src="__STATIC__/plugs/jq-module/city-picker/js/city-picker.min.js"></script>
|
||||
<script src="__STATIC__/plugs/clipboard.js/clipboard.min.js"></script>
|
||||
<script src="__STATIC__/plugs/ulthon-admin/table.js"></script>
|
||||
<script src="__STATIC__/plugs/ulthon-admin/ulthon-admin.js"></script>
|
||||
31
extend/base/admin/view/index/mobile.html
Normal file
31
extend/base/admin/view/index/mobile.html
Normal file
@@ -0,0 +1,31 @@
|
||||
|
||||
|
||||
<div class="ul-section ul-padding-md">
|
||||
<div class="ul-group-title">基本</div>
|
||||
<div class="ul-nav-grid colord box">
|
||||
<a href="{:__url('admin/index/welcome')}" class="item">
|
||||
<div class="icon">
|
||||
<div class="main"><i class="{$home_info.icon}"></i></div>
|
||||
</div>
|
||||
<div class="title">{$home_info.title}</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{volist name='list_menu' id='vo'}
|
||||
{notempty name='vo.children'}
|
||||
<div class="ul-section ul-padding-md">
|
||||
<div class="ul-group-title">{$vo.title}</div>
|
||||
<div class="ul-nav-grid colord box">
|
||||
{volist name='vo.children' id='vovo'}
|
||||
<a href="{$vovo.href}" class="item">
|
||||
<div class="icon">
|
||||
<div class="main"><i class="{$vovo.icon}"></i></div>
|
||||
</div>
|
||||
<div class="title">{$vovo.title}</div>
|
||||
</a>
|
||||
{/volist}
|
||||
</div>
|
||||
</div>
|
||||
{/notempty}
|
||||
{/volist}
|
||||
0
extend/base/admin/view/index/mobile.js
Normal file
0
extend/base/admin/view/index/mobile.js
Normal file
@@ -30,6 +30,38 @@
|
||||
</head>
|
||||
|
||||
<body>
|
||||
{if $Request.isMobile }
|
||||
<link rel="stylesheet" href="//layui.ulthon.com/cdn/layui-ul.css">
|
||||
<div class="ul-section">
|
||||
<div class="ul-header">
|
||||
<div class="ul-header-main" style="max-width: 600px;">
|
||||
<div class="ul-header-left">
|
||||
<a href="{:__url('admin/index/mobile')}" class="">
|
||||
<img class="ul-header-logo" src="{$logo_info.image}" alt="">
|
||||
</a>
|
||||
</div>
|
||||
{notempty name='session_admin'}
|
||||
<div class="ul-header-right">
|
||||
<div class="ul-header-user">
|
||||
<div class="ul-header-user-avatar" style="background-image: url('{$session_admin.head_img}');">
|
||||
</div>
|
||||
<div class="ul-header-user-info">
|
||||
<div class="ul-header-user-name">
|
||||
{$session_admin.username}
|
||||
</div>
|
||||
<div class="ul-header-user-options">
|
||||
<i class="ul-icon-exit"></i>
|
||||
<span>退出</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/notempty}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
{__CONTENT__}
|
||||
<script style="display: none;" id="data-brage" type="text/plain">{$data_brage|raw|default='[]'}</script>
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user