model()->orderBy('id', 'desc');
$grid->column('id')->sortable();
$grid->column('owers', '头像')->display(function ($v) {
return '
';
})->width('50px');
$grid->column('ower', '用户名称')->display(function ($v) {
if($v && $v['user_name']){
return ''.$v['user_name'].'' ?? '用户已删除';
}
return '用户已删除';
})->width('100px');
$grid->column('voter_id');
$grid->column('relative_id');
$grid->column('show_name');
$grid->column('work_name');
// $grid->column('work_desc');
$grid->column('img_urls')->display(function ($v){
$str = '';
if($v){
foreach ($v as $img){
$str .= '';
break;
}
}
return $str;
});
$grid->column('video_url')->display(function ($v){
if($v){
return '';
}
return '';
});
$grid->column('video_cover')->image();
$grid->column('contact_text');
$grid->column('status')->switch();
// $grid->column('created_at');
$grid->column('updated_at')->sortable();
$grid->filter(function (Grid\Filter $filter) {
$filter->equal('id');
$filter->equal('voter_id');
});
$grid->actions(function (Grid\Displayers\Actions $actions) {
$actions->append((new RefusePlayerNoticeAction())->setKey($this->id));
});
});
}
/**
* Make a show builder.
*
* @param mixed $id
*
* @return Show
*/
protected function detail($id)
{
return Show::make($id, new WxVoterPlayer(), function (Show $show) {
$show->field('id');
$show->field('user_id');
$show->field('voter_id');
$show->field('relative_id');
$show->field('show_name');
$show->field('work_name');
$show->field('work_desc');
$show->field('img_urls');
$show->field('video_url');
$show->field('video_cover');
$show->field('contact_text');
$show->field('status');
$show->field('created_at');
$show->field('updated_at');
});
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
return Form::make(new WxVoterPlayer(), function (Form $form) {
$form->display('id');
$form->select('user_id', '用户')->options(function ($id) {
$user = \App\Models\User\WxUser::find($id);
if ($user) {
return [$user->id => $user->user_name];
}
})->ajax('select/users');
$form->select('voter_id')->options(function ($id) {
$user = WxVoter::find($id);
if ($user) {
return [$user->id => $user->title];
}
})->ajax('select/voters');
$form->text('relative_id', '编号')->help('不能重复,建议从1开始加');
$form->text('show_name');
$form->text('work_name');
$form->textarea('work_desc');
$form->multipleImage('img_urls')->limit(100)->url('files/uploads')->uniqueName()->autoUpload()->saveAsJson();
$form->text('video_url');
$form->text('video_cover');
$form->text('contact_text');
$form->switch('status')->default(1);
$form->display('created_at');
$form->display('updated_at');
$form->deleting(function (Form $form){
global $__MINI_GLOBAL_TENANT_ID__;
if($__MINI_GLOBAL_TENANT_ID__ > 0){
return $form->response()->error('权限不足,不可以删除其他分站对象');
}
});
});
}
}