public function configMenu() { $menu = array(array('name' => '主表盘', 'url' => '#', 'active' => '', 'icon' => 'icon-user', 'submenu' => array(array('subname' => '主表盘', 'url' => Url::toRoute('datacenter/index', true), 'active' => ''))), array('name' => '普通用户管理', 'url' => '#', 'active' => '', 'icon' => 'icon-user', 'submenu' => array(array('subname' => '用户列表', 'url' => Url::toRoute('manage/user', true), 'active' => ''), array('subname' => '用户分组', 'url' => Url::toRoute('manage/group', true), 'active' => ''), array('subname' => '模块管理', 'url' => Url::toRoute('manage/module', true), 'active' => ''))), array('name' => '管理员用户管理', 'url' => '#', 'active' => '', 'icon' => 'icon-user', 'submenu' => array(array('subname' => '管理员列表', 'url' => Url::toRoute('adminmanage/user', true), 'active' => ''), array('subname' => '管理员分组', 'url' => Url::toRoute('adminmanage/group', true), 'active' => ''), array('subname' => '后台模块管理', 'url' => Url::toRoute('adminmanage/module', true), 'active' => ''))), array('name' => '分类管理中心', 'url' => '#', 'active' => '', 'icon' => 'icon-sitemap', 'submenu' => array(array('subname' => '分类管理', 'url' => Url::toRoute('category/index', true), 'active' => ''), array('subname' => '属性管理', 'url' => Url::toRoute('attribute/index', true), 'active' => ''))), array('name' => '瞄师傅管理中心', 'url' => '#', 'active' => '', 'icon' => 'icon-list-alt', 'submenu' => array(array('subname' => '商家信息', 'url' => Url::toRoute('store/index', true), 'active' => ''), array('subname' => '产品管理', 'url' => Url::toRoute('product/index', true), 'active' => ''), array('subname' => '意见反馈', 'url' => Url::toRoute('feedback/index', true), 'active' => ''))), array('name' => '财务信息', 'url' => '#', 'active' => '', 'icon' => 'icon-list-alt', 'submenu' => array(array('subname' => '模型点击', 'url' => Url::toRoute('finace/modenclick', true), 'active' => ''), array('subname' => '消费统计', 'url' => Url::toRoute('finace/consume', true), 'active' => ''), array('subname' => '优惠券管理', 'url' => Url::toRoute('finace/coupon', true), 'active' => ''))), array('name' => '设置', 'url' => '#', 'active' => '', 'icon' => 'icon-list-alt', 'submenu' => array(array('subname' => '缓存设置', 'url' => Url::toRoute('setting/cache', true), 'active' => ''), array('subname' => '操作日志', 'url' => Url::toRoute('setting/record', true), 'active' => '')))); $tempMenu = []; $uid = \Yii::$app->user->Id; if ($uid == 1) { return $menu; } foreach ($menu as $key => $item) { $subTemp = []; if ($item['url'] == '#') { foreach ($item['submenu'] as $submenu) { $url = parse_url($submenu['url']); $url = 'app-backend/#' . $url['path']; $privilege = new MaccessControl(); $res = $privilege->checkPrivilege($uid, $url); if ($res) { $subTemp['submenu'][] = $submenu; } } } if ($subTemp) { $tempMenu[$key] = $item; $tempMenu[$key]['submenu'] = $subTemp['submenu']; } } $tempMenu[0] = $menu[0]; ksort($tempMenu); // var_dump($tempMenu); // exit; return $tempMenu; }
public static function checkIdentity($action, $url) { $request = \Yii::$app->request; $identity = $request->_get('identity', ''); if (!$identity) { return ['code' => 1, 'msg' => '认证信息缺失', 'data' => []]; } $identityData = explode(',', EasyHelpers::dataDecrypt($identity)); $Iaction = $identityData[0]; $userId = intval($identityData[1]); if ($Iaction != $action || $userId < 1) { return ['code' => 1, 'msg' => '您没有操作权限', 'data' => []]; } if ($userId === 1) { return $userId; } $maccess = new MaccessControl(); if (!$maccess->checkPrivilege($userId, $url)) { return ['code' => 1, 'msg' => '您没有操作权限', 'data' => []]; } return $userId; }
/** * @inheritdoc */ public function behaviors() { return ['access' => ['class' => MaccessControl::className(), 'rules' => [['actions' => [], 'allow' => true, 'roles' => ['@']]]]]; }