first push
This commit is contained in:
97
app/Admin/Controllers/Advert/IndexController.php
Normal file
97
app/Admin/Controllers/Advert/IndexController.php
Normal file
@@ -0,0 +1,97 @@
|
||||
<?php
|
||||
|
||||
namespace App\Admin\Controllers\Advert;
|
||||
|
||||
use App\Models\Advert;
|
||||
use App\Models\Category;
|
||||
use Dcat\Admin\Form;
|
||||
use Dcat\Admin\Grid;
|
||||
use Dcat\Admin\Show;
|
||||
use Dcat\Admin\Controllers\AdminController;
|
||||
|
||||
class IndexController extends AdminController
|
||||
{
|
||||
|
||||
protected $title = '图片管理';
|
||||
|
||||
/**
|
||||
* Make a grid builder.
|
||||
* @return Grid
|
||||
*/
|
||||
protected function grid()
|
||||
{
|
||||
return Grid::make(new Advert(['category']), function (Grid $grid) {
|
||||
$grid->column('id')->sortable();
|
||||
$grid->column('cover', '图片')->image('', 60, 60);
|
||||
$grid->column('category.title', '分类名称');
|
||||
|
||||
$grid->column('title', '图片名称');
|
||||
$grid->column('url', '地址');
|
||||
$grid->column('sort', '排序');
|
||||
$grid->column('created_at');
|
||||
$grid->column('updated_at')->sortable();
|
||||
|
||||
$grid->filter(function (Grid\Filter $filter) {
|
||||
$filter->equal('id');
|
||||
$filter->like('title', '图片名称');
|
||||
$filter->equal('category.id', '分类名称')->select(Category::selectOptions(function ($model) {
|
||||
return $model->where('status', 1)->where('type', Category::TYPE_ADVERT);
|
||||
}, '所有分类'));
|
||||
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Make a show builder.
|
||||
* @param mixed $id
|
||||
* @return Show
|
||||
*/
|
||||
protected function detail($id)
|
||||
{
|
||||
return Show::make($id, new Advert(), function (Show $show) {
|
||||
$show->field('id');
|
||||
$show->field('created_at');
|
||||
$show->field('updated_at');
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Make a form builder.
|
||||
* @return Form
|
||||
*/
|
||||
protected function form()
|
||||
{
|
||||
return Form::make(new Advert(), function (Form $form) {
|
||||
$form->text('title', '图片名称')->required();
|
||||
$form->select('category_id', '所属分类')
|
||||
->options(Category::selectOptions(function ($model) {
|
||||
return $model->where('status', 1)->where('type', Category::TYPE_ADVERT);
|
||||
}, '选择分类'))
|
||||
->rules('required|min:1', [
|
||||
'required' => '必须选择所属分类',
|
||||
'min' => '必须选择所属分类',
|
||||
]);
|
||||
$form->image('cover', '封面图片')
|
||||
->move('images/' . date('Y/m/d'))
|
||||
->uniqueName();
|
||||
// $form->image('cover', '封面图片')
|
||||
// ->rules(function ($form) {
|
||||
// if ($form->model()->cover != []) {
|
||||
// return 'nullable|image';
|
||||
// } else {
|
||||
// return 'required';
|
||||
// }
|
||||
// })
|
||||
// ->move('images/' . date('Y/m/d'))
|
||||
// ->removable()
|
||||
// ->uniqueName();
|
||||
$form->text('url', '链接地址');
|
||||
$form->number('sort', '排序')
|
||||
->default(1)
|
||||
->required()
|
||||
->help('数字越大越靠前');
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user