quansitech / qscmf-access-generation
laravel for tp3.2 as a tools
Requires
- funkjedi/composer-include-files: ^1.0
- guzzlehttp/guzzle: ^6.3
- tiderjian/think-core: >=11.0
Requires (Dev)
- fzaninotto/faker: ^1.4
- laravel/dusk: ^5.0
- mockery/mockery: ^1.2
- phpunit/phpunit: ^8.0
This package is auto-updated.
Last update: 2024-12-14 19:58:18 UTC
README
介绍
由于手动添加权限点比较繁琐,并且容易出错,所有寄希望于脚本来简化操作。该功能主要实现权限点添加,额外实现qs_node节点添加
安装
安装qs_cmf
composer安装
composer require quansitech/qscmf-access-generation
使用
目前支持的laravel功能有 migrate、make:model、make:seeder、db:seed,具体用法请自行查阅laravel手册。
migrate文件必须存放在lara/database/migrations下,在lara目录下的.env文件中配置要访问的数据库,然后在项目根目录执行php artisan migrate即可完成数据库的迁移,相关的migrate命令可查看laravel文档。
测试脚本必须存放到lara/tests路径下,继承该目录下的TestCase类。配置phpunit.xml文件,设置可用于测试使用的数据库及web服务地址端口。最后运行phpunit,执行测试脚本。关于laravel dusk的使用请查阅laravel文档。
文档
Node
用于生成qs_node节点数据,并且已存在的节点程序不会再创建
使用
请参考lara\database\migrations\2020_05_29_090217_create_test_node_data.php文件
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTestNodeData extends Migration
{
protected $nodeData = [
'ControllerName1'=>[
'testAction1' => '方法1',
'testAction2' => '方法2',
'testAction3' => '方法3',
],
'ControllerName2'=>[
'testAction1' => '方法1',
'testAction2' => '方法2',
'testAction3' => '方法3',
],
];
public function up()
{
\quansitech\dataGenerate\Node::up($this->nodeData);
}
public function down()
{
\quansitech\dataGenerate\Node::down($this->nodeData);
}
}
Node:up、Node:down方法参数说明
参数 $nodeData 必填
$nodeData参数是一个二维数组格式如下:
$nodeData = [
'控制器名'=>[
'方法名' => '方法中文名称',
......
],
......
];
参数 $nodeNameOrId 选填
说明:模块名:默认为admin,可选填qs_node中level=1的id或name的值 如默认的amdin模块id=1
Access
用于生成qs_access权限点数据
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTestAccessData extends Migration
{
protected $nodeData = [
'ControllerName1'=>[
'testAction1' => '方法1',
'testAction2' => '方法2',
'testAction3' => '方法3',
],
'ControllerName2'=>[
'testAction1' => '方法1',
'testAction2' => '方法2',
'testAction3' => '方法3',
],
'NewAccess'=>[
'access1' => '方法1',
'access2' => '方法2',
'access3' => '方法3',
],
];
public function up()
{
\quansitech\dataGenerate\Access::up($this->nodeData, 1);
}
public function down()
{
\quansitech\dataGenerate\Access::down($this->nodeData, 1);
}
}
Access:up、Access:down方法参数说明
参数 $data必填
$nodeData参数是一个二维数组格式如下:
$nodeData = [
'控制器名'=>[
'方法名' => '方法中文名称',
......
],
......
];
参数 $role_id 必填
说明:用户组id值
参数 $firstNode 选填
说明:模块名:默认为admin,可选填qs_node中level=1的id或name的值如默认的amdin模块id=1