From e232062ba68997a03b03d76e1ddb0724eed02686 Mon Sep 17 00:00:00 2001 From: JaguarJack Date: Sat, 25 Jul 2020 21:33:20 +0800 Subject: [PATCH] =?UTF-8?q?update:=E4=BF=AE=E6=94=B9can=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- catch/permissions/model/Users.php | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/catch/permissions/model/Users.php b/catch/permissions/model/Users.php index e66324f..060390b 100644 --- a/catch/permissions/model/Users.php +++ b/catch/permissions/model/Users.php @@ -4,6 +4,7 @@ namespace catchAdmin\permissions\model; use catchAdmin\permissions\model\search\UserSearch; use catcher\base\CatchModel; use catcher\exceptions\FailedException; +use catcher\Utils; class Users extends CatchModel { @@ -94,21 +95,16 @@ class Users extends CatchModel * * 用法 request()->user()->can('permission@create'); */ - public function can($permission_mark = '') + public function can($permission_mark) { // 超级管理员直接返回true if (Utils::isSuperAdmin()){ return true; } // 查询当前用户的权限 - $permissionIds = $this->getPermissionsBy(); - - // 根据mark找对应的id - $current = Permissions::where('permission_mark',$permission_mark)->find(); - if (!$current){ - return false; - } - // in_array 判断是否包含 - return in_array($current['id'],$permissionIds); + return in_array( + Permissions::where('permission_mark',$permission_mark)->value('id') ? : 0, + $this->getPermissionsBy() + ); } }