| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- <?php
- namespace App\Module\System\AdminControllers;
- use App\Module\System\Enums\VIEW_TYPE;
- use App\Module\System\Models\AdminGridView;
- use Dcat\Admin\Admin;
- use Dcat\Admin\Form;
- use Dcat\Admin\Grid;
- use Illuminate\Http\Request;
- use Spatie\RouteAttributes\Attributes\Get;
- use Spatie\RouteAttributes\Attributes\Resource;
- use UCore\DcatAdmin\AdminController;
- use UCore\DcatAdmin\FilterHelper;
- use UCore\DcatAdmin\Grid\Views\GridHeader;
- use UCore\DcatAdmin\GridHelper;
- /**
- *
- */
- #[Resource('admin_view',names: 'dcat.admin.admin_view')]
- class AdminGridViewController extends AdminController
- {
- protected $title = '列表视图';
- /**
- * Make a grid builder.
- *
- * @return Grid
- */
- protected function grid()
- {
- return Grid::make(new AdminGridView(), function (Grid $grid) {
- $grid->column('id')->sortable();
- $helper = new GridHelper($grid, $this);
- $helper->columnAdminId();
- $helper->columnModelCats('type1');
- $grid->column('title');
- $grid->column('p1');
- $helper->columnAtd('created_at');
- $helper->columnAtd('updated_at');
- GridHeader::gridHeader($grid);
- $grid->filter(function (Grid\Filter $filter) {
- $help = new FilterHelper($filter, $this);
- // $filter->equal('id');
- $filter->equal('id');
- $filter->equal('admin_id');
- });
- });
- }
- /**
- * Make a form builder.
- *
- * @return Form
- */
- protected function form()
- {
- return Form::make(new AdminGridView(), function (Form $form) {
- // dump(redirect()->getIntendedUrl());
- $form->display('id');
- //$form->display('p1');
- // dd($form);
- $form->textarea('p1', '参数(不能改)')
- ->help('不要修改这个!')
- ->disable()
- ->placeholder("不要修改这个!");
- $form->text('title', '标题')->required();
- $form->radio('type1', '类型')->options(VIEW_TYPE::getValueDescription());
- $form->saving(function (Form $form) {
- // 删除
- $form->deleteInput('p1');
- });
- $form->saved(function (Form $form) {
- return $form->response()->success('保存成功')->redirectToIntended('');
- });
- });
- }
- /**
- * @param Request $request
- * @return \Illuminate\Http\RedirectResponse
- */
- #[Get('admin_view/add', name: 'dcat.admin.admin_view_add')]
- public function getadd(Request $request)
- {
- $get = $request->query();
- $router_name = $get['_router_name']??'';
- unset($get['_router_name']);
- unset($get['_pjax']);
- unset($get['pjax']);
- $id = $get['_viewid'] ?? 0;
- // unset($get['_viewid']);
- if ($id) {
- $model = AdminGridView::query()->find($id);
- $router_name = $model->router_name ;
- admin_success('视图更新成功') ;
- } else {
- $model = new AdminGridView();
- $model->admin_id = Admin::user()->getKey();
- $model->type1 = VIEW_TYPE::PUBLIC;
- $model->router_name = $router_name;
- $model->title = '自定义视图';
- admin_success('视图创建成功') ;
- }
- $model->p1 = $get;
- $model->save();
- return redirect()->route($router_name, $get);
- }
- }
|