From 42ac296c1c458900d9b1e1edff360a9be4f9c174 Mon Sep 17 00:00:00 2001 From: vine_liutk <961510893@qq.com> Date: Mon, 24 Jan 2022 17:18:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=B9=E9=9B=B6=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E5=A4=87=E6=B3=A8=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Actions/Show/DealerOrderRemark.php | 32 +++++++++ .../Controllers/DealerOrderController.php | 6 +- app/Admin/Forms/DealerOrderRemark.php | 70 +++++++++++++++++++ app/Models/DealerOrder.php | 1 + ...0832_add_remark_to_dealer_orders_table.php | 34 +++++++++ database/seeders/AdminPermissionSeeder.php | 1 + resources/lang/zh_CN/dealer-order.php | 1 + 7 files changed, 144 insertions(+), 1 deletion(-) create mode 100644 app/Admin/Actions/Show/DealerOrderRemark.php create mode 100644 app/Admin/Forms/DealerOrderRemark.php create mode 100644 database/migrations/2022_01_24_170832_add_remark_to_dealer_orders_table.php diff --git a/app/Admin/Actions/Show/DealerOrderRemark.php b/app/Admin/Actions/Show/DealerOrderRemark.php new file mode 100644 index 00000000..1bdbd565 --- /dev/null +++ b/app/Admin/Actions/Show/DealerOrderRemark.php @@ -0,0 +1,32 @@ + 备注'; + + /** + * 按钮样式定义,默认 btn btn-white waves-effect + * + * @var string + */ + protected $style = 'btn-success'; + + public function render() + { + $form = DealerOrderRemarkForm::make()->payload(['id'=>$this->getKey()]); + return Modal::make() + ->lg() + ->title($this->title) + ->body($form) + ->button("style}\">{$this->title}  "); + } +} diff --git a/app/Admin/Controllers/DealerOrderController.php b/app/Admin/Controllers/DealerOrderController.php index 514f7603..7cad5bf6 100644 --- a/app/Admin/Controllers/DealerOrderController.php +++ b/app/Admin/Controllers/DealerOrderController.php @@ -5,6 +5,7 @@ namespace App\Admin\Controllers; use App\Admin\Actions\Grid\DealerOrderAllocate; use App\Admin\Actions\Grid\DealerOrderPaid; use App\Admin\Actions\Grid\DealerOrderShipping; +use App\Admin\Actions\Show\DealerOrderRemark; use App\Admin\Repositories\DealerOrder; use App\Enums\DealerOrderStatus; use App\Models\DealerOrderProduct; @@ -126,7 +127,7 @@ class DealerOrderController extends AdminController return $value??'系统'; }); $show->field('pay_image')->image(); - // $show->field('order_status') + $show->field('remark'); $show->divider(); $show->field('consignee_name'); $show->field('consignee_telephone'); @@ -185,6 +186,9 @@ class DealerOrderController extends AdminController ->tools(function (Show\Tools $tools) use ($show) { $tools->disableEdit(); $tools->disableDelete(); + if (Admin::user()->can('dcat.admin.dealer_orders.remark')) { + $tools->append(new DealerOrderRemark()); + } }); })); }); diff --git a/app/Admin/Forms/DealerOrderRemark.php b/app/Admin/Forms/DealerOrderRemark.php new file mode 100644 index 00000000..c082aa4f --- /dev/null +++ b/app/Admin/Forms/DealerOrderRemark.php @@ -0,0 +1,70 @@ +can('dcat.admin.dealer_orders.remark'); + } + + /** + * Handle the form request. + * + * @param array $input + * + * @return mixed + */ + public function handle(array $input) + { + $orderId = $this->payload['id'] ?? 0; + $order = DealerOrder::findOrFail($orderId); + + $remark = $input['remark']??''; + // try { + // DB::beginTransaction(); + $order->update([ + 'remark'=> $remark, + ]); + // DB::commit(); + // } catch (Throwable $th) { + // DB::rollBack(); + // report($th); + // throw new BizException('操作失败:'.$th->getMessage()); + // } + return $this->response() + ->success(__('admin.update_succeeded')) + ->refresh(); + } + + /** + * Build a form here. + */ + public function form() + { + $orderId = $this->payload['id'] ?? 0; + $order = DealerOrder::findOrFail($orderId); + + $this->text('remark')->required()->value($order->remark); + + $this->disableResetButton(); + } +} diff --git a/app/Models/DealerOrder.php b/app/Models/DealerOrder.php index bbb59909..fa9b23dc 100644 --- a/app/Models/DealerOrder.php +++ b/app/Models/DealerOrder.php @@ -45,6 +45,7 @@ class DealerOrder extends Model 'shipping_time', 'shippinged_time', 'allocated_at', //分配时间 + 'remark', ]; /** diff --git a/database/migrations/2022_01_24_170832_add_remark_to_dealer_orders_table.php b/database/migrations/2022_01_24_170832_add_remark_to_dealer_orders_table.php new file mode 100644 index 00000000..d0d3f454 --- /dev/null +++ b/database/migrations/2022_01_24_170832_add_remark_to_dealer_orders_table.php @@ -0,0 +1,34 @@ +string('remark')->nullable()->comment('订单备注'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('dealer_orders', function (Blueprint $table) { + // + $table->dropColumn('remark'); + }); + } +} diff --git a/database/seeders/AdminPermissionSeeder.php b/database/seeders/AdminPermissionSeeder.php index 87cf4c20..16c3eecf 100644 --- a/database/seeders/AdminPermissionSeeder.php +++ b/database/seeders/AdminPermissionSeeder.php @@ -322,6 +322,7 @@ class AdminPermissionSeeder extends Seeder 'shipping'=>['name' =>'确认发货'], 'allocate'=>['name' =>'自动分配'], 'manager'=>['name' =>'系统订单'], + 'remark'=>['name' =>'备注'], ], ], 'dealer_earnings'=>[ diff --git a/resources/lang/zh_CN/dealer-order.php b/resources/lang/zh_CN/dealer-order.php index 8bf5de78..2718e254 100644 --- a/resources/lang/zh_CN/dealer-order.php +++ b/resources/lang/zh_CN/dealer-order.php @@ -22,6 +22,7 @@ return [ 'consignor' => [ 'phone' => '发货用户', ], + 'remark' => '备注', 'total_amount' => '订单价格', 'status' => '状态', 'order_status'=>'状态',