Exemple #1
0
 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;
 }
Exemple #2
0
 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' => ['@']]]]];
 }