id->sortable(); $grid->column('mpInfo.name','服务商名字'); $grid->money; $grid->status('提现状态')->using([-1=>'拒绝',0=>'审核中',1=>'通过']) ->label([-1=>'danger',0=>'default',1=>'success']); $grid->created_at; $grid->filter(function (Grid\Filter $filter) { $filter->equal('id'); }); $grid->actions(function (Grid\Displayers\Actions $actions) { $actions->disableDelete(); // $actions->disableEdit(); $actions->disableQuickEdit(); $actions->disableView(); }); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new LanzuMpWithdraw(['mpInfo']), function (Show $show) { $show->id; $show->mp_id; $show->column('服务商名称','mpInfo.name'); $show->money; $show->status; $show->created_at; $show->updated_at; }); } /** * Make a form builder. * * @return Form */ protected function lanzu_bis_form(){ //管理员或者lanzu_bis操作 return Form::make(new LanzuMpWithdraw(['mpInfo']), function (Form $form) { $form->footer(function ($footer) { // 去掉`查看`checkbox $footer->disableViewCheck(); // 去掉`继续编辑`checkbox $footer->disableEditingCheck(); // 去掉`继续创建`checkbox $footer->disableCreatingCheck(); }); $form->tools(function (Form\Tools $tools) { // 去掉跳转详情页按钮 $tools->disableView(); // 去掉删除按钮 $tools->disableDelete(); $tools->disableList(); }); // dd($form->model()->mp_info['name']); $mpName = $form->model()->mp_info['name']; //dd( $mpName); $form->display('id'); $form->text('mp_id','服务商ID')->disable(); $form->display('','服务商名')->value($mpName); $form->text('money','提现金额')->disable()->required(); $form->hidden('is_operated'); $form->saving(function (Form $form) { $form->is_operated = 1; }); if($form->model()->is_operated){ $status = ''; if($form->model()->status==1){ $status = '审核通过'; } if($form->model()->status==-1){ $status = '拒绝'; } $form->display('','审核状态')->value($status); $form->disableSubmitButton(); $form->disableResetButton(); }else{ $form->radio('status')->options([1 => '通过审核', -1=> '拒绝'])->default(-1); } $form->saved(function (Form $form,$result){ if ($form->isEditing()){ if ($form->model()->status==-1){ //如果服务商提现审核被拒绝,退回服务商的提现金额 MpBalance::returnBalance($form->model()->mp_id,1,$form->model()->money); } } }); }); } protected function form() { $current_user = Admin::user(); if(!$current_user->isRole('lanzu_mp')){ return $this->lanzu_bis_form(); } //如果是服务商角色,获取服务商信息 $mp = LanzuMpInfo::where('admin_user_id',$current_user->id)->first(); //获取服务商可提现金额 $mpb = MpBalance::where('user_id',$mp->id) ->where('user_type',1)->first(); $balance = 0; if($mpb){ $balance = $mpb->balance; } return Form::make(new LanzuMpWithdraw(), function (Form $form) use($current_user,$balance,$mpb) { $form->footer(function ($footer) { // 去掉`查看`checkbox $footer->disableViewCheck(); // 去掉`继续编辑`checkbox $footer->disableEditingCheck(); // 去掉`继续创建`checkbox $footer->disableCreatingCheck(); }); $form->tools(function (Form\Tools $tools) { // 去掉跳转列表按钮 $tools->disableList(); }); $form->display('id'); $form->hidden('mp_id')->value($mpb->id); $form->text('balance','当前可提现余额')->value($balance)->disable()->help('当前可提现金额'); $form->number('money','提现金额')->required(); $form->ignore(['balance']); //添加成功之后,扣减掉可提现金额 $form->saved(function (Form $form,$result)use ($mpb){ if ($form->isCreating()){ if ($result){ $mpb->balance = $mpb->balance-$form->money; $mpb->save(); } } }); }); } }