From 4a46a289b886128be2f2cc0dc7c517419c995a4f Mon Sep 17 00:00:00 2001 From: xianyi Date: Mon, 22 Dec 2025 15:42:46 +0800 Subject: [PATCH] =?UTF-8?q?=E5=82=A8=E5=AD=98=E7=AD=BE=E5=90=8D=E5=90=8E?= =?UTF-8?q?=E7=9A=84pdf?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/UI7/UI7.tsx | 32 ++++++++++++++++++++++++++++++++ src/pages/UI9/UI9.tsx | 1 + 2 files changed, 33 insertions(+) diff --git a/src/pages/UI7/UI7.tsx b/src/pages/UI7/UI7.tsx index 1b759fe..4ba526e 100644 --- a/src/pages/UI7/UI7.tsx +++ b/src/pages/UI7/UI7.tsx @@ -228,6 +228,7 @@ const UI7: React.FC = () => { useEffect(() => { localStorage.removeItem("consentSignatureList"); + localStorage.removeItem("tongyishuSignedPdfUrls"); }, []); useEffect(() => { @@ -508,6 +509,37 @@ const UI7: React.FC = () => { if (tongyishuRes.Status !== 200) { throw new Error(tongyishuRes.Message || "提交知情同意书签名失败"); } + // 保存签名后的知情同意书 PDF URL(可能返回多个) + try { + const returnedList = Array.isArray( + tongyishuRes.Data?.list_pdf_url + ) + ? tongyishuRes.Data.list_pdf_url + : []; + const urls = returnedList + .map((item) => + typeof item === "string" ? item : item?.pdf_url || "" + ) + .filter((url): url is string => Boolean(url)); + const storedRaw = localStorage.getItem("tongyishuSignedPdfUrls"); + const storedList: string[] = storedRaw ? JSON.parse(storedRaw) : []; + const merged = [...storedList]; + urls.forEach((url) => { + if (!merged.includes(url)) { + merged.push(url); + } + }); + localStorage.setItem( + "tongyishuSignedPdfUrls", + JSON.stringify(merged) + ); + } catch (cacheErr) { + window.electronAPI?.log( + "warn", + `[UI7] 知情同意书 PDF URL 缓存失败: ${(cacheErr as Error).message}` + ); + } + } if (currentStep >= pdfInfoList.length) { diff --git a/src/pages/UI9/UI9.tsx b/src/pages/UI9/UI9.tsx index 9b0a809..70405ad 100644 --- a/src/pages/UI9/UI9.tsx +++ b/src/pages/UI9/UI9.tsx @@ -23,6 +23,7 @@ const UI9: React.FC = () => { localStorage.removeItem("package_code"); localStorage.removeItem("consentSignatureList"); localStorage.removeItem("consentSignature"); + localStorage.removeItem("tongyishuSignedPdfUrls"); navigate("/"); }, [navigate]);