From 55ce78d89813549da930d2d55c1732a8fec1f504 Mon Sep 17 00:00:00 2001 From: Administrator Date: Sat, 18 Apr 2026 17:52:05 +0800 Subject: [PATCH] =?UTF-8?q?2026-04-18-17-48-59=20-=20=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E6=8E=92=E7=89=88=E5=BE=AE=E8=B0=83=EF=BC=9A=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E9=97=B4=E8=B7=9D=E3=80=81Flex=E5=B1=85=E4=B8=AD=E6=8A=AC?= =?UTF-8?q?=E5=A4=B4=E3=80=81=E6=89=93=E5=8D=B0=E9=9A=90=E8=97=8F=E5=88=A0?= =?UTF-8?q?=E9=99=A4=E6=8C=89=E9=92=AE=E3=80=81=E7=BB=9F=E4=B8=801.5?= =?UTF-8?q?=E8=A1=8C=E8=B7=9D=E3=80=81=E4=B8=8B=E5=88=92=E7=BA=BF=E8=B4=B4?= =?UTF-8?q?=E5=BA=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/utils/defaultContent.ts | 99 ++++++++++---------- src/utils/print.ts | 4 +- 工程分析/实现方案-2026-04-18-17-48-59.md | 100 ++++++++++++++++++++ 工程分析/测试方案-2026-04-18-17-48-59.md | 111 +++++++++++++++++++++++ 工程分析/需求分析-2026-04-18-17-48-59.md | 30 ++++++ 5 files changed, 289 insertions(+), 55 deletions(-) create mode 100644 工程分析/实现方案-2026-04-18-17-48-59.md create mode 100644 工程分析/测试方案-2026-04-18-17-48-59.md create mode 100644 工程分析/需求分析-2026-04-18-17-48-59.md diff --git a/src/utils/defaultContent.ts b/src/utils/defaultContent.ts index 2192348..95e6b92 100644 --- a/src/utils/defaultContent.ts +++ b/src/utils/defaultContent.ts @@ -1,82 +1,75 @@ const smartField = (key: string) => ` ×​`; export const defaultReportContent = ` - - - - - - -
- - × - 插入图片 - - -
西 安 交 通 大 学 第 一 附 属 医 院
-
手术记录
-
- -
-

- 姓名:${smartField('patientName')}    - 性别:${smartField('patientGender')}    - 年龄:${smartField('patientAge')}    - 科别:${smartField('department')}    - 床号:${smartField('bedNumber')}    - 住院号:${smartField('hospitalId')} -

+
+ + × + 插入图片 + +
+
西 安 交 通 大 学 第 一 附 属 医 院
+
手术记录
+
-

+

+ 姓名:${smartField('patientName')}  + 性别:${smartField('patientGender')}  + 年龄:${smartField('patientAge')}  + 科别:${smartField('department')}  + 床号:${smartField('bedNumber')}  + 住院号:${smartField('hospitalId')} +

+ +

手术日期:${smartField('surgeryDate')}

-

+

术前诊断:${smartField('preoperativeDiagnosis')}

-

+

术中诊断:${smartField('postoperativeDiagnosis')}

-

+

手术名称:${smartField('title')}

- - + + - - + + - - + +
手术开始时间:${smartField('startTime')}手术终止时间:${smartField('endTime')}手术开始时间:${smartField('startTime')}手术终止时间:${smartField('endTime')}
手术者:${smartField('surgeon')}助手:${smartField('assistant')}手术者:${smartField('surgeon')}助手:${smartField('assistant')}
麻醉师:${smartField('anesthesiologist')}麻醉方式:${smartField('anesthesiaType')}麻醉师:${smartField('anesthesiologist')}麻醉方式:${smartField('anesthesiaType')}
-

+

手术步骤、术中出现的情况及处理:

-

+

1.患者仰卧位,麻醉成功后,常规消毒术野、铺无菌巾,于脐下穿刺建立CO2气腹,气腹压力为12mmHg,进镜探查无穿刺损伤,分别于剑突下2.0cm、右锁中线肋缘下2.0cm各点穿刺置穿刺器,插入相应手术器械。

-

+

2.腹腔镜探查:腹腔内无腹水形成,无明显粘连,肝脏色红质软,无明显结节硬化改变,胆囊大小约 cm× cm× cm,壁轻度水肿,张力可,胆囊三角解剖关系清楚,胆囊管及胆总管无明显扩张。胃、十二指肠、小肠、结肠、脾脏及盆腔未见明显异常。术中诊断:胆囊结石伴慢性胆囊炎。遂行腹腔镜胆囊切除术。

-

+

3.切除胆囊:钳夹胆囊颈部并解剖胆囊三角,游离出胆囊动脉及胆囊管,明确胆囊与胆总管的关系,距胆总管0.3cm处近端以一枚可吸收夹,远端夹一枚钛夹夹闭胆囊管,两夹间以剪刀剪断胆囊管,另用一枚可吸收夹夹闭胆囊动脉后离断。顺行游离胆囊浆膜,完整切除胆囊后装入标本袋取出。胆囊床严密止血并覆盖止血材料。

-

+

4.检查腹腔内无活动性出血及漏胆后,清点器械纱布无误,拔除腔镜器械,排出腹腔残余气体,缝合各刺孔,术毕。

-

+

5.手术顺利,麻醉满意。切除的标本经家属过目后送病理。术中出血约 ml,术中输血成分,输血量,是否有输血不良反应。

@@ -88,21 +81,21 @@ export const defaultReportContent = ` × 插入/点击放置图片
-

