From 419d0e9d542b657748a7a2ad2ab45736f5c66ca6 Mon Sep 17 00:00:00 2001 From: mzl Date: Mon, 22 Sep 2025 16:47:50 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=87=E8=B4=AD=E5=8D=95=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/PurchaseOrdersController.php | 32 ++++++++++++------- app/common/service/PurchaseOrdersService.php | 7 ++-- 2 files changed, 24 insertions(+), 15 deletions(-) diff --git a/app/common/controller/PurchaseOrdersController.php b/app/common/controller/PurchaseOrdersController.php index f22e114..57ce0e0 100644 --- a/app/common/controller/PurchaseOrdersController.php +++ b/app/common/controller/PurchaseOrdersController.php @@ -47,7 +47,12 @@ class PurchaseOrdersController extends BaseController return $data; } - + /** + * 详情页数据格式化 + * + * @param array $data + * @return array + */ protected function showFormat($data) { $result = [ @@ -61,22 +66,25 @@ class PurchaseOrdersController extends BaseController 'status' => $data['status'], 'remark' => $data['remark'] ]; - + $temps = []; if (isset($data['items']) && count($data['items']) > 0) { foreach ($data['items'] as $record) { - $result['stock_order'][] = [ - 'id' => $record['stockOrder']['id'], - 'order_no' => $record['stockOrder']['order_no'], - 'salesperson_snapshot' => $record['stockOrder']['salesperson_snapshot'], - 'biz_date' => date('Y-m-d', $record['stockOrder']['biz_date']), - 'stock_order_items' => [ - 'id' => $record['stockOrderItems']['id'], - 'model_snapshot' => $record['stockOrderItems']['model_snapshot'], - 'unique_id' => $record['stockOrderItems']['unique_id'], - ] + if (!in_array($record['stockOrder']['id'], array_keys($temps))) { + $temps[$record['stockOrder']['id']] = [ + 'id' => $record['stockOrder']['id'], + 'order_no' => $record['stockOrder']['order_no'], + 'salesperson_snapshot' => $record['stockOrder']['salesperson_snapshot'], + 'biz_date' => date('Y-m-d', $record['stockOrder']['biz_date']) + ]; + } + $temps[$record['stockOrder']['id']]['stock_order_items'][] =[ + 'id' => $record['stockOrderItems']['id'], + 'model_snapshot' => $record['stockOrderItems']['model_snapshot'], + 'unique_id' => $record['stockOrderItems']['unique_id'], ]; } } + $result['stock_order'] = array_values($temps); return $result; } diff --git a/app/common/service/PurchaseOrdersService.php b/app/common/service/PurchaseOrdersService.php index 9f1383e..bf4800b 100644 --- a/app/common/service/PurchaseOrdersService.php +++ b/app/common/service/PurchaseOrdersService.php @@ -160,9 +160,10 @@ class PurchaseOrdersService $config['model'] = $this->modelClass; switch ($scene) { - // case 'index': - // // $config['with']['buyer'] = ['name', 'avatar']; - // break; + case 'index': + // $config['where']['status'] = 1; + $config['order']['id'] = 'desc'; + break; case 'update': $config['where']['id'] = $p['id'] ?? 0; break;