// 仅供当前填写页与确认页传递数据,不写本机存储、不发起云端保存。 let currentToken = '' let currentInput: UTSJSONObject | null = null let submissionFingerprint = '' let submissionKey = '' export function clearAssessmentFlow(): void { currentToken = ''; currentInput = null; submissionFingerprint = ''; submissionKey = '' } // 只在本次流程内复用幂等键:网络超时可安全重试,修改提交内容时生成新键。 export function assessmentRequestKey(token: string, fingerprint: string): string { const signature = token + ':' + fingerprint if (submissionFingerprint != signature || submissionKey.length == 0) { submissionFingerprint = signature submissionKey = 'assessment_' + Date.now().toString() + '_' + Math.random().toString(36).substring(2, 14) } return submissionKey } export function readAssessmentFlow(token: string): UTSJSONObject | null { if (token.length == 0 || token != currentToken) { clearAssessmentFlow(); return null } return currentInput } export function writeAssessmentFlow(token: string, input: UTSJSONObject): void { if (token.length == 0) { clearAssessmentFlow(); return } currentToken = token; currentInput = input }