update:修改can方法
This commit is contained in:
parent
3a0c537ce0
commit
e232062ba6
@ -4,6 +4,7 @@ namespace catchAdmin\permissions\model;
|
|||||||
use catchAdmin\permissions\model\search\UserSearch;
|
use catchAdmin\permissions\model\search\UserSearch;
|
||||||
use catcher\base\CatchModel;
|
use catcher\base\CatchModel;
|
||||||
use catcher\exceptions\FailedException;
|
use catcher\exceptions\FailedException;
|
||||||
|
use catcher\Utils;
|
||||||
|
|
||||||
class Users extends CatchModel
|
class Users extends CatchModel
|
||||||
{
|
{
|
||||||
@ -94,21 +95,16 @@ class Users extends CatchModel
|
|||||||
*
|
*
|
||||||
* 用法 request()->user()->can('permission@create');
|
* 用法 request()->user()->can('permission@create');
|
||||||
*/
|
*/
|
||||||
public function can($permission_mark = '')
|
public function can($permission_mark)
|
||||||
{
|
{
|
||||||
// 超级管理员直接返回true
|
// 超级管理员直接返回true
|
||||||
if (Utils::isSuperAdmin()){
|
if (Utils::isSuperAdmin()){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
// 查询当前用户的权限
|
// 查询当前用户的权限
|
||||||
$permissionIds = $this->getPermissionsBy();
|
return in_array(
|
||||||
|
Permissions::where('permission_mark',$permission_mark)->value('id') ? : 0,
|
||||||
// 根据mark找对应的id
|
$this->getPermissionsBy()
|
||||||
$current = Permissions::where('permission_mark',$permission_mark)->find();
|
);
|
||||||
if (!$current){
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
// in_array 判断是否包含
|
|
||||||
return in_array($current['id'],$permissionIds);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user