columnId(); $grid->column('code', '条件代码'); $grid->column('name', '条件名称'); $grid->column('description', '条件描述')->limit(30); $grid->column('param_schema', '参数模式')->json(); $grid->column('handler_class', '处理器类名'); $grid->column('is_active', '是否激活')->switch(); $grid->column('created_at', '创建时间')->sortable(); $grid->filter(function (Grid\Filter $filter) { $filterHelper = new FilterHelper($filter, $this); $filterHelper->equal(); $filterHelper->likeName('code', '条件代码'); $filterHelper->likeName(); $filterHelper->equalIsActive(); }); }); } /** * 详情页构建 * * @param mixed $id * @return Show */ protected function detail($id) { return Show::make(TaskCondition::findOrFail($id), function (Show $show) { $helper = new ShowHelper($show, $this); $helper->fieldId(); $show->field('code', '条件代码'); $helper->fieldName(); $helper->fieldDescription(); $helper->fieldJson('param_schema', '参数模式'); $show->field('handler_class', '处理器类名'); $helper->fieldIsActive(); $helper->fieldCreatedAt(); $helper->fieldUpdatedAt(); }); } /** * 表单构建 * * @return Form */ protected function form() { return Form::make(new TaskConditionRepository(), function (Form $form) { $helper = new FormHelper($form, $this); $form->display('id', 'ID'); $form->text('code', '条件代码')->required()->rules('required|max:50|unique:task_conditions,code,{{id}}'); $form->text('name', '条件名称')->required()->rules('required|max:50'); $form->textarea('description', '条件描述')->rows(3); $helper->json('param_schema', '参数模式', '定义此条件需要的参数及其类型,JSON格式'); $form->text('handler_class', '处理器类名')->required()->help('处理此条件的完整类名'); $helper->switchIsActive(); $form->display('created_at', '创建时间'); $form->display('updated_at', '更新时间'); }); } }