feat(pmr): 라벨 디자인 개선 + 약품명 정규화

라벨 미리보기:
- 지그재그 테두리 (가위로 자른 느낌)
- 환자명 공백 + 폰트 확대 (44px)
- 복용량 박스 + 총량 표시
- 시그니처 박스 (청 춘 약 국)
- 조제일 표시

약품명 정규화:
- 밀리그램/밀리그람 → mg
- 마이크로그램 → μg
- 그램/그람 → g
- 밀리리터 → mL
- 언더스코어(_) 뒤 내용 제거
- 대괄호 내용 제거

프론트엔드:
- data-med-name 속성으로 순수 약품명 전달
- 번호/뱃지 제외된 이름 사용
This commit is contained in:
thug0bin
2026-03-11 22:13:08 +09:00
parent 849ce4c3c0
commit 7b71ea0179
2 changed files with 157 additions and 31 deletions

View File

@@ -1562,7 +1562,7 @@
</thead>
<tbody>
${data.medications.map((m, i) => `
<tr data-add-info="${escapeHtml(m.add_info || '')}" data-unit="${m.unit || '정'}" ${m.is_substituted ? 'class="substituted-row"' : ''}>
<tr data-add-info="${escapeHtml(m.add_info || '')}" data-unit="${m.unit || '정'}" data-med-name="${escapeHtml(m.med_name || m.medication_code)}" ${m.is_substituted ? 'class="substituted-row"' : ''}>
<td><input type="checkbox" class="med-check" data-code="${m.medication_code}" ${m.is_auto_print ? 'checked' : ''}></td>
<td>
<div class="med-name">
@@ -2600,8 +2600,8 @@
const tr = checkbox.closest('tr');
const cells = tr.querySelectorAll('td');
// 약품명: 두 번째 셀의 .med-name
const medName = tr.querySelector('.med-name')?.textContent?.trim() || '';
// 약품명: data-med-name 속성에서 (번호/뱃지 제외된 순수 약품명)
const medName = tr.dataset.medName || '';
const addInfo = tr.dataset.addInfo || '';
// 용량: 세 번째 셀 (index 2) - 제형 컬럼 제거됨
const dosageText = cells[2]?.textContent?.replace(/[^0-9.]/g, '') || '0';