<?php
/**
 * ------------------------ 
 *  版权所有  www.tecmz.com
 *  商业版本请购买正版授权使用
 * ------------------------
*/ namespace Module\Banner\Admin\Controller; use Illuminate\Routing\Controller; use ModStart\Admin\Concern\HasAdminQuickCRUD; use ModStart\Admin\Layout\AdminCRUDBuilder; use ModStart\Detail\Detail; use ModStart\Form\Form; use ModStart\Grid\GridFilter; use ModStart\Support\Concern\HasFields; use Module\Banner\Type\BannerPosition; use Module\Banner\Type\BannerType; use Module\Banner\Util\BannerUtil; class BannerController extends Controller { use HasAdminQuickCRUD; protected function crud(AdminCRUDBuilder $NXyDB) { $NXyDB->init('banner')->field(function ($NXyDB) { $NXyDB->id('id', 'ID'); $NXyDB->select('position', '位置')->optionType(BannerPosition::class); $NXyDB->image('image', '图片'); $NXyDB->radio('type', '样式类型')->optionType(BannerType::class)->when(BannerType::IMAGE_TITLE_SLOGAN_LINK, function ($Z0J_R) { $Z0J_R->text('title', '标题'); $Z0J_R->textarea('slogan', '内容描述'); $Z0J_R->text('linkText', '链接文字'); $Z0J_R->switch('colorReverse', '颜色反转'); }); $NXyDB->text('link', '链接'); $NXyDB->display('created_at', L('Created At'))->listable(false); $NXyDB->display('updated_at', L('Updated At'))->listable(false); })->gridFilder(function (GridFilter $EFNvu) { $EFNvu->eq('position', '位置')->select(BannerPosition::class); })->enablePagination(false)->defaultOrder(array('sort', 'asc'))->canSort(true)->title('轮播图片')->hookSaved(function (Form $EmQdh) { BannerUtil::clearCache(); }); } }