translation($this->translation()) ->title('线索') ->description($this->description()['index'] ?? trans('admin.list')) ->body($this->grid(request('coin_id', 0))); } /** * Make a grid builder. * * @return Grid */ protected function grid($coin_id) { return Grid::make(new CoinClue(), function (Grid $grid) use ($coin_id) { $grid->model()->where('coin_id', $coin_id); $grid->column('id')->sortable(); $grid->column('name'); $grid->column('content', '内容')->if(function () { return $this->type == \App\Models\CoinClue::TYPE_IMAGE; })->image(50, 50)->else()->display(function () { return $this->content; }); $grid->column('is_circle', '圆圈形式')->display(function ($is_circle) { return \App\Models\CoinClue::IS_CIRCLE[$is_circle]; }); $grid->column('updated_at')->sortable(); $grid->model()->orderBy('updated_at', 'desc'); $grid->model()->setConstraints([ 'coin_id' => $coin_id, ]); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new CoinClue(), function (Show $show) { $show->field('id'); $show->field('name'); $show->field('type')->using(\App\Models\CoinClue::TYPE); $show->field('content', '内容')->as(function ($content) { return $this->type == \App\Models\CoinClue::TYPE_IMAGE ? '' : $content; })->unescape(); $show->field('amount', '橡果数'); $show->field('is_circle', '圆圈形式')->using(\App\Models\CoinClue::IS_CIRCLE); $show->disableDeleteButton(); $show->disableListButton(); $show->disableEditButton(); $show->tools('
列表
'); }); } /** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new CoinClue(), function (Form $form) { $coin_id = request('coin_id', 0); $form->text('name'); $form->radio('type') ->options(\App\Models\CoinClue::TYPE) ->default(\App\Models\CoinClue::TYPE_TEXT) ->when(\App\Models\CoinClue::TYPE_TEXT, function (Form $form) { $form->text('content', '内容'); })->when(\App\Models\CoinClue::TYPE_IMAGE, function (Form $form) { $form->image('image', '内容'); if ($form->model()->content) { $form->html(''); } }); $form->number('amount', '橡果数'); $form->radio('is_circle', '圆圈形式') ->options(\App\Models\CoinClue::IS_CIRCLE) ->default(\App\Models\CoinClue::IS_CIRCLE_YES); $form->hidden('coin_id')->value($coin_id); $form->saving(function (Form $form) { if ($form->type == \App\Models\CoinClue::TYPE_IMAGE) { $form->content = $form->image; } $form->deleteInput('image'); }); $form->disableListButton(); $form->disableViewButton(); $form->disableViewCheck(); $form->disableDeleteButton(); $form->disableCreatingCheck(); $form->disableEditingCheck(); $form->tools('
列表
'); }); } }