コード例 #1
0
 public static function addOne($userId, $roleId)
 {
     $model = new UserAssignModel();
     $model->user_id = $userId;
     $model->role_id = $roleId;
     $model->time_create = Utils::getNow();
     return $model->save();
 }
コード例 #2
0
ファイル: JdbRbac.php プロジェクト: niceforbear/jdbrbac
 /**
  * 系统内部检测user_id是否可以请求当前资源节点
  *
  * @param mixed $userId 用户ID
  * @return string
  */
 public static function isAllowed($userId, $systemId = 0)
 {
     try {
         $userAssigns = UserAssignModel::getAllByUserId($userId);
         $roleIdsArray = array_column($userAssigns, UserAssignModel::COL_ROLE_ID);
         $roleAssigns = RoleAssignModel::getAllByRoleIdsArray($roleIdsArray);
         $permissionIdsArray = array_column($roleAssigns, RoleAssignModel::COL_PERMISSION_ID);
         $permissionAssigns = PermissionAssignModel::getAllByPermissionIdsArray($permissionIdsArray);
         $routeIdsArray = array_column($permissionAssigns, PermissionAssignModel::COL_ROUTE_ID);
         $rawRoutes = RouteModel::getAllByIdsArray($routeIdsArray);
         $routes = array_column($rawRoutes, RouteModel::COL_ROUTE);
         $currentRoute = self::getRequestRoute();
         if (in_array($currentRoute, $routes)) {
             return true;
         } else {
             return false;
         }
     } catch (JdbRbacException $e) {
         return Utils::handlerForException($e);
     }
 }
コード例 #3
0
 /**
  * 获得用户列表
  */
 public function actionGetUser()
 {
     try {
         $data = ['list' => UserModel::getAll(), 'columns' => UserModel::getColumns()];
         return Utils::responseOK($data);
     } catch (JdbRbacException $e) {
         return Utils::handlerForException($e);
     }
 }
コード例 #4
0
ファイル: UpdateRoute.php プロジェクト: niceforbear/jdbrbac
 public static function parser($name, $category)
 {
     if ($category == self::$actionKeyword) {
         $method = substr($name, 6);
         $newMethod = '';
         for ($i = 0; $i < strlen($method); $i++) {
             $ord = ord($method[$i]);
             if ($ord > 64 && $ord < 91) {
                 if ($i == 0) {
                     $newMethod .= '/' . strtolower($method[$i]);
                 } else {
                     $newMethod .= '-' . strtolower($method[$i]);
                 }
             } else {
                 $newMethod .= $method[$i];
             }
         }
         return $newMethod;
     } elseif ($category == self::$classKeyword) {
         $newClassName = '';
         for ($i = 0; $i < strlen($name); $i++) {
             $ord = ord($name[$i]);
             if ($ord > 64 && $ord < 91) {
                 if ($i == 0) {
                     $newClassName .= '/' . strtolower($name[$i]);
                 } else {
                     $newClassName .= '-' . strtolower($name[$i]);
                 }
             } else {
                 $newClassName .= $name[$i];
             }
         }
         return $newClassName;
     } else {
         Utils::dump('Wrong category. ');
         exit;
     }
 }