Esempio n. 1
0
 /**
  * 角色/模块列表
  * 1.角色没有子节点没有父节点, 模块有子节点也有父节点
  *
  * @return ActiveDataProvider
  */
 public function roleList($hasChild = null)
 {
     $query = Auth_item::find();
     $query->andFilterWhere(['=', 'type', '1']);
     if (!is_null($hasChild)) {
         if ($hasChild == 1) {
             //角色
             $query->andFilterWhere(['not in', 'name', Auth_item_child::find()->select('child')]);
         } else {
             if ($hasChild == 0) {
                 //模块
                 $query->andFilterWhere(['in', 'name', Auth_item_child::find()->select('parent')]);
                 $query->andFilterWhere(['in', 'name', Auth_item_child::find()->select('child')]);
             }
         }
     }
     $dataProvider = new ActiveDataProvider(['query' => $query, 'pagination' => ['pageSize' => 8]]);
     return $dataProvider;
 }