コード例 #1
0
 public static function ifCurrentUserIsSpecificRole($role_name)
 {
     if (!$role_name) {
         return false;
     }
     $user = Yii::$app->user->identity;
     $user_id = $user['id'];
     $roles = AdminUserRole::find()->asArray()->where(['user_id' => $user_id])->all();
     $role_ids = [];
     if (!empty($roles)) {
         foreach ($roles as $role) {
             $role_ids[] = $role['role_id'];
         }
     }
     $user_role_names = [];
     $user_roles = AdminRole::find()->asArray()->where(['in', 'role_id', $role_ids])->all();
     if (!empty($user_roles)) {
         foreach ($user_roles as $one) {
             $user_role_names[] = $one['role_name'];
         }
     }
     if (in_array($role_name, $user_role_names)) {
         return true;
     }
     return false;
 }
コード例 #2
0
 public function initParam()
 {
     $val = $this->_param[$this->_paramKey];
     if ($val) {
         $this->_one = AdminRole::find()->where([$this->_paramKey => $val])->one();
     } else {
         $this->_one = new AdminRole();
     }
     //$obj 				= $this->_obj;
 }
コード例 #3
0
 public function getAllRoleIds()
 {
     $data = AdminRole::find()->asArray()->select(['role_id'])->all();
     $role_ids = [];
     if (!empty($data)) {
         foreach ($data as $d) {
             $role_ids[] = $d['role_id'];
         }
     }
     return $role_ids;
 }