diff --git a/scripts/admin-test-env-modules/phase3-loading.mjs b/scripts/admin-test-env-modules/phase3-loading.mjs index e34fef960..9941d8543 100644 --- a/scripts/admin-test-env-modules/phase3-loading.mjs +++ b/scripts/admin-test-env-modules/phase3-loading.mjs @@ -99,7 +99,7 @@ export async function uploadEvidence(context, taskId, warehouseId, evidenceType, form.append('file', new Blob([png], { type: 'image/png' }), fileName) try { const response = await fetch(`${context.options.gateway}${path}`, { - method: 'POST', headers: { Accept: 'application/json', Authorization: `Bearer ${context.token}`, + method: 'POST', headers: { Accept: 'application/json', Authorization: `Bearer ${context.pdaToken || context.token}`, 'Idempotency-Key': `${context.marker}-p3-evidence-${keySuffix}`.slice(0, 128) }, body: form, signal: AbortSignal.timeout(60_000), }) @@ -692,7 +692,7 @@ export async function run(context) { && Number(confirmReplay.body?.data?.version) === Number(confirmed.version), `HTTP=${confirmReplay.http}, code=${codeOf(confirmReplay)}, requestId=${confirmReplay.requestId || 'missing'}, traceId=${confirmReplay.traceId || 'missing'}`, OPTIONS) const confirmSameKeyDifferentBody = await request(context, 'POST', confirmPath, - { expectedVersion: Number(confirmed.version) }, confirmHeaders) + { expectedVersion: Number(confirmed.version), assigneeId: id(pdaOperator.userId) }, confirmHeaders) context.addStep(MODULE, '计划级确认同 key 异参返回冲突', confirmSameKeyDifferentBody, confirmSameKeyDifferentBody.http === 200 && codeOf(confirmSameKeyDifferentBody) === 'A0409', `HTTP=${confirmSameKeyDifferentBody.http}, code=${codeOf(confirmSameKeyDifferentBody)}, requestId=${confirmSameKeyDifferentBody.requestId || 'missing'}, traceId=${confirmSameKeyDifferentBody.traceId || 'missing'}`, OPTIONS) @@ -724,7 +724,7 @@ export async function run(context) { context.assert(MODULE, '柜次 PDA 任务与桥接入库明细一致', canonicalTaskResponse, Boolean(canonicalTaskId) && canonicalTaskId === confirmedTaskId && id(canonicalTask?.loadingPlanId) === loadingPlanId && id(canonicalTask?.containerBookingId) === containerBookingId - && canonicalTask?.workflowStatus === 'UNASSIGNED' && canonicalPickItems.length > 0, + && canonicalTask?.workflowStatus === 'IN_PROGRESS' && canonicalPickItems.length > 0, `taskId=${canonicalTaskId || 'missing'}, itemCount=${canonicalPickItems.length}`, OPTIONS) if (!canonicalTaskId || !canonicalPickItems.length) return @@ -920,9 +920,12 @@ export async function run(context) { && Boolean(customerIsolatedSnapshot.requestId) && Boolean(customerIsolatedSnapshot.traceId), `HTTP=${customerIsolatedSnapshot.http}, code=${codeOf(customerIsolatedSnapshot)}, requestId=${customerIsolatedSnapshot.requestId || 'missing'}, traceId=${customerIsolatedSnapshot.traceId || 'missing'}`, OPTIONS) - const currentAssigneeId = Number(claimed?.assignment?.assigneeId) + const currentAssigneeId = id(claimed?.assignment?.assigneeId) + const otherOperator = (Array.isArray(pdaOperators) ? pdaOperators : pdaOperators?.records || []) + .find((operator) => id(operator?.userId) !== currentAssigneeId) + if (!otherOperator?.userId) return const reassigned = await request(context, 'POST', `${pdaBase}/tasks/${canonicalTaskId}/assign`, { - assigneeId: currentAssigneeId + 1000000, assigneeName: `${context.marker}-other-picker`, + assigneeId: id(otherOperator.userId), assigneeName: otherOperator.displayName || otherOperator.username || `${context.marker}-other-picker`, expectedAssignmentVersion: Number(claimed?.assignment?.version), operationId: `${context.marker}-bridge-assign-other`.slice(0, 128), })