header('支付方式') ->description('') ->body($this->grid()); } /** * Show interface. * * @param mixed $id * @param Content $content * @return Content */ public function show($id, Content $content) { return $content ->header('支付方式') ->description('详细') ->body($this->detail($id)); } /** * Edit interface. * * @param mixed $id * @param Content $content * @return Content */ public function edit($id, Content $content) { return $content ->header('支付方式') ->description('编辑') ->body($this->editForm($id)->edit($id)); } /** * Create interface. * * @param Content $content * @return Content */ public function create(Content $content) { $js = <<header('支付方式') ->description('创建') ->body($this->createForm()); } /** * Make a grid builder. * * @return Grid */ protected function grid() { $grid = new Grid(new Payment); $grid->id('ID'); $grid->name('插件名称'); $grid->alias('插件别名'); $grid->account('账号'); $grid->s_intro('简单描述'); $grid->type('类型')->display(function ($values) { switch ($values) { case 1: $values = '支付宝'; break; case 2: $values = '微信'; break; case 3: $values = '线下转账'; break; default: $values = '支付宝'; break; } return $values; }); $grid->created_at('添加时间'); $grid->updated_at('更新时间'); $grid->disableCreateButton(); $grid->actions(function ($actions) { $actions->disableDelete(); $actions->disableView(); }); $grid->tools(function (Grid\Tools $tools) { $tools->disableFilterButton(); $tools->batch(function ($batch) { $batch->disableDelete(); }); }); return $grid; } /** * Make a show builder. * * @param mixed $id * @return Show */ protected function detail($id) { $show = new Show(Payment::findOrFail($id)); $Payment = Payment::findOrFail($id); $show->id('ID'); $show->name('插件名称'); $show->alias('插件别名'); $show->s_intro('简单描述'); $show->introd('描述'); $show->type('类型')->as(function ($values) { switch ($values) { case 1: $values = '支付宝'; break; case 2: $values = '微信'; break; case 3: $values = '线下转账'; break; default: $values = '支付宝'; break; } return $values; }); if ($Payment['type']!=3) { $show->partnerid('合作者身份(Partner ID)'); $show->ytauthkey('安全校验码(Key)'); $show->account('账号'); } $show->created_at('添加时间'); $show->updated_at('更新时间'); $show->panel() ->tools(function ($tools) { $tools->disableDelete(); }); return $show; } /** * Make a form builder. * * @return Form */ protected function form() { $form = new Form(new Payment); $form->display('ID'); $form->display('添加时间'); $form->display('更新时间'); return $form; } /** * Make a form builder. * * @return Form */ protected function editForm($id) { $form = new Form(new Payment); $Payment = Payment::findOrFail($id); switch ($Payment['type']) { case 1: $values = '支付宝'; break; case 2: $values = '微信'; break; case 3: $values = '线下转账'; break; default: $values = '支付宝'; break; } $form->text('name', '插件名称')->rules('required'); $form->text('alias', '插件别名')->rules('required'); $form->text('s_intro', '简单描述')->rules('required'); $form->textarea('introd', '详细描述')->rules('required'); $form->radio('type', '类型')->options([$Payment['type']=>$values]); if ($Payment['type']!=3) { $form->text('partnerid', '合作者身份(Partner ID)'); $form->password('ytauthkey', '安全校验码(Key)'); $form->text('account', '账号'); } $form->tools(function (Form\Tools $tools) { $tools->disableDelete(); }); $form->footer(function ($footer) { // 去掉`重置`按钮 $footer->disableReset(); // 去掉`查看`checkbox $footer->disableViewCheck(); // 去掉`继续编辑`checkbox $footer->disableEditingCheck(); // 去掉`继续创建`checkbox $footer->disableCreatingCheck(); }); return $form; } protected function createForm() { $form = new Form(new Payment); $form->text('name', '插件名称')->rules('required'); $form->text('alias', '插件别名')->rules('required'); $form->text('s_intro', '简单描述')->rules('required'); $form->textarea('introd', '详细描述')->rules('required'); $form->radio('type', '类型')->options(['1'=>'支付宝','2'=>'微信','3'=>'线下转账'])->default(1); $form->text('partnerid', '合作者身份(Partner ID)'); $form->text('ytauthkey', '安全校验码(Key)'); $form->text('account', '账号'); return $form; } /** * Store a newly created resource in storage. * * @return mixed */ public function store() { return $this->createForm()->store(); } /** * Update the specified resource in storage. * * @param int $id * * @return \Illuminate\Http\Response|\Symfony\Component\HttpFoundation\Response */ public function update($id) { return $this->editForm($id)->update($id); } }