feat: add inbound hold controls

This commit is contained in:
2026-09-07 11:20:43 +08:00
parent 116f5dc494
commit 3b15c4b597
10 changed files with 352 additions and 13 deletions
@@ -79,6 +79,19 @@ describe('UnifiedOrdersView contract', () => {
expect(source).toContain('fbaCode: trimmed(activeFilters.fbaCode)')
})
it('keeps hold state in the other tab and consumes only frozen server capabilities', () => {
for (const marker of [
'summary.holdFlag', 'summary.currentHoldReason', 'getPlatformInboundHold',
'holdDetail.value?.canHold', 'holdDetail.value?.canRelease', "can('platform:firstleg:inbound:hold')",
'扣货历史', '已关联凭证', '订单尚未生成入库单,扣货状态仅可查看',
]) expect(source).toContain(marker)
expect(source).toContain("await Promise.all([loadDetail(true), loadOrders()])")
expect(source).not.toContain('detail.summary.holdCargo')
expect(source).not.toContain('detail.summary.holdReason')
expect(source).not.toContain('evidenceFileId: hold')
expect(source).not.toContain('type="file"')
})
it('uses tabs as the only order-status filter and keeps advanced controls inside QueryToolbar', () => {
expect(source).toContain('mainStatus: selectedStatus.value || undefined')
expect(source).toContain('<template #actions>')