From 07b27ad6cab55c43a00b2cbea822c09e8ed03324 Mon Sep 17 00:00:00 2001 From: yelan Date: Sun, 27 Sep 2026 11:25:39 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=96=87=E4=B9=A6=E7=AD=BE=E7=BD=B2):=20?= =?UTF-8?q?=E6=B8=B2=E6=9F=93=E6=80=81=E5=A1=AB=E5=86=99=E9=A1=B9=E4=BF=9D?= =?UTF-8?q?=E7=95=99=E5=AE=9E=E7=BA=BF=E7=BB=86=E6=A1=86=E4=BB=A5=E5=8C=BA?= =?UTF-8?q?=E5=88=86=E7=B3=BB=E7=BB=9F=E5=A1=AB=E5=86=99=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- clinical-web/src/styles/signing-document.css | 17 +++++++++++------ clinical-web/src/utils/signing-document.ts | 4 ++-- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/clinical-web/src/styles/signing-document.css b/clinical-web/src/styles/signing-document.css index a9f51ba..45c689b 100644 --- a/clinical-web/src/styles/signing-document.css +++ b/clinical-web/src/styles/signing-document.css @@ -6,7 +6,10 @@ * 三处各写一份 :deep() 覆盖,改一次配色要改三处,且必然漂移。 * * 类名口径与原型 V10.2 对齐: - * - `.docfld` = 填写项(占位符)。空值是虚线胶囊,填充后加 `.filled` 去掉边框与底色; + * - `.docfld` = 填写项(占位符)。空值是虚线胶囊,渲染态加 `.filled` 后**保留一圈实线细框** + * (颜色按 kind 走:文本=品牌色、签名=橙、勾选=绿),只把底色转透明、字重转 normal。 + * 即「有框 = 这一处是系统管理的填写位」,空/满都保留框——2026-09-27 按原型改回, + * 此前曾把框设成透明,那会让 HIS 带出的值与正文文字完全看不出区别; * - `.docopt` = 一组选项里的单项,用 ☑ / ☐ 文本而不是 input; * - `.sign-doc-header` = 系统页眉(患者信息由 HIS 带出,不进签署证据)。 * @@ -50,16 +53,18 @@ content: '\2611 '; } -/* 已填充:去掉"待填写"的视觉暗示,取值直接读作正文。 - 下划线空白(.docfld-blank)也会被一并去掉底色与边框, - 否则空值看起来和填好的值一样重 */ +/* 渲染态:底色与加粗去掉(值直接读作正文),但**保留那圈实线细框** —— + 原型 `.docfld.filled` 只把 `border-style` 从 dashed 改成 solid,没有改 `border-color`, + 所以框的颜色仍由 kind 决定(文本=--brand、签名=橙、勾选=绿)。 + 这圈框是文书上「这一处是系统管理的填写位」的唯一视觉标识:去掉它, + HIS 带出的值(如「患者姓名 陈志强」)与正文文字就完全分不出来(2026-09-27 已踩)。 + 空值同理保留框,框内是一条 `.docfld-blank` 下划线。 */ .docfld.filled { padding: 1px 2px; font-weight: 400; cursor: default; background: transparent; border-style: solid; - border-color: transparent; } /* 空值占位:一条下划线。原型是 inline style,这里落成类名, @@ -94,7 +99,7 @@ /* 未填写的必填项:下划线转橙,让签署页一眼看出还有哪几处要填。 原型没有这一档(它的空值只有一条淡线),是为签署页可用性补的—— - 填充后胶囊边框被 .filled 去掉,否则未填项在文书上完全看不出差别 */ + 渲染态所有填写项都带同一圈品牌色细框,光靠框分不出「这处还没填」 */ .docfld.sign-field--missing .docfld-blank, .docfld.sign-field--missing .docfld-input { border-bottom-color: #d9821f; diff --git a/clinical-web/src/utils/signing-document.ts b/clinical-web/src/utils/signing-document.ts index a0f8587..6047bd4 100644 --- a/clinical-web/src/utils/signing-document.ts +++ b/clinical-web/src/utils/signing-document.ts @@ -67,9 +67,9 @@ const FIELD_ACTION_ATTR = 'data-sign-action' const SIGNATURE_ACTION = 'signature' /** 可点击采集的签名位类名,样式与摘除入口时都要用同一个 */ const ACTIONABLE_CLASS = 'sign-field--actionable' -/** 填写项宿主节点类名(原型 .docfld:虚线胶囊 → 填充后去边框) */ +/** 填写项宿主节点类名(原型 .docfld:编辑态虚线胶囊 → 渲染态保留实线细框) */ const FIELD_HOST_CLASS = 'docfld' -/** 已填充标记:去掉"待填写"的视觉暗示 */ +/** 渲染态标记:去掉"待填写"的虚线胶囊,改为保留一圈实线细框(原型 .docfld.filled) */ const FIELD_FILLED_CLASS = 'filled' /** 空值下划线 */ const BLANK_CLASS = 'docfld-blank'