版本更新记录

v1.0.1(2020年12月16)


  • 完成AUTH后台相关权限的基本功能支持。

使用说明

SW-X的官方第三方系统,均为完整的独立程序。
版本迭代都只针对大版本做独立更新,例如:v1.2.x只会有一个ApiTest v1.2的官方版本。

下载源码

安装说明

1、部署源码前,需支持SwooleX v1.2.20的运行环境。
2、需要开启Redis支持。
3、修改配置文件中的mysqlredis对应配置参数。
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();