fix(first-leg): identify and localize picking status in cabinet summary

This commit is contained in:
2026-10-03 11:53:50 +08:00
parent 5c53eba31b
commit 8e5fa0bebc
4 changed files with 26 additions and 2 deletions
@@ -8,6 +8,7 @@ import {
FIRST_LEG_PROGRESS_STAGES,
getFirstLegProgressIndex,
getFirstLegStatusLabel,
getFirstLegPickingStatusLabel,
getFirstLegStatusTone,
getFirstLegTransportModeLabel,
summarizeFirstLegCargo,
@@ -59,6 +60,15 @@ function validDraft() {
}
}
test('keeps picking states distinct from order completion and hides unknown internal codes', () => {
assert.equal(getFirstLegPickingStatusLabel('PENDING'), '待拣货')
assert.equal(getFirstLegPickingStatusLabel('IN_PROGRESS'), '拣货中')
assert.equal(getFirstLegPickingStatusLabel('COMPLETED'), '拣货完成')
assert.equal(getFirstLegPickingStatusLabel('NEW_INTERNAL_STATE'), '未知状态')
assert.equal(getFirstLegPickingStatusLabel(null), '待更新')
assert.equal(getFirstLegPickingStatusLabel(''), '待更新')
})
test('uses the confirmed status and transport labels', () => {
assert.equal(getFirstLegStatusLabel('CANCELLED'), '已取消')
assert.equal(getFirstLegStatusLabel('NOT_A_STATUS'), '未知状态')
@@ -19,6 +19,16 @@ export function getFirstLegStatusLabel(status: string) {
return statusLabels.get(canonicalStatus as FirstLegOrderStatus) ?? '未知状态'
}
export function getFirstLegPickingStatusLabel(status: string | null | undefined) {
if (!status) return '待更新'
const labels: Readonly<Record<string, string>> = {
PENDING: '待拣货',
IN_PROGRESS: '拣货中',
COMPLETED: '拣货完成',
}
return labels[status] ?? '未知状态'
}
export function getFirstLegTransportModeLabel(mode: FirstLegTransportMode | null) {
if (!mode) return '运输方式待更新'
return transportModeLabels.get(mode) ?? mode