From e2e3479851b210651f6da31f8082771e66c12a7b Mon Sep 17 00:00:00 2001 From: koogua Date: Thu, 7 Oct 2021 14:47:27 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E4=BC=9A=E9=80=80=E6=AC=BE=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E4=B8=AD=E5=A2=9E=E5=8A=A0me=E5=B1=9E=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Builders/RefundList.php | 19 +++++++++++++++++++ .../Logic/User/Console/RefundList.php | 5 ++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/app/Builders/RefundList.php b/app/Builders/RefundList.php index 396bdd44..6452288d 100644 --- a/app/Builders/RefundList.php +++ b/app/Builders/RefundList.php @@ -7,6 +7,7 @@ namespace App\Builders; +use App\Models\Refund as RefundModel; use App\Repos\Order as OrderRepo; use App\Repos\User as UserRepo; @@ -35,6 +36,24 @@ class RefundList extends Builder return $refunds; } + public function handleMeInfo(array $refund) + { + $me = [ + 'allow_cancel' => 0, + ]; + + $statusTypes = [ + RefundModel::STATUS_PENDING, + RefundModel::STATUS_APPROVED, + ]; + + if (in_array($refund['status'], $statusTypes)) { + $me['allow_cancel'] = 1; + } + + return $me; + } + public function getOrders(array $trades) { $ids = kg_array_column($trades, 'order_id'); diff --git a/app/Services/Logic/User/Console/RefundList.php b/app/Services/Logic/User/Console/RefundList.php index 09704ef9..dbfb4ae9 100644 --- a/app/Services/Logic/User/Console/RefundList.php +++ b/app/Services/Logic/User/Console/RefundList.php @@ -65,8 +65,9 @@ class RefundList extends LogicService $order = $orders[$refund['order_id']] ?? new \stdClass(); + $me = $builder->handleMeInfo($refund); + $items[] = [ - 'order' => $order, 'sn' => $refund['sn'], 'subject' => $refund['subject'], 'amount' => (float)$refund['amount'], @@ -75,6 +76,8 @@ class RefundList extends LogicService 'review_note' => $refund['review_note'], 'create_time' => $refund['create_time'], 'update_time' => $refund['update_time'], + 'order' => $order, + 'me' => $me, ]; }