yyb
10 天以前 856f10107b7681f91114dc48991ebd121a3a8c3f
src/pages/oa/_utils/approvalFormField.js
@@ -17,17 +17,25 @@
  datetime: "YYYY-MM-DD HH:mm:ss",
};
/** 解析 formConfig JSON */
/** 解析 formConfig JSON(含嵌套 formPayload,与 Web parseInstanceFormConfig 一致) */
export function parseApprovalFormConfig(raw) {
  if (!raw) return { prompt: "", fields: [] };
  if (!raw) return { prompt: "", fields: [], formPayload: {} };
  try {
    const obj = typeof raw === "string" ? JSON.parse(raw) : raw;
    const payload = obj?.formPayload;
    return {
      prompt: obj?.prompt || "",
      fields: Array.isArray(obj?.fields) ? obj.fields : [],
      prompt: obj?.prompt || obj?.summaryPlaceholder || "",
      summaryPlaceholder: obj?.summaryPlaceholder || "",
      approvalType: obj?.approvalType || "",
      fields: Array.isArray(obj?.fields)
        ? obj.fields
        : Array.isArray(obj?.formFields)
          ? obj.formFields
          : [],
      formPayload: payload && typeof payload === "object" ? payload : {},
    };
  } catch {
    return { prompt: "", fields: [] };
    return { prompt: "", fields: [], formPayload: {} };
  }
}
@@ -45,6 +53,7 @@
      valueMap[field.key] = val;
    }
  });
  Object.assign(valueMap, instance.formPayload || {});
  const baseFields = template.fields.length ? template.fields : instance.fields;
  return {
    prompt: instance.prompt || template.prompt,