diff --git a/src/utils/formBuilder.js b/src/utils/formBuilder.js index 392ede1..5d81148 100644 --- a/src/utils/formBuilder.js +++ b/src/utils/formBuilder.js @@ -1544,6 +1544,13 @@ export default function formBuilder( let jointlySignContent = []; let isJointly = false; if (shouldRenderJointlySignContent(info)) this.jointlySignLog.forEach((log) => { + // oa_flow_logs.data 是整张表单的快照,可能携带上一个节点已填写的字段。 + // 只有当前日志所属节点确实拥有该字段的写权限,才可将其视为该节点的签名。 + const canWriteField = log.node?.fields?.some( + (field) => Number(field.field_id) === Number(info.id) && field.type === "write" + ); + if (!canWriteField) return; + const data = JSON.parse(log.data); Object.entries(data)?.forEach(([key, value]) => { if ( @@ -2765,6 +2772,13 @@ export default function formBuilder( let jointlySignContent = []; let isJointly = false; if (shouldRenderJointlySignContent(info)) this.jointlySignLog.forEach((log) => { + // oa_flow_logs.data 是整张表单的快照,可能携带上一个节点已填写的字段。 + // 只有当前日志所属节点确实拥有该字段的写权限,才可将其视为该节点的签名。 + const canWriteField = log.node?.fields?.some( + (field) => Number(field.field_id) === Number(info.id) && field.type === "write" + ); + if (!canWriteField) return; + const data = JSON.parse(log.data); Object.entries(data)?.forEach(([key, value]) => { if (