column('id')->sortable(); $grid->column('key')->label(); $grid->column('remarks'); $grid->column('value') ->if(function () { return Admin::user()->can('dcat.admin.settings.edit'); }) ->then(function (Column $column) { $column->editable(); }); $grid->column('created_at')->sortable(); //排序 $grid->model()->orderBy('created_at', 'desc'); /** 操作 **/ //新增 if (Admin::user()->can('dcat.admin.settings.create')) { $grid->disableCreateButton(false); $grid->enableDialogCreate(); } //删除以及自定义操作 $grid->actions(function (Grid\Displayers\Actions $actions) { $actions->disableDelete(Admin::user()->cannot('dcat.admin.ads.destroy')); }); $grid->quickSearch('key')->placeholder('搜索key'); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new Setting(), function (Show $show) { $show->field('id'); $show->field('key'); $show->field('value'); $show->field('created_at'); $show->field('updated_at'); }); } /** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new Setting(), function (Form $form) { $form->display('id'); $form->text('key')->rules(function (Form $form) { return 'unique:settings,key,'.$form->model()->id.',id'; })->required(); $form->text('value'); $form->text('remarks'); $form->display('created_at'); $form->display('updated_at'); }); } public function index(Content $content): Content { return $content->header('配置管理') ->description('配置管理') ->body(function (Row $row) { $type = Request::query('type', 'app'); $tab = new Tab(); switch ($type) { case 'app': $tab->add('系统配置', new App(), true); $tab->addLink('会员奖励配置', admin_route('settings.index', ['type'=>'distribution'])); $tab->addLink('提现配置', admin_route('settings.index', ['type'=>'withdraw'])); $tab->addLink('Ios配置', admin_route('settings.index', ['type'=>'ios'])); $tab->addLink('Android配置', admin_route('settings.index', ['type'=>'ios'])); $tab->addLink('快递100配置', admin_route('settings.index', ['type'=>'kuaidi100'])); $tab->addLink('Uni-push配置', admin_route('settings.index', ['type'=>'unipush'])); break; case 'distribution': $tab->addLink('系统配置', admin_route('settings.index', ['type'=>'app'])); $tab->add('会员奖励配置', new Distribution(), true); $tab->addLink('提现配置', admin_route('settings.index', ['type'=>'withdraw'])); $tab->addLink('Ios配置', admin_route('settings.index', ['type'=>'ios'])); $tab->addLink('Android配置', admin_route('settings.index', ['type'=>'android'])); $tab->addLink('快递100配置', admin_route('settings.index', ['type'=>'kuaidi100'])); $tab->addLink('Uni-push配置', admin_route('settings.index', ['type'=>'unipush'])); break; case 'withdraw': $tab->addLink('系统配置', admin_route('settings.index', ['type'=>'app'])); $tab->addLink('会员奖励配置', admin_route('settings.index', ['type'=>'distribution'])); $tab->add('提现配置', new Withdraw(), true); $tab->addLink('Ios配置', admin_route('settings.index', ['type'=>'ios'])); $tab->addLink('Android配置', admin_route('settings.index', ['type'=>'android'])); $tab->addLink('快递100配置', admin_route('settings.index', ['type'=>'kuaidi100'])); $tab->addLink('Uni-push配置', admin_route('settings.index', ['type'=>'unipush'])); break; case 'ios': $tab->addLink('系统配置', admin_route('settings.index', ['type'=>'app'])); $tab->addLink('会员奖励配置', admin_route('settings.index', ['type'=>'distribution'])); $tab->addLink('提现配置', admin_route('settings.index', ['type'=>'withdraw'])); $tab->add('Ios配置', new Ios(), true); $tab->addLink('Android配置', admin_route('settings.index', ['type'=>'android'])); $tab->addLink('快递100配置', admin_route('settings.index', ['type'=>'kuaidi100'])); $tab->addLink('Uni-push配置', admin_route('settings.index', ['type'=>'unipush'])); break; case 'android': $tab->addLink('系统配置', admin_route('settings.index', ['type'=>'app'])); $tab->addLink('会员奖励配置', admin_route('settings.index', ['type'=>'distribution'])); $tab->addLink('提现配置', admin_route('settings.index', ['type'=>'withdraw'])); $tab->addLink('Ios配置', admin_route('settings.index', ['type'=>'ios'])); $tab->add('Android配置', new Android(), true); $tab->addLink('快递100配置', admin_route('settings.index', ['type'=>'kuaidi100'])); $tab->addLink('Uni-push配置', admin_route('settings.index', ['type'=>'unipush'])); break; case 'kuaidi100': $tab->addLink('系统配置', admin_route('settings.index', ['type'=>'app'])); $tab->addLink('会员奖励配置', admin_route('settings.index', ['type'=>'distribution'])); $tab->addLink('提现配置', admin_route('settings.index', ['type'=>'withdraw'])); $tab->addLink('Ios配置', admin_route('settings.index', ['type'=>'ios'])); $tab->addLink('Android配置', admin_route('settings.index', ['type'=>'android'])); $tab->add('快递100配置', new Kuaidi100(), true); $tab->addLink('Uni-push配置', admin_route('settings.index', ['type'=>'unipush'])); break; case 'unipush': $tab->addLink('系统配置', admin_route('settings.index', ['type'=>'app'])); $tab->addLink('会员奖励配置', admin_route('settings.index', ['type'=>'distribution'])); $tab->addLink('提现配置', admin_route('settings.index', ['type'=>'withdraw'])); $tab->addLink('Ios配置', admin_route('settings.index', ['type'=>'ios'])); $tab->addLink('Android配置', admin_route('settings.index', ['type'=>'android'])); $tab->addLink('快递100配置', admin_route('settings.index', ['type'=>'kuaidi100'])); $tab->add('Uni-push配置', new Unipush(), true); break; default: break; } $row->column(12, $tab->withCard()); }); } }