|
|
<?php
namespace App\Admin\Controllers;
use App\Admin\Repositories\LanzuServiceSpeaker;use Dcat\Admin\Form;use Dcat\Admin\Grid;use Dcat\Admin\Show;use Dcat\Admin\Controllers\AdminController;use App\Models\v3\Market as MarketModel;use App\Models\v3\Store as StoreModel;use Illuminate\Http\Request;
class LanzuServiceSpeakerController extends AdminController{ /** * Make a grid builder. * * @return Grid */
protected $title = '播报机管理';
protected function grid() { return Grid::make(new LanzuServiceSpeaker(['store']), function (Grid $grid) { $grid->model()->orderBy('updated_at', 'desc'); $grid->id->sortable(); $grid->column('device_name', '设备编号'); $grid->column('store_id', '商户ID'); $grid->column('store.name', '商户名'); $grid->column('is_bind', '是否绑定')->switch(); // $grid->column('is_bind')
// ->using([0 => '未绑定', 1 => '已绑定'])
// ->label([0 => 'danger', 1 => 'success']);
$grid->column('bind_time_text', '绑定时间')->sortable();
$grid->filter(function (Grid\Filter $filter) { $storeList = StoreModel::getStoreArray(); $filter->equal('id'); $filter->like('device_name', '设备编号'); $filter->equal('store_id','商户')->select($storeList); }); }); }
/** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new LanzuServiceSpeaker(), function (Show $show) { $show->id; $show->created_at->as(function ($time) { if ($time) { return date('Y-m-d H:i', $time); } else { return '-'; }
}); $show->updated_at->as(function ($time) { if ($time) { return date('Y-m-d H:i', $time); } else { return '-'; }
}); }); }
/** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new LanzuServiceSpeaker(), function (Form $form) { $form->hidden('id'); $form->text("device_name", '设备编号')->required(); //$form->number("store_id",'商户ID')->required();
// $form->select('market_id','所在市场')->options('/api/getAllMarket');
$storeList = StoreModel::getStoreArray(); $form->select('store_id', '商户')->options($storeList); $form->switch('is_bind', '是否绑定') ->customFormat(function ($v) { return $v == 1 ? 1 : 0; }) ->saving(function ($v) { return $v == 1 ? 1 : 0; }); //$form->image("device_name")->disk('oss');
$form->disableResetButton(); $form->disableViewCheck(); $form->disableEditingCheck(); $form->disableCreatingCheck(); }); }
public function getAllMarkets() { $data = []; $markets = MarketModel::all(); foreach ($markets as $market) { $item = []; $item['id'] = $market->id; $item['text'] = $market->name; $data[] = $item; } return response()->json($data); }
public function getStores(Request $request) { $q = $request->get('q'); return StoreModel::where('name', 'like', "%$q%")->paginate(null, ['id', 'name as text']); }}
|