管理员相关

判断是否是超管

is_admin();

判断是否是管理员

is_admin_login();

管理员权限

添加权限:

url参数存在时,在后台会多出一个菜单,名称为 合同,30是排序数字,越大越在顶部显示。

add_admin_access('合同.scrm',[
      '查看.view',
      '编辑.edit',
      '管理.admin',
      'url'=>'scrm/contract/index'
],30);

判断权限

if(!admin_access('contract.view')){
  return json_error(['msg'=>'权限不够']);
}

判断运营人员可访问管理员接口

管理员权限同步给运营

//管理员权限赋给运营人员
admin_access_to_yunyin([
    'replenish', 
]);
//权限判断 
add_admin_access('缺货补货.replenish',[ 
    '查看.view',  
    '编辑.edit',
    '管理.admin',  
    'url'=>'selling_machine/replenish'
],100); 
//控制器
if(!admin_access('replenish.admin')){
     throw new \Exception("权限不够", 403); 
}

部分演示页面

管理员

点击编辑效果

点击权限效果:

选择操作权限用户就会有对应的权限,查看权限决定后台菜单是否显示,未配置菜单url菜单的情况下,无论选择 查看 编辑 管理权限都不会在菜单显示,但权限依然会有效果。

点击安全登录:

安全登录使用的是Google Authenticator安全码方式登录,这将使用后台更加安全。

在扫码后点击保存,退出后再登录。

登录页面

/admin/login

安全码此时就会判断是否正确,如果没有配置帐号对应的安全登录将无需输入安全码。

门店

依赖 a_shop_store

登录网址 /a_shop_store/login

权限

add_store_access('收银.pos_order',[ 
    '查看.view',  
    '编辑.edit',
    '管理.admin',  
    'url'=>'webpos/home'
],1);
add_action("controller.base",function(){
    if(get_webpos_type() == 'shop'){
        add_store_access('收银.pos_order',[ 
            '查看.view',  
            '编辑.edit',
            '管理.admin',  
            'url'=>'webpos/home'
        ],1);
    } else {
        add_admin_access('收银.pos_order',[ 
            '查看.view',  
            '编辑.edit',
            '管理.admin',  
            'url'=>'webpos/home'
        ],40);
    }
});

控制器

namespace app\webpos\controller;

use app\AdminWithController;  
use hg\apidoc\annotation as Apidoc;  
/**
* @Apidoc\Title("API pos订单")
*/
class Order extends AdminWithController
{   
    public function index(){
         if(!$this->admin_access('pos_order.view')){
             return json_error(['msg'=>'权限不够']);
         }
    }
}