column('id')->sortable(); $grid->column('sn'); $grid->column('user.phone')->copyable(); $grid->column('consignor.phone')->display(function ($value) { return $value??'系统'; }); $grid->column('total_amount')->prepend('¥'); $statusTexts = DealerOrderStatus::texts(); $grid->column('order_status')->display(function ($v) { return $this->order_status; })->using($statusTexts)->dot([ DealerOrderStatus::Pending->value => 'primary', DealerOrderStatus::Paying->value => 'danger', DealerOrderStatus::Confirming->value => 'warning', DealerOrderStatus::Paid->value => 'danger', DealerOrderStatus::Shipped->value => 'warning', DealerOrderStatus::Completed->value => 'success', DealerOrderStatus::Cancelled->value => '#b3b9bf', ]); // $grid->column('settle_state'); // $grid->column('pay_info'); // $grid->column('pay_image'); // $grid->column('pay_time'); // $grid->column('paied_time'); // $grid->column('shipping_time'); // $grid->column('shippinged_time'); $grid->column('created_at')->sortable(); // $grid->column('updated_at')->sortable(); $grid->actions(function (Grid\Displayers\Actions $actions) { if ($actions->row->status == DealerOrderStatus::Confirming && Admin::user()->can('dcat.admin.dealers_orders.paid')) { $actions->append(new DealerOrderPaid()); } if ($actions->row->status == DealerOrderStatus::Paid && Admin::user()->can('dcat.admin.dealers_orders.shipping')) { $actions->append(new DealerOrderShipping()); } }); $grid->filter(function (Grid\Filter $filter) { $filter->panel(); // $filter->equal('id'); }); }); } /** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new DealerOrder(), function (Show $show) { $show->field('id'); $show->field('sn'); $show->field('user_id'); $show->field('consignor_id'); $show->field('total_amount'); $show->field('status'); $show->field('settle_state'); $show->field('consignee_name'); $show->field('consignee_telephone'); $show->field('consignee_zone'); $show->field('consignee_address'); $show->field('pay_info'); $show->field('pay_image'); $show->field('pay_time'); $show->field('paied_time'); $show->field('shipping_time'); $show->field('shippinged_time'); $show->field('created_at'); $show->field('updated_at'); }); } /** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new DealerOrder(), function (Form $form) { $form->display('id'); $form->text('sn'); $form->text('user_id'); $form->text('consignor_id'); $form->text('total_amount'); $form->text('status'); $form->text('settle_state'); $form->text('consignee_name'); $form->text('consignee_telephone'); $form->text('consignee_zone'); $form->text('consignee_address'); $form->text('pay_info'); $form->text('pay_image'); $form->text('pay_time'); $form->text('paied_time'); $form->text('shipping_time'); $form->text('shippinged_time'); $form->display('created_at'); $form->display('updated_at'); }); } }