baseCRUD() ->tableLayout('fixed') ->headerToolbar([ $this->createButton(true)->visible(Admin::user()->can('admin.store.employees.create')), ...$this->baseHeaderToolBar(), ]) ->bulkActions([]) ->filter($this->baseFilter()->body([ amis()->GroupControl()->mode('horizontal')->body([ amisMake()->SelectControl()->name('store_id')->label(__('employee.store_id')) ->source(admin_url('api/stores?_all=1')) ->labelField('title') ->valueField('id') ->columnRatio(3) ->clearable(), amisMake()->TextControl()->name('employee_search')->label(__('store.employees'))->placeholder('姓名/电话')->columnRatio(3)->clearable(), ]), ])) ->columns([ amisMake()->TableColumn()->name('id')->label(__('employee.id')), amisMake()->TableColumn()->name('store.title')->label(__('employee.store_id')), amisMake()->TableColumn()->name('name')->label(__('employee.name')), amisMake()->TableColumn()->name('store.master_id')->label(__('store.master_id'))->set('type', 'tpl')->tpl('${store.master_id == id ? "店长" : "--"}'), amisMake()->TableColumn()->name('phone')->label(__('employee.phone')), $this->rowActions([ $this->rowDeleteButton()->visible(Admin::user()->can('admin.store.employees.delete')), ]), ]); return $this->baseList($crud); } public function form($edit): Form { return $this->baseForm()->title('')->body([ amisMake()->SelectControl()->name('store_id')->label(__('employee.store_id')) ->source(admin_url('api/stores?_all=1')) ->labelField('title') ->valueField('id') ->required(), amisMake()->SelectControl()->name('employee_id')->label(__('store.employees')) ->source(admin_url('api/employees?_all=1&store_id=0&enable=1')) ->labelField('name') ->valueField('id') ->multiple() ->joinValues(false) ->extractValue() ->searchable() ->required(), ]); } }