From 0890778f6188126bba780908330aa43457716f34 Mon Sep 17 00:00:00 2001 From: vine_liutk <961510893@qq.com> Date: Tue, 4 Jan 2022 13:14:07 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=94=AE=E5=90=8E=E5=8F=91?= =?UTF-8?q?=E8=B5=B7=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Controllers/OrderController.php | 13 ++++++------- app/Models/AfterSale.php | 2 +- app/Models/OrderProduct.php | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/app/Admin/Controllers/OrderController.php b/app/Admin/Controllers/OrderController.php index 5e2a873f..30a536c9 100644 --- a/app/Admin/Controllers/OrderController.php +++ b/app/Admin/Controllers/OrderController.php @@ -132,7 +132,7 @@ class OrderController extends AdminController { return function (Row $row) use ($id) { $row->column(5, function ($column) use ($id) { - $builder = Order::with(['user', 'userCoupon', 'tags']); + $builder = OrderModel::with(['user', 'userCoupon', 'tags'])->withCount('afterSales'); $column->row(Show::make($id, $builder, function (Show $show) { // $show->field('id'); $show->field('sn'); @@ -233,16 +233,15 @@ class OrderController extends AdminController $grid->column('product_total_amount')->display(function () { return bcdiv($this->sell_price * $this->quantity, 100, 2); })->prepend('¥'); - $grid->column('after_sale_state')->using([ - 0=>'正常', - 1=>'售后中', - 2=>'售后完成', + $grid->column('afterSalesCount', '售后情况')->display(function ($value) { + return $value>0 ? 1 : 0; + })->using([ + 0=>'正常', 1=>'有售后', ])->dot([ 0=>'success', 1=>'danger', - 2=>'primary', ])->if(function () { - return in_array($this->after_sale_state, [1, 2]) && Admin::user()->can('dcat.admin.after_sales.index'); + return $this->afterSalesCount>0 && Admin::user()->can('dcat.admin.after_sales.index'); }) ->then(function (Column $column) { $column->link(function ($value) { diff --git a/app/Models/AfterSale.php b/app/Models/AfterSale.php index ca28f856..db5cb71e 100644 --- a/app/Models/AfterSale.php +++ b/app/Models/AfterSale.php @@ -220,7 +220,7 @@ class AfterSale extends Model if ($afterSale->state == self::STATE_FINISH) { $afterSale->createFinishLog(); $afterSale->orderProduct->update([ - 'after_sale_state'=>2, + 'after_sale_state'=>0, ]); } }); diff --git a/app/Models/OrderProduct.php b/app/Models/OrderProduct.php index 93a5630d..18ae97d9 100644 --- a/app/Models/OrderProduct.php +++ b/app/Models/OrderProduct.php @@ -103,7 +103,7 @@ class OrderProduct extends Model //老判断,有过期时间,且未到过期时间,未发起过售后 // $oldJudge = !is_null($this->after_expire_at) && $this->after_expire_at > now() && $this->after_sale_state == 0; - //新判断, 有发货单,在售后时间范围内, 未发起过售后; + //新判断, 有发货单,在售后时间范围内, 当前无售后; if ($this->packages()->where('is_failed', false)->count() >0) { if ((is_null($this->after_expire_at) || $this->after_expire_at > now()) && $this->after_sale_state == 0) { $res = true;