header('奖品列表') ->description('请确保总概率达到100%') ->body(view('admin.lottery.prize')->with(['grid'=>$this->grid()])); } /** * 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) { return $content ->header('奖品设置') ->description(' ') ->body($this->form()); } /** * Make a grid builder. * * @return Grid */ protected function grid() { $grid = new Grid(new LotteryPrize); $grid->model(); $grid->id('ID'); $grid->column('prize_name','奖品名称'); $grid->prize_image('奖品图片')->display(function () { if ($this->prize_image) { return ' '; } else { return ''; } }); $grid->prize_odds('中奖概率')->display(function () { return $this->prize_odds . '%'; }); $grid->prize_bg('奖品背景色')->display(function () { if ($this->prize_bg) { return '
'; } else { return ''; } }); $grid->column('prize_number','奖品数量'); //新增按钮 if (userAdmin::user()->can('prize_add')) { $grid->disableCreateButton(false); } //批量删除 if (userAdmin::user()->can('prize_delete')) { $grid->tools(function ($tools) { $tools->batch(function ($batch) { $batch->disableDelete(false); }); }); } else { $grid->disableRowSelector(); } $grid->actions(function ($actions) { if (userAdmin::user()->can('prize_delete')) { $actions->disableEdit(false); } if (userAdmin::user()->can('prize_edit')) { $actions->disableDelete(false); } }); return $grid; } /** * Make a form builder. * * @return Form */ protected function form() { $form = new ValidateForm(new LotteryPrize()); $form->text('prize_name', '奖品名称')->rules('required|max:100', ['required' => '奖品名称不能为空。', 'max' => '标题长度不能大于100。'])->setWidth(4)->setMustMark(); $form->image('prize_image', '奖品图片')->uniqueName()->rules('image|mimes:jpeg,bmp,png', ['image' => '缩略图请选择图片文件。', 'mimes' => '请选择jpeg,bmp,png格式的缩略图上传。'])->setWidth(4); $form->number('prize_odds', '中奖概率(%)')->rules('required', ['required' => '中奖概率不能为空。'])->setWidth(4)->setMustMark(); $form->color('prize_bg', '背景颜色')->rules('required|regex:/^#[a-fA-F0-9]{6}$/', ['required' => '标题颜色不能为空。', 'regex' => '标题颜色格式不正确。'])->default('#000000'); $form->number('prize_number', '奖品数量')->rules('required', ['required' => '奖品数量不能为空。'])->setWidth(4)->setMustMark(); $form->saved(function (Form $form) { //如果没有上传logo,判断是否 $prize_image = \Illuminate\Support\Facades\Request::input('prize_image'); if (!$form->model()->prize_image && $prize_image) { $form->model()->prize_image = $prize_image; $form->model()->save(); } }); $form->footer(function ($footer) { $footer->disableViewCheck(); $footer->disableEditingCheck(); $footer->disableCreatingCheck(); $footer->disableReset(); }); return $form; } protected function editForm($id) { $form = new ValidateForm(new LotteryPrize); $form->text('prize_name', '奖品名称')->rules('required|max:100', ['required' => '奖品名称不能为空。', 'max' => '标题长度不能大于100。'])->setWidth(4)->setMustMark(); $form->image('prize_image', '奖品图片')->uniqueName()->rules('image|mimes:jpeg,bmp,png', ['image' => '缩略图请选择图片文件。', 'mimes' => '请选择jpeg,bmp,png格式的缩略图上传。'])->setWidth(4); $form->number('prize_odds', '中奖概率(%)')->rules('required', ['required' => '中奖概率不能为空。'])->setWidth(4)->setMustMark(); $form->color('prize_bg', '背景颜色')->rules('required|regex:/^#[a-fA-F0-9]{6}$/', ['required' => '标题颜色不能为空。', 'regex' => '标题颜色格式不正确。'])->default('#000000'); $form->number('prize_number', '奖品数量')->rules('required', ['required' => '奖品数量不能为空。'])->setWidth(4)->setMustMark(); $form->saved(function (Form $form) { //如果没有上传logo,判断是否 $prize_image = \Illuminate\Support\Facades\Request::input('prize_image'); if (!$form->model()->prize_image && $prize_image) { $form->model()->prize_image = $prize_image; $form->model()->save(); } }); $form->footer(function ($footer) { $footer->disableViewCheck(); $footer->disableEditingCheck(); $footer->disableCreatingCheck(); $footer->disableReset(); }); $form->tools(function (Form\Tools $tools) { $tools->disableDelete(); $tools->disableView(); }); return $form; } public function destroy($id) { //是否存在报名列表 if ($this->form()->destroy($id)) { $data = [ 'status' => true, 'message' => trans('admin.delete_succeeded'), ]; } else { $data = [ 'status' => false, 'message' => trans('admin.delete_failed'), ]; } return response()->json($data); } }