| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 | <?phpnamespace App\Admin\Controllers\Content;use App\Http\Controllers\Controller;use App\Models\Recuperate;use App\Models\RecuperateApply;use App\Models\RecuperateLog;use App\Models\RecuperateTime;use Encore\Admin\Controllers\HasResourceActions;use Encore\Admin\Grid;use Encore\Admin\Layout\Content;use Illuminate\Http\Request;use Encore\Admin\Facades\Admin;use App\Admin\Extensions\Form\ValidateForm;class RecuperateTimeController extends Controller{    use HasResourceActions;    /**     * Index interface.     *     * @param Content $content     * @return Content     */    public function index(Content $content)    {        return $content            ->header('会员列表')            ->description(' ')            ->body(view('admin.content.recuperate_apply')->with(['grid' => $this->grid()]));    }    public function edit($id, Content $content)    {        return $content            ->header('会员列表')            ->description('金额修改')           ->body($this->editForm($id)->edit($id));    }    /**     * Make a grid builder.     *     * @return Grid     */    protected function grid()    {        $grid = new Grid(new RecuperateTime());        $grid->model()->orderBy('year', 'DESC');        $grid->column('memberinfo.realname', '姓名')->display(function ($realname) {            return '<a href="'.route('recuperate.applypersonal',['uid'=>$this->uid]).'" target="_blank">'.$realname.'</a>';        })->width(300);/*        $grid->title('招聘会标题')->display(function ($title) {            return '<a href="'.route('jobfair.show.com',$this->id).'" target="_blank">'.$title.'</a>';        })->width(300);*/        $grid->column('memberinfo.id_card','身份证号');       $grid->column('memberinfo.phone','联系电话');        $grid->year('年份');        $grid->price('金额');        $grid->created_at('创建时间');        //审核功能        $grid->actions(function ($actions) {            if (Admin::user()->can('content_recuperate_time_list_edit')) {                $actions->disableEdit(false);            }        });        $grid->filter(function ($filter) {            $filter->group('搜索', function ($group) {                $group->where('姓名', function ($query) {                    $query->whereHas('memberinfo',function ($query){                        $query->where('realname', 'like','%'.request()->搜索.'%');                    });                });                $group->where('身份证号', function ($query) {                    $query->whereHas('memberinfo',function ($query){                        $query->where('id_card', 'like','%'.request()->搜索.'%');                    });                });                $group->where('联系电话',function ($query){                    $query->whereHas('memberinfo',function ($query){                        $query->where('phone', 'like','%'.request()->搜索.'%');                    });                });            })->placeholder('请输入关键字');        });        return $grid;    }    protected function editForm($id)    {        $form = new ValidateForm(new RecuperateTime());        $form->text('memberinfo.realname', '姓名')->readonly();        $form->text('memberinfo.id_card', '身份证')->readonly();        $form->text('memberinfo.phone', '联系方式')->readonly();        $form->text('price', '金额')->setMustMark();        $form->hidden('id');        return $form;    }    public function update($id, Request $request)    {        $request->validate([            'price' => 'required',        ],            [                'price' => '请填写金额',            ]);        $res = $this->editForm($id)->update($id);        if ($res) {            $stu = RecuperateTime::where('id', $id)->select('uid')->first();            $auditData = array(                'type' => 3,                'admin_id' => \Encore\Admin\Facades\Admin::user()->id,                'sid' => $stu->uid,                'content' =>$request->price            );            RecuperateLog::create($auditData);        }        return $res;    }}
 |