model()->orderBy('id', 'DESC'); $grid->column('id')->sortable(); $grid->column('gp_name')->editable(); $grid->column('is_open')->switch(); $grid->column('is_open_group_pwd')->switch(); $grid->column('ord')->editable(); $grid->column('created_at'); $grid->column('updated_at')->sortable(); $grid->disableViewButton(); $grid->filter(function (Grid\Filter $filter) { $filter->equal('id'); $filter->scope(admin_trans('dujiaoka.trashed'))->onlyTrashed(); }); $grid->actions(function (Grid\Displayers\Actions $actions) { if (request('_scope_') == admin_trans('dujiaoka.trashed')) { $actions->append(new Restore(GoodsGroupModel::class)); } }); $grid->batchActions(function (Grid\Tools\BatchActions $batch) { if (request('_scope_') == admin_trans('dujiaoka.trashed')) { $batch->add(new BatchRestore(GoodsGroupModel::class)); } }); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new GoodsGroup(), function (Show $show) { $show->field('id'); $show->field('gp_name'); $show->field('is_open')->as(function ($isOpen) { if ($isOpen == GoodsGroupModel::STATUS_OPEN) { return admin_trans('dujiaoka.status_open'); } else { return admin_trans('dujiaoka.status_close'); } }); $show->field('is_open_group_pwd')->as(function ($isOpenGroupPwd) { if ($isOpenGroupPwd == GoodsGroupModel::STATUS_OPEN) { return admin_trans('dujiaoka.status_open'); } else { return admin_trans('dujiaoka.status_close'); } }); $show->field('group_pwd')->as(function ($groupPwd) { return empty($groupPwd) ? '' : '******'; }); $show->field('ord'); $show->field('created_at'); $show->field('updated_at'); }); } /** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new GoodsGroup(), function (Form $form) { $form->display('id'); $form->text('gp_name', admin_trans('goods-group.fields.gp_name')); $form->switch('is_open', admin_trans('goods-group.fields.is_open'))->default(GoodsGroupModel::STATUS_OPEN); $form->divider('分类密码访问'); $form->switch('is_open_group_pwd', admin_trans('goods-group.fields.is_open_group_pwd'))->default(GoodsGroupModel::STATUS_CLOSE); $form->text('group_pwd', admin_trans('goods-group.fields.group_pwd')) ->help(admin_trans('goods-group.fields.group_pwd_help')); $form->number('ord', admin_trans('goods-group.fields.ord'))->default(1)->help(admin_trans('dujiaoka.ord')); $form->display('created_at'); $form->display('updated_at'); $form->saving(function (Form $form) { if ((int) $form->is_open_group_pwd !== GoodsGroupModel::STATUS_OPEN) { $form->group_pwd = null; } elseif ($form->isEditing() && $form->group_pwd === null) { $form->deleteInput('group_pwd'); } }); $form->disableViewButton(); $form->footer(function ($footer) { // 去掉`查看`checkbox $footer->disableViewCheck(); }); }); } }