图A 腹腔镜探查

+

图A 腹腔镜探查

× 插入/点击放置图片
-

图B 胆囊管夹闭与离断

+

图B 胆囊管夹闭与离断

× 插入/点击放置图片
-

图C 胆囊动脉夹闭与离断

+

图C 胆囊动脉夹闭与离断

@@ -111,47 +104,47 @@ export const defaultReportContent = ` × 插入/点击放置图片 -

图D 胆囊剥离与床面止血

+

图D 胆囊剥离与床面止血

× 插入/点击放置图片
-

图E 胆囊取出与钛夹确认

+

图E 胆囊取出与钛夹确认

× 插入/点击放置图片
-

图F 止血材料覆盖及检查

+

图F 止血材料覆盖及检查

-

+

手术后情况:${smartField('postOpCondition')}

-

+

切除标本描述:${smartField('specimenDescription')}

-

+

是否送病理检查:${smartField('pathologyCheck')}

-

+

冰冻病理结果:${smartField('frozenPathology')}

-

+

手术者签名:×插入/点击放置图片

-

+

${smartField('reportDate')}

diff --git a/src/utils/print.ts b/src/utils/print.ts index 85e1363..4455375 100644 --- a/src/utils/print.ts +++ b/src/utils/print.ts @@ -23,7 +23,7 @@ export const printDocument = (htmlContent: string) => { body { margin: 0; padding: 0; font-family: SimSun, "Microsoft YaHei", serif; color: #1E293B; background: white; } .content { width: 100%; min-height: 277mm; margin: 0 auto; } img { max-width: 100%; height: auto; display: block; margin: 8px auto; } - p { margin: 0; padding: 4px 0; line-height: 1.6; } + p { margin: 0; padding: 0; line-height: 1.5; } h1 { font-size: 20px; margin: 16px 0 12px; font-weight: 600; text-align: center; } strong, b { font-weight: 600; } u { text-decoration: underline; } @@ -31,7 +31,7 @@ export const printDocument = (htmlContent: string) => { td { padding: 8px; border: 1px solid #e2e8f0; vertical-align: top; } .image-placeholder { border: 2px dashed #cbd5e1; border-radius: 8px; padding: 16px; margin-bottom: 8px; background: #f8fafc; min-height: 70px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; } .image-placeholder.has-image { border: none; background: transparent; padding: 0; min-height: 0; } - .image-placeholder .delete-btn { display: none !important; } + .delete-btn { display: none !important; } .image-placeholder:not(.has-image) { display: none !important; } .template-info-section { position: relative; margin-bottom: 16px; } .smart-field-wrapper { display: inline-flex; align-items: center; margin: 0 2px; vertical-align: text-bottom; } diff --git a/工程分析/实现方案-2026-04-18-17-48-59.md b/工程分析/实现方案-2026-04-18-17-48-59.md new file mode 100644 index 0000000..3118bbc --- /dev/null +++ b/工程分析/实现方案-2026-04-18-17-48-59.md @@ -0,0 +1,100 @@ +# 实现方案 —— 2026-04-18-17-48-59 + +## 方案目标 +修复默认模板排版细节和打印样式问题,提升报告的视觉一致性和打印输出质量。 + +## 需求 1:缩减基本信息栏字段间空格 + +### 修改文件 +`src/utils/defaultContent.ts` + +### 修改内容 +将基本信息栏 `

` 中字段之间的 `   ` 替换为单个 ` `。 + +**修改前**: +```html +姓名:${smartField('patientName')}    +性别:${smartField('patientGender')}    +年龄:${smartField('patientAge')}    +科别:${smartField('department')}    +床号:${smartField('bedNumber')}    +住院号:${smartField('hospitalId')} +``` + +**修改后**: +```html +姓名:${smartField('patientName')}  +性别:${smartField('patientGender')}  +年龄:${smartField('patientAge')}  +科别:${smartField('department')}  +床号:${smartField('bedNumber')}  +住院号:${smartField('hospitalId')} +``` + +## 需求 2:Logo 与医院名/标题靠拢并整体居中 + +### 修改文件 +`src/utils/defaultContent.ts` + +### 修改内容 +将顶部 3 列 `` 替换为 `
`。 +- Logo 占位符放在 flex 子 div 中 +- 医院名和标题放在另一个 flex 子 div 中(`text-align: center`) +- 整体通过 `justify-content: center` 实现居中 +- `gap: 12px` 或 `margin-right: 12px` 控制 Logo 与文字间距 + +## 需求 3:打印时隐藏所有「×」删除按钮 + +### 修改文件 +`src/utils/print.ts` + +### 修改内容 +在 `print.ts` 生成的 `