mirror of https://gitee.com/karson/fastadmin.git
70 lines
2.1 KiB
PHP
70 lines
2.1 KiB
PHP
<?php
|
|
/**
|
|
* @desc: 栏目模型
|
|
* @Author: Dr.Xing <ezfwork@foxmail.com>
|
|
* @Since: 2018/2/1 15:04
|
|
*/
|
|
|
|
namespace app\common\model;
|
|
|
|
use think\Model;
|
|
|
|
class Channel extends Model
|
|
{
|
|
protected $name = 'channel';
|
|
|
|
protected function base(&$query){
|
|
if(\think\Session::has("user_site_id")) {
|
|
$query->where(['status' => 'normal', 'site_id' =>\think\Session::get("user_site_id")]);
|
|
}else{
|
|
$query->where(['status'=>'normal', 'site_id'=>0]);
|
|
}
|
|
$query->order('weigh DESC, id DESC');
|
|
}
|
|
|
|
/**
|
|
* 生成菜单
|
|
* @param string $active 激活项
|
|
* @return array
|
|
*/
|
|
public static function getNav($active='index')
|
|
{
|
|
$list = self::all();
|
|
$result = [];
|
|
foreach ($list as $key => &$v)
|
|
{
|
|
if($v['pid']==0 ) {
|
|
$sub = [];
|
|
foreach($list as $sk => $sv){
|
|
if($sv['pid'] == $v['id']) {
|
|
$sub[] = [
|
|
'text' => $sv['name'],
|
|
'url' => $sv['type']=='redirect' ? $sv['redirect'] :
|
|
($sv['diyname']!=''?
|
|
url('index/channel/index', ['name'=>$sv['diyname']]) :
|
|
url('index/channel/index', ['id'=>$sv['id']])
|
|
),
|
|
'active' => false,
|
|
'child' => 0,
|
|
];
|
|
}
|
|
}
|
|
|
|
$result[] = [
|
|
'text' => $v['name'],
|
|
'url' => $v['type']=='redirect' ? $v['redirect'] :
|
|
($v['diyname']!=''?
|
|
url('index/channel/index', ['name'=>$v['diyname']]) :
|
|
url('index/channel/index', ['id'=>$v['id']])
|
|
) ,
|
|
'active' => false,
|
|
'child' => count($sub),
|
|
'sub' => $sub
|
|
];
|
|
}
|
|
}
|
|
|
|
return $result;
|
|
}
|
|
|
|
} |