'不显示', 1=>'总是显示', 2=>'审核时不显示'];
public function index(Content $content)
{
return $content->header('商品分类3层结构')->description('这里主要调整类别结构')
->body(function (Row $row) {
$tree = new Tree(new WxShopClassify);
$row->column(12, $tree);
$tree->maxDepth(3);
$tree->branch(function ($branch) {
if(_empty_($branch['pic'])){
$logo = '
';
}else{
$logo = "
";
}
if(_empty_($branch['bg_img'])){
$bg = '';
}else{
$bg = "
";
}
$depth = $branch['depth'];
$tip = '';
$margin_left = 160;
if($depth == 2){
$margin_left = 130;
}else if($depth == 3){
$margin_left = 100;
}
if($branch['in_mp'] == 2){
$tip .= '小程序端:审核时不显示';
}else if($branch['in_mp'] === 0){
$tip .= '小程序端:不显示';
}else{
$tip .= '';
}
if($branch['in_app'] == 2){
$tip .= 'App端:审核时不显示';
}else if($branch['in_app'] === 0){
$tip .= 'App端:不显示';
}else{
$tip .= '';
}
if($branch['in_h5'] == 2){
$tip .= 'H5端:审核时不显示';
}else if($branch['in_h5'] === 0){
$tip .= 'H5端:不显示';
}else{
$tip .= '';
}
return "{$branch['id']} - {$branch['name']} $logo $bg $tip";
});
});
}
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
return Grid::make(new WxShopClassify(), function (Grid $grid) {
$grid->simplePaginate();
$grid->model()->where('depth', 3)->orderBy('id', 'desc');
$grid->quickSearch(['id', 'name','intro'])->placeholder('搜索分类ID,名字,介绍...');
$grid->column('id')->sortable();
$grid->column('pic')->image('', 60);
$grid->column('bg_img')->image('', 60);
$grid->column('intro');
$grid->column('parent_id')->select(ShopClassify::pluck('name', 'id'));
$grid->column('sort')->editable();
// $grid->column('is_highlight', '高亮')->switch();
// $grid->column('is_hot', '热榜')->switch();
$grid->column('state')->switch();
$grid->column('in_h5')->select($this->options);
$grid->column('in_app')->select($this->options);
$grid->column('in_mp')->select($this->options);
// $grid->column('created_at');
// $grid->fixColumns(1);
$grid->model()->orderBy('id', 'asc');
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
});
$grid->tools([
new ShopClassifyConfigButton()
]);
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new WxShopClassify(), function (Show $show) {
$show->field('id');
$show->field('name');
$show->field('intro');
$show->field('pic');
$show->field('bg_img');
$show->field('parent_id');
$show->field('sort');
$show->field('state');
$show->field('in_h5');
$show->field('in_app');
$show->field('in_mp');
$show->field('created_at');
$show->field('updated_at');
});
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new WxShopClassify(), function (Form $form) {
$form->display('id');
$options = ShopClassify::where('depth', '<>', 3)->pluck('name', 'id')->toArray();
$options[0] = '顶级分类';
$form->select('parent_id', '父级分类')->help('第一层级的请选择“顶级分类”')->options($options)->default(0);
$form->text('name', '名字');
$form->text('intro', '介绍');
$form->image('pic', '图标')->help('建议尺寸:750*750')
->url('files/uploads')->uniqueName()->autoUpload();
$form->image('bg_img', '背景')->help('现在用在类目榜单的位置,宽高比:2.7')
->url('files/uploads')->uniqueName()->autoUpload();
$form->number('sort', '排序');
$form->switch('state', '状态')->default(1);
// $form->switch('is_highlight', '高亮');
// $form->switch('is_hot', '热榜');
$form->radio('in_h5', 'H5端')->options($this->options)->default(1);
$form->radio('in_app', 'App端')->options($this->options)->default(1);
$form->radio('in_mp', '小程序端')->options($this->options)->default(1);
$form->deleting(function (Form $form){
global $__MINI_GLOBAL_TENANT_ID__;
if($__MINI_GLOBAL_TENANT_ID__ > 0){
return $form->response()->error('权限不足,不可以删除其他分站对象');
}
});
});
}
}