From bedd3215298826533dfb56580a4a0a44e2d25abe Mon Sep 17 00:00:00 2001 From: limeng <1131177064@qq.com> Date: Mon, 12 Oct 2026 12:16:42 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E5=BF=AB=E9=80=92=E5=BA=94=E4=BB=98):=20?= =?UTF-8?q?=E5=B0=86=E6=8A=A5=E4=BB=B7=E6=A8=A1=E5=9D=97=E6=94=B6=E7=BA=B3?= =?UTF-8?q?=E5=88=B0=E5=BF=AB=E9=80=92=E6=8A=A5=E4=BB=B7=E7=9B=AE=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Settings/Navigation.php | 2 +- app/Utilities/BusinessNavigation.php | 7 +++ config/business_navigation.php | 28 ++++++---- .../final-workspace.blade.php | 46 +++++++++++++++- .../views/settings/navigation/edit.blade.php | 4 +- .../Business/QuoteManagementPageTest.php | 55 ++++++++++++++++++- tests/Feature/Settings/NavigationTest.php | 12 +++- 7 files changed, 135 insertions(+), 19 deletions(-) diff --git a/app/Http/Controllers/Settings/Navigation.php b/app/Http/Controllers/Settings/Navigation.php index 2ded2fc8..c3d63f62 100644 --- a/app/Http/Controllers/Settings/Navigation.php +++ b/app/Http/Controllers/Settings/Navigation.php @@ -49,7 +49,7 @@ class Navigation extends Controller $titles['sections'][$sectionSlug] = $sectionTitle; } - foreach ($section['pages'] ?? [] as $page) { + foreach (collect($section['pages'] ?? [])->flatMap(fn (array $page) => [$page, ...($page['children'] ?? [])]) as $page) { $pageTitle = trim((string) ($pageTitles[$sectionSlug][$page['slug']] ?? '')); if ($pageTitle !== '') { diff --git a/app/Utilities/BusinessNavigation.php b/app/Utilities/BusinessNavigation.php index 6aeb952a..6aca5455 100644 --- a/app/Utilities/BusinessNavigation.php +++ b/app/Utilities/BusinessNavigation.php @@ -23,6 +23,13 @@ class BusinessNavigation $pageTitles[$sectionSlug][$page['slug']] ?? null, $page['title'] ); + + foreach ($page['children'] ?? [] as $childIndex => $child) { + $section['pages'][$pageIndex]['children'][$childIndex]['title'] = self::title( + $pageTitles[$sectionSlug][$child['slug']] ?? null, + $child['title'] + ); + } } } unset($section); diff --git a/config/business_navigation.php b/config/business_navigation.php index 787e2384..3a0d7ef3 100644 --- a/config/business_navigation.php +++ b/config/business_navigation.php @@ -701,9 +701,23 @@ $navigation = [ 'title' => '快递应付', 'icon' => 'local_shipping', 'pages' => [ - ['slug' => 'quote-management', 'title' => '报价管理'], - ['slug' => 'courier-information', 'title' => '快递资料'], - ['slug' => 'agreement-signing', 'title' => '协议签署'], + [ + 'slug' => 'courier-quote', + 'title' => '快递报价', + 'children' => [ + ['slug' => 'quote-management', 'title' => '报价管理'], + ['slug' => 'courier-information', 'title' => '快递资料'], + ['slug' => 'agreement-signing', 'title' => '协议签署'], + [ + 'slug' => 'courier-surcharge', + 'title' => '附加费报价维护', + 'tabs' => [ + ['slug' => 'quotes', 'title' => '附加费报价'], + ['slug' => 'settlement', 'title' => '附加费结算'], + ], + ], + ], + ], ['slug' => 'freight-reconciliation', 'title' => '运费对账'], ['slug' => 'shipping-data', 'title' => '发货数据'], ['slug' => 'return-pickup-management', 'title' => '退货取件管理'], @@ -712,14 +726,6 @@ $navigation = [ ['slug' => 'compensation-details', 'title' => '赔偿明细'], ['slug' => 'advance-details', 'title' => '借支明细'], ['slug' => 'other-adjustments', 'title' => '其他扣款补款'], - [ - 'slug' => 'courier-surcharge', - 'title' => '附加费报价维护', - 'tabs' => [ - ['slug' => 'quotes', 'title' => '附加费报价'], - ['slug' => 'settlement', 'title' => '附加费结算'], - ], - ], ['slug' => 'payable-cloud-warehouse-vehicle-fee', 'title' => '应付云仓车费'], ['slug' => 'courier-payables-report', 'title' => '快递应付表'], ['slug' => 'freight-difference', 'title' => '运费差'], diff --git a/resources/views/business/pages/courier-payables/final-workspace.blade.php b/resources/views/business/pages/courier-payables/final-workspace.blade.php index 0268f8dc..071beb8e 100644 --- a/resources/views/business/pages/courier-payables/final-workspace.blade.php +++ b/resources/views/business/pages/courier-payables/final-workspace.blade.php @@ -5,10 +5,26 @@
+ @foreach ($courierPages as $item) + @if (!empty($item['children'])) + + @endif + @endforeach
@if (empty($courierPages)) @@ -19,7 +35,12 @@