header('用户信息');
$content->description('列表');
$content->body($this->grid());
});
}
public function create()
{
return Admin::content(function (Content $content) {
$content->header('用户信息');
$content->description('新增');
$content->body($this->form());
});
}
public function edit($id)
{
return Admin::content(function (Content $content) use ($id) {
$content->header('用户信息');
$content->description('列表');
$content->body($this->form($id)->edit($id));
});
}
protected function form($id = '')
{
return Admin::form(User::class, function (Form $form) use ($id) {
$form->display( 'uid' , 'Uid');
$form->text( 'company_name' , '单位名称')->required();
$form->text( 'department' , '部门')->required();
$form->text( 'username' , '用户名')->required();
$form->text( 'phone' , '手机号')->rules('required|min:11');
$form->email( 'email' , '邮箱')->required();
$form->password('password' , '密码')->rules('required|min:6');
$form->select( 'status' , '账号状态')->options([1 => '正常' , 2 => '冻结' , 3 => '待审核'])->required();
$form->multipleSelect('privilege_menu' , '权限菜单')->options(Menu::all()->pluck('menu_name' ,'id'));
// $form->number( 'chatgpt_num' , 'chatgpt使用次数');
$form->hidden( 'create_time');
$form->saving(function (Form $form) {
if(strlen($form->password) != 32) {
$form->password = md5(sha1($form->password));
$form->create_time = time();
}
});
});
}
// Grid
protected function grid()
{
return Admin::grid(User::class, function (Grid $grid) {
$grid->uid('编号')->sortable();
$grid->model()->orderBy('uid','desc');
$grid->company_name('单位名称');
$grid->department('部门');
$grid->username('用户名');
$grid->phone('手机号');
$grid->email('邮箱');
$grid->create_time('创建时间')->display(function ($create_time) {
return date('Y-m-d H:i:s' , $create_time);
});
$grid->status('账号状态')->display(function ($status){
if(1 == $status) {
return "正常";
}
if(2 == $status) {
return "冻结";
}
if(3 == $status) {
return "待审核";
}
return '---';
});
$grid->user_tag('用户标识')->display(function ($user_tag){
if(1 == $user_tag) {
return "菁苗";
}
if(2 == $user_tag) {
return "chatGpt";
}
return '---';
});
// $grid->chatgpt_num('chatgpt可使用次数');
$grid->privilege_menu('可查看菜单');
// 禁用导出数据按钮
$grid->actions(function ($actions) {
$actions->disableView();
//$actions->disableEdit();
});
$grid->filter(function($filter){
// 去掉默认的id过滤器
$filter->disableIdFilter();
// 在这里添加字段过滤器
$filter->equal('phone' , '输入手机号');
$filter->like('company_name' , '输入公司关键字');
$filter->equal('status' , '账号状态')->select([1 => '正常' , 2 => '冻结' , 3 => '待审核']);
});
});
}
}