版本更新记录
v1.0.1(2020年12月16)
完成AUTH后台相关权限的基本功能支持。
使用说明
SW-X的官方第三方系统,均为完整的独立程序。
版本迭代都只针对大版本做独立更新,例如:v1.2.x
只会有一个ApiTest v1.2
的官方版本。
下载源码
安装说明
1、部署源码前,需支持SwooleX v1.2.20
的运行环境。
2、需要开启Redis支持。
3、修改配置文件中的mysql
、redis
对应配置参数。
4、导入数据库.sql
文件。
5、后台的入口路由为:/admin
6、后台的初始账号、密码,均为:admin
关于本后台
该后台实现了基础的AUTH权限模块,并可以对应某个账号,单独再配置额外的权限菜单。
同时,可以给账号单独设置地区权限,适合使用在某些需要使用到地区权限判断的系统,例如招商加盟等地域权限的系统。
注意:该系统后台模板使用的Layui,若需要更换可自行修改。
路由权限判断
Admin
基类提供了一个vif()
方法,用于判断当前账号,是否拥有某个路由权限,并且控制器的实例,会通过$auth
变量名,传递到视图文件中。
下面我们来看下视图中判断权限按钮的例子:
{if ($auth->vif('/admin/auth/admin_delete')) }
<button class="layui-btn layui-btn-sm" data-type="deletes">批量删除 </button>
{/if}
地区权限获取
Admin
基类提供了一个auth_region()
方法,用于获取当前账号的地区权限in
结构。
若未配置地区权限,我们可认为是全国权限,这种情况下,该方法是直接返回true
。
若配置了地区权限,则是返回由,
间隔的地区ID值,例如:0,7,79,103
,可直接用于数据库IN
查询。
下面我们来看个例子:
$Db = new \x\Db();
$where = [];
$in = $this->auth_region();
if ($in !== true) {
$where[] = ['region_id', 'in', '('.$in.')'];
}
$list = $Db->name('order')->where($where)->find();