You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
namespace App\Admin\Controllers;
use App\Admin\Repositories\Goods;use App\Models\Store;use Dcat\Admin\Form;use Dcat\Admin\Grid;use Dcat\Admin\Show;use Dcat\Admin\Controllers\AdminController;use App\Models\GoodsType as GoodsTypeModel;use App\Models\Store as StoreModel;
class GoodsController extends AdminController{ /** * Make a grid builder. * * @return Grid */ protected function grid() { return Grid::make(new Goods(), function (Grid $grid) { $grid->id->sortable(); $grid->cover_img_url->image('',50); $grid->name; $grid->goods_type_id->display(function ($goodsTypeId){ $goodsType = GoodsTypeModel::getGoodsInfo($goodsTypeId,'type_name'); return empty($goodsType) ? '' : $goodsType->type_name; }); $grid->store_id->display(function ($storeId){ $store = StoreModel::getStoreInfo($storeId,'name'); return empty($store) ? '' : $store->name; });
$grid->price;
$grid->sort->sortable(); $grid->on_sale->switch();
$grid->filter(function (Grid\Filter $filter) { $filter->equal('id');
});
// 每页10条
$grid->paginate(10); }); }
/** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new Goods(), function (Show $show) { $show->id; $show->name; $show->type_id; $show->store_id; $show->cover_img; $show->price; $show->original_price; $show->vip_price; $show->on_sale; $show->inventory; $show->content; $show->sort; $show->restrict_num; $show->start_num; $show->is_infinite; $show->good_unit; $show->tags; $show->details_imgs; $show->spec; $show->created_at; $show->updated_at; }); }
/** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new Goods(), function (Form $form) { $form->hidden('id');
// 二级分类(商品分类)
$goodsTypeList = GoodsTypeModel::getGoodsTypeArray(); // 店铺
$store = StoreModel::getStoreArray();
$form->select('goods_type_id')->options($goodsTypeList); $form->select('store_id')->options($store);
$form->text('name')->width(4)->required()->maxLength(20); $form->image('cover_img')->width(2)->required();
$form->text('price'); $form->text('original_price'); $form->text('vip_price'); $form->text('good_unit');
$form->text('inventory'); $form->text('restrict_num'); $form->text('start_num'); $form->text('is_infinite');
$form->text('details_imgs'); $form->text('content'); $form->text('sort');
$form->text('tags'); $form->text('spec');
}); }}
|