feat(client): add customs documents and sailing prices pages

This commit is contained in:
2026-09-25 22:23:11 +08:00
parent fc008886fc
commit e62278e1c9
5 changed files with 128 additions and 3 deletions
+4 -2
View File
@@ -52,7 +52,7 @@ test('organises customer-relevant business pages under five task-oriented sideba
{ title: '首页', children: undefined },
{
title: '订单中心',
children: ['头程订单', '海外采购', '美国本土卡', '美本土散板'],
children: ['头程订单', '报关资料', '船期价格', '海外采购', '美国本土卡', '美本土散板'],
},
{
title: '海外仓',
@@ -86,6 +86,8 @@ test('flattens visible leaves with unique paths', () => {
assert.deepEqual(paths, [
'/',
'/orders/first-leg',
'/first-leg/customs-documents',
'/first-leg/sailing-prices',
'/cross-border/procurement',
'/cross-border/domestic-trucking',
'/cross-border/pallet-shipping',
@@ -109,7 +111,7 @@ test('flattens visible leaves with unique paths', () => {
test('filters inaccessible leaves and empty navigation groups', () => {
const visible = filterNavigationByPermissions(clientNavigation, ['account:profile:view', 'order:first-leg:list'])
assert.deepEqual(getNavigationLeaves(visible).map((item) => item.path), ['/orders/first-leg'])
assert.deepEqual(getNavigationLeaves(visible).map((item) => item.path), ['/orders/first-leg', '/first-leg/customs-documents', '/first-leg/sailing-prices'])
assert.deepEqual(visible.map((item) => item.title), ['订单中心'])
assert.equal(getFirstAccessiblePath(['account:profile:view']), '/account/profile')
assert.equal(getFirstAccessiblePath([]), '/forbidden')
+2
View File
@@ -52,6 +52,8 @@ export const clientNavigation: ClientNavigationNode[] = [
icon: ClipboardList,
children: [
requireLeaf('first-leg-orders', '头程订单'),
requireLeaf('first-leg-customs-documents', '报关资料'),
requireLeaf('first-leg-sailing-prices', '船期价格'),
requireLeaf('cross-border-procurement'),
requireLeaf('cross-border-domestic-trucking'),
requireLeaf('cross-border-pallet-shipping'),