From 2d327a830078c55ed35056b14816b03cb2eff17f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Fri, 6 Mar 2026 10:56:07 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[approvals]=20=EC=9C=84=EC=B4=89?= =?UTF-8?q?=EC=A6=9D=EB=AA=85=EC=84=9C=20=ED=85=8C=EC=9D=B4=EB=B8=94=202?= =?UTF-8?q?=EC=97=B4=20=ED=96=89=20=ED=85=8D=EC=8A=A4=ED=8A=B8=20=EB=84=98?= =?UTF-8?q?=EC=B9=A8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - table-layout:fixed + colgroup(18%/32%/18%/32%)로 열 너비 고정 - td에 white-space:nowrap 추가하여 텍스트 줄바꿈 방지 - th width 고정값 제거 → colgroup 비율로 제어 - "위촉(재직)기간" → "위촉기간"으로 라벨 축소 - padding 18px→14px, font 16px→15px로 미세 조정 --- app/Services/AppointmentCertService.php | 4 ++-- resources/views/approvals/create.blade.php | 11 ++++++----- resources/views/approvals/show.blade.php | 11 ++++++----- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/app/Services/AppointmentCertService.php b/app/Services/AppointmentCertService.php index 9fd9c45a..b820b751 100644 --- a/app/Services/AppointmentCertService.php +++ b/app/Services/AppointmentCertService.php @@ -110,12 +110,12 @@ public function generatePdfResponse(array $content): \Illuminate\Http\Response ['소 속', $content['department'] ?? '-', 40], ['연 락 처', $content['phone'] ?? '-', 40], ]); - // 위촉(재직)기간 / 계약자격 + // 위촉기간 / 계약자격 $hireDate = $content['hire_date'] ?? ''; $resignDate = $content['resign_date'] ?? ''; $periodDisplay = $hireDate ? $hireDate.' ~ '.($resignDate ?: '현재') : '-'; $this->addTableRow($pdf, $font, [ - ['위촉기간', $periodDisplay, 40], + ['위촉기간', $periodDisplay, 45], ['계약자격', $content['contract_type'] ?? '-', 40], ]); // 용도 diff --git a/resources/views/approvals/create.blade.php b/resources/views/approvals/create.blade.php index 4ada3b3c..6e3eea78 100644 --- a/resources/views/approvals/create.blade.php +++ b/resources/views/approvals/create.blade.php @@ -1282,7 +1282,7 @@ function printAppointmentCertPreview() { const content = document.getElementById('appointment-cert-preview-content').innerHTML; const win = window.open('', '_blank', 'width=800,height=1000'); win.document.write('위촉증명서'); - win.document.write(''); + win.document.write(''); win.document.write('
'); win.document.write(content); win.document.write('
'); @@ -1292,13 +1292,14 @@ function printAppointmentCertPreview() { function buildAppointmentCertPreviewHtml(d) { const e = (s) => { const div = document.createElement('div'); div.textContent = s; return div.innerHTML; }; - const thStyle = 'border:1px solid #333; padding:16px 18px; background:#f8f9fa; font-weight:600; text-align:left; white-space:nowrap; width:140px; font-size:16px;'; - const tdStyle = 'border:1px solid #333; padding:16px 18px; font-size:16px;'; + const thStyle = 'border:1px solid #333; padding:16px 14px; background:#f8f9fa; font-weight:600; text-align:left; white-space:nowrap; font-size:15px;'; + const tdStyle = 'border:1px solid #333; padding:16px 14px; font-size:15px; white-space:nowrap;'; return `

위 촉 증 명 서

- +
+ @@ -1314,7 +1315,7 @@ function buildAppointmentCertPreviewHtml(d) { - + diff --git a/resources/views/approvals/show.blade.php b/resources/views/approvals/show.blade.php index 408ba1ae..faa59274 100644 --- a/resources/views/approvals/show.blade.php +++ b/resources/views/approvals/show.blade.php @@ -599,7 +599,7 @@ function printAppointmentCertShowPreview() { const content = document.getElementById('appointment-cert-show-preview-content').innerHTML; const win = window.open('', '_blank', 'width=800,height=1000'); win.document.write('위촉증명서'); - win.document.write(''); + win.document.write(''); win.document.write('
'); win.document.write(content); win.document.write('
'); @@ -609,16 +609,17 @@ function printAppointmentCertShowPreview() { function _buildAppointmentCertHtml(d) { const e = (s) => { const div = document.createElement('div'); div.textContent = s; return div.innerHTML; }; - const thStyle = 'border:1px solid #333; padding:16px 18px; background:#f8f9fa; font-weight:600; text-align:left; white-space:nowrap; width:140px; font-size:16px;'; - const tdStyle = 'border:1px solid #333; padding:16px 18px; font-size:16px;'; + const thStyle = 'border:1px solid #333; padding:16px 14px; background:#f8f9fa; font-weight:600; text-align:left; white-space:nowrap; font-size:15px;'; + const tdStyle = 'border:1px solid #333; padding:16px 14px; font-size:15px; white-space:nowrap;'; return `

위 촉 증 명 서

-
성 명 ${e(d.name)}${e(d.phone)}
위촉(재직)기간위촉기간 ${e(d.hireDate)} ~ ${e(d.resignDate)} 계약자격 ${e(d.contractType)}
+
+ - +
성 명${e(d.name)}
주민등록번호${e(d.resident)}
소 속${e(d.department)}연 락 처${e(d.phone)}
위촉(재직)기간${e(d.hireDate)} ~ ${e(d.resignDate)}계약자격${e(d.contractType)}
위촉기간${e(d.hireDate)} ~ ${e(d.resignDate)}계약자격${e(d.contractType)}
용 도${e(d.purpose)}

위와 같이 위촉하였음을 증명합니다.