| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- <?php
- /**
- * Created by PhpStorm.
- * User: ring
- * Date: 2019/7/22
- * Time: 下午5:48
- */
- namespace App\Admin\Controllers;
- use App\Models\AdCategory;
- use App\Models\Ads;
- use Encore\Admin\Controllers\AdminController;
- use Encore\Admin\Form;
- use Encore\Admin\Grid;
- use Encore\Admin\Layout\Content;
- use Illuminate\Support\Facades\Cache;
- class AdsController extends AdminController
- {
- protected $title = '广告管理';
- public function index(Content $content)
- {
- return parent::index($content);
- }
- protected function grid()
- {
- $grid = new Grid(new Ads());
- $grid->id('ID')->sortable();
- $grid->column('name', '广告名');
- $grid->column('link','广告链接');
- $grid->column('category.category_name','广告分类');
- $grid->column('file', '广告图')->image('',100,100);
- $grid->column('enabled', '是否开启?')->display(function ($ios) {
- return $ios? '开' : '关';
- })->sortable();
- $grid->column('start', '开始时间');
- $grid->column('end', '结束时间');
- $grid->filter(function ($filter) {
- $filter->disableIdFilter();
- $filter->equal('category.category_name','广告分类');
- });
- $grid->updated_at('修改时间');
- $grid->created_at('创建时间');
- $grid->disableExport();
- $grid->disableRowSelector();
- $grid->disableColumnSelector();
- $grid->actions(function ($actions) {
- $actions->disableView();
- });
- $grid->model()->orderBy('id', 'desc');
- return $grid;
- }
- protected function form()
- {
- $form = new Form(new Ads);
- $form->text('name', '广告名')->rules('required|min:1');
- $form->url('link', '广告链接')->rules('required|min:1');
- $cat=AdCategory::select('id','category_name')->get();
- $list=[];
- foreach ($cat as $k=>$v){
- $list[$v->id]=$v->category_name;
- }
- $form->select('cid', '广告类别')->options($list);
- $form->image('file','广告图片')->uniqueName()->help('若上传不成功检查图片大小');
- $form->switch('enabled', '开/关');
- $form->datetime('start', '开始时间')->format('YYYY-MM-DD HH:mm:ss');
- $form->datetime('end', '结束时间')->format('YYYY-MM-DD HH:mm:ss');
- $form->footer(function ($footer) {
- $footer->disableReset();
- $footer->disableViewCheck();
- $footer->disableEditingCheck();
- $footer->disableCreatingCheck();
- });
- $form->tools(function (Form\Tools $tools) {
- $tools->disableView();
- });
- $form->saving(function (Form $form) {
- $form->start=strtotime($form->start);
- $form->end=strtotime($form->end);
- return $form;
- });
- return $form;
- }
- public function store()
- {
- Cache::forget('DynamicAds');
- return $this->form()->store();
- }
- public function update($id)
- {
- Cache::forget('DynamicAds');
- return $this->form()->update($id);
- }
- public function destroy($id)
- {
- Cache::forget('DynamicAds');
- return $this->form()->destroy($id);
- }
- }
|