更新
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* 增量补种会员等级 新增/删除 按钮权限
|
||||
* 用法: php database/migrate_membership_buttons.php
|
||||
*/
|
||||
|
||||
require __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
$app = new think\App();
|
||||
$app->initialize();
|
||||
|
||||
use app\service\PermissionCatalog;
|
||||
use think\facade\Db;
|
||||
|
||||
try {
|
||||
$parent = Db::name('sys_permissions')->where('code', 'menu:memberships')->find();
|
||||
if (!$parent) {
|
||||
echo "menu:memberships not found, skip.\n";
|
||||
exit(0);
|
||||
}
|
||||
|
||||
$buttons = [
|
||||
['code' => 'btn:membership:create', 'name' => '新增会员等级'],
|
||||
['code' => 'btn:membership:edit', 'name' => '编辑会员等级'],
|
||||
['code' => 'btn:membership:delete', 'name' => '删除会员等级'],
|
||||
];
|
||||
|
||||
foreach ($buttons as $i => $btn) {
|
||||
if (Db::name('sys_permissions')->where('code', $btn['code'])->find()) {
|
||||
echo "exists {$btn['code']}\n";
|
||||
continue;
|
||||
}
|
||||
Db::name('sys_permissions')->insert([
|
||||
'type' => 'btn',
|
||||
'code' => $btn['code'],
|
||||
'name' => $btn['name'],
|
||||
'parent_id' => $parent['id'],
|
||||
'path' => null,
|
||||
'icon' => null,
|
||||
'sort_order' => $i,
|
||||
'is_system' => 1,
|
||||
'created_at' => date('Y-m-d H:i:s'),
|
||||
'updated_at' => date('Y-m-d H:i:s'),
|
||||
]);
|
||||
echo "added {$btn['code']}\n";
|
||||
}
|
||||
|
||||
// 超级管理员补齐全部权限
|
||||
if (Db::name('roles')->where('slug', 'super_admin')->find()) {
|
||||
Db::name('roles')->where('slug', 'super_admin')->update([
|
||||
'permissions' => json_encode(PermissionCatalog::fullPermissions(), JSON_UNESCAPED_UNICODE),
|
||||
]);
|
||||
echo "Updated super_admin permissions\n";
|
||||
}
|
||||
|
||||
echo "Done.\n";
|
||||
} catch (\Throwable $e) {
|
||||
echo 'Error: ' . $e->getMessage() . "\n";
|
||||
exit(1);
|
||||
}
|
||||
Reference in New Issue
Block a user