column('id')->sortable(); $grid->column('base.name', '区域')->label(); $grid->column('crop.name', '农作物'); $grid->column('time_year')->append('年'); $grid->column('quarter')->display(function($v){ return '第'.$v.'季度'; }); $grid->column('yield')->display(function($v){ return $v.$this->crop?->unit ?? ''; }); $grid->column('cultivated'); $grid->column('output'); $grid->column('createdBy.name', '录入人'); $grid->column('updatedBy.name', '更新人'); $grid->column('created_at')->sortable(); $grid->model()->orderBy('time_year', 'desc')->orderBy('quarter', 'asc'); $grid->showCreateButton(! config('admin.permission.enable') || Admin::user()->can('dcat.admin.crop_yields.create')); $grid->showQuickEditButton(! config('admin.permission.enable') || Admin::user()->can('dcat.admin.crop_yields.edit')); $grid->showDeleteButton(! config('admin.permission.enable') || Admin::user()->can('dcat.admin.crop_yields.destroy')); $grid->filter(function (Grid\Filter $filter) { $filter->equal('base_id')->select(AgriculturalBase::all()->pluck('name', 'name'))->width(3); $filter->equal('crop_id')->select(Crop::where('is_end', 1)->pluck('name', 'id'))->width(3); }); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new CropYield(), function (Show $show) { $show->field('id'); $show->field('base_id'); $show->field('crop_id'); $show->field('time_year'); $show->field('quarter'); $show->field('yield'); $show->field('cultivated'); $show->field('output'); $show->field('created_by'); $show->field('updated_by'); $show->field('created_at'); $show->field('updated_at'); }); } /** * Make a form builder. * * @return Form */ protected function form() { $builder = CropYield::with(['base', 'crop']); return Form::make($builder, function (Form $form) { $model = $form->model(); $form->display('id'); $form->select('base_id')->options(AgriculturalBase::all()->pluck('name', 'id')); $form->select('crop_id')->options(Crop::where('is_end', 1)->pluck('name', 'id')); $form->datetime('time_year')->format('YYYY')->required(); $form->radio('quarter')->options([ 1=>'1季度',2=>'2季度',3=>'3季度',4=>'4季度', ])->default(1)->required(); $form->currency('yield')->symbol($model->crop?->unit ?? '斤'); Admin::script( <<cropExtends('extends', '扩展信息')->crop($model->crop)->listen('crop_id'); $form->currency('cultivated')->symbol('亩')->default(0)->required()->saving(function ($v) { if ($v === null) { $v = 0; } return $v; }); $form->currency('output')->symbol('元')->default(0)->required()->saving(function ($v) { if ($v === null) { $v = 0; } return $v; }); // $form->text('created_by'); // $form->text('updated_by'); $form->display('created_at'); $form->display('updated_at'); }); } }