6
0
Fork 0
jiqu-library-server/database/seeders/AdminMenuSeeder.php

291 lines
9.2 KiB
PHP

<?php
namespace Database\Seeders;
use App\Models\Admin\Menu;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Throwable;
class AdminMenuSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
//
$menus = [
[
'title' => '主页',
'icon' => 'feather icon-bar-chart-2',
'uri' => '/',
],
[
'title' => '会员管理',
'icon' => 'fa fa-users',
'uri' => '',
'children' => [
[
'title' => '会员列表',
'icon' => '',
'uri' => 'users',
],
],
],
[
'title' => '商城管理',
'icon' => 'fa fa-shopping-bag',
'uri' => '',
'children'=>[
[
'title' =>'文章管理',
'icon' => '',
'uri' => 'articles',
],
[
'title' => '文章分类',
'icon' => '',
'uri' => 'article-categories',
],
[
'title' => '广告管理',
'icon' => '',
'uri' => 'ads',
],
[
'title' => '广告位置',
'icon' => '',
'uri' => 'ad-addresses',
],
[
'title' => '优惠券管理',
'icon' => '',
'uri' => 'coupons',
],
[
'title' => '运费模板管理',
'icon' => '',
'uri' => 'shipping-templates',
],
],
],
[
'title' => '商品管理',
'icon' => 'fa fa-shopping-cart',
'uri' => '',
'children'=>[
[
'title' => '主商品',
'icon' => '',
'uri' => 'product-spus',
],
[
'title' => '子商品',
'icon' => '',
'uri' => 'product-skus',
],
[
'title' =>'上架审核',
'icon' => '',
'uri' => 'product-sku-verifies',
],
[
'title' => '商品分类',
'icon' => '',
'uri' => 'product-categories',
],
[
'title'=>'属性分组',
'icon'=>'',
'uri' => 'product-groups',
],
[
'title'=> '商品特点',
'icon' => '',
'uri' => 'product-features',
],
[
'title' => '购买须知',
'icon' => '',
'uri' => 'product-buynotes',
],
],
],
[
'title' => '运营管理',
'icon' => 'fa fa-paw',
'uri'=>'',
'children'=>[
[
'title' =>'商品分区',
'icon' => '',
'uri' => 'product-parts',
],
[
'title' =>'发放优惠券',
'icon' => '',
'uri' =>'coupon-send-tasks',
],
[
'title' =>'优惠券发放记录',
'icon' => '',
'uri' => 'coupon-task-logs',
],
[
'title' =>'公告消息',
'icon' => '',
'uri' => 'messages',
],
[
'title' => '分享管理',
'icon' => '',
'uri' => 'share-bgs',
],
[
'title' => 'App版本管理',
'icon' => '',
'uri' => 'app-versions',
],
],
],
[
'title' =>'订单管理',
'icon' => 'fa fa-cubes',
'uri' => '',
'children' => [
[
'title' => '订单列表',
'icon' => '',
'uri' => 'orders',
],
[
'title' => '待发货单',
'icon' => '',
'uri' => 'orders?filter-order_status[]=1&filter-order_status[]=2',
],
[
'title' =>'订单标签',
'icon' => '',
'uri' => 'tags?type=1',
],
[
'title' =>'调价范围权限',
'icon' => '',
'uri'=>'order-reduce-ranges',
],
],
],
[
'title' => '货运管理',
'icon' => 'fa fa-subway',
'uri' => '',
'children'=>[
[
'title'=>'货运单',
'icon' => '',
'uri' => 'order-packages',
],
[
'title' =>'货运标签',
'icon' => '',
'uri' => 'tags?type=2',
],
],
],
[
'title' => '售后管理',
'icon' => 'fa fa-question-circle',
'uri'=>'',
'children'=>[
[
'title' =>'售后审核',
'icon' => '',
'uri' => 'after-sales',
],
[
'title' =>'售后标签',
'icon' => '',
'uri' => 'tags?type=3',
],
],
],
[
'title' => '财务管理',
'icon' => 'fa fa-jpy',
'uri'=> '',
'children'=>[
[
'title' =>'提现审核',
'icon' => '',
'uri' =>'wallet-to-bank-logs',
],
[
'title' => '售后打款',
'icon' => '',
'uri' =>'after-sales?state=5',
],
],
],
[
'title' => '系统管理',
'icon' => 'feather icon-settings',
'uri' => '',
'children' =>[
[
'title' => '管理员',
'icon' => '',
'uri' => 'auth/users',
],
[
'title' => '角色',
'icon' => '',
'uri' => 'auth/roles',
],
[
'title' =>'权限',
'icon' => '',
'uri' =>'auth/permissions',
],
[
'title' =>'菜单',
'icon' => '',
'uri' =>'auth/menus',
],
[
'title' =>'配置管理',
'icon' => '',
'uri' => 'settings',
],
],
],
];
DB::table('admin_menu')->truncate();
try {
DB::begintransaction();
$this->createMenus($menus);
DB::commit();
} catch (Throwable $th) {
DB::rollBack();
report($th);
}
}
public function createMenus(array $menus, $pid = 0)
{
foreach ($menus as $menu) {
$mm = Menu::create([
'title' => $menu['title'],
'icon' => $menu['icon'],
'uri' => $menu['uri'],
'parent_id' => $pid,
]);
if (isset($menu['children'])) {
$this->createMenus($menu['children'], $mm->id);
}
}
}
}