disableRowSelector();
$grid->disableColumnSelector();
$grid->disableExport();
$grid->disableActions();
$grid->model()->orderBy('created_at', 'desc');
$grid->column('order_id', '订单号');
$grid->column('user_id', '用户编号');
$grid->column('用户账号')->display(function () {
return $this->user->username;
});
$grid->column('用户名称')->display(function () {
return $this->user->info->nickname;
});
$grid->column('num', '购卡数量');
$grid->column('price', '购卡金额');
$grid->column('status', '状态')->display(function () {
return $this->status_text;
})->label([
0 => 'warning',
1 => 'success',
2 => 'success',
3 => 'success',
4 => 'info',
]);
$grid->column('收货地址')->display(function () {
if ($this->express) {
$res = $this->express->name . "
";
$res .= $this->express->mobile . "
";
$res .= $this->express->address . "
";
return $res;
} else {
return '';
}
});
$grid->column('物流')->display(function () {
if ($this->express) {
$res = get_deliver_name($this->express->company) . "
";
$res .= $this->express->number . "
";
return $res;
} else {
return '';
}
});
$grid->filter(function ($filter) {
$filter->disableIdFilter();
$filter->column(1 / 3, function ($filter) {
$filter->like('order_id', '订单编号');
$filter->equal('status', '订单状态')->select([
0 => '待支付',
1 => '已支付',
2 => '已发货',
3 => '已收货',
]);
});
$filter->column(1 / 3, function ($filter) {
$filter->where(function ($query) {
$query->whereHas('user', function ($query) {
$query->whereHas('info', function ($query) {
$query->where('nickname', 'like', "%{$this->input}%");
});
});
}, '下单用户');
$filter->equal('type', '订单类型')->select(['L' => '拉', 'K' => '卡', 'F' => '蝠']);
});
// $filter->column(1 / 3, function ($filter) {
// $filter->between('created_at', '下单时间')->datetime();
// });
});
return $grid;
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
$form = new Form(new CardOrder);
$form->text('user_id', '购卡用户ID')->rules('required');
$form->number('num', '购卡数量')->rules('required');
$form->currency('price', '购卡金额')->symbol('¥')->rules('required');
$form->textarea('remark', '备注')->rules('max:255', ['max' => '简介最多255字']);
$form->hidden('status')->default(1);
return $form;
}
}