김보곤
4bb03fffcb
feat: [esign] 근로계약서 사원 불러오기 시 주소, 생년월일, 계약일 자동 반영
...
- 주민등록번호에서 출생년도/월/일 분리 (세기 자동 판별)
- 입사일 기반 계약일, 근로계약시작일, 연봉계약시작일 자동 반영
- 연봉계약종료일은 입사일 + 1년으로 계산
- 사원 주소, 계약자 이름 자동 매핑 추가
2026-03-11 16:19:06 +09:00
김보곤
3e8b730242
fix: [fire-shutter] ④ D형 개구부 방향 좌측으로 변경 (③과 마주보는 형태)
...
- ③ C형: 우측(②쪽) 열림 (기존 유지)
- ④ D형: 좌측(벽쪽) 열림 (기존 우측→좌측 반전)
- 참조 도면 KSS01 기준: ③④ 열린면이 서로 마주봄
2026-03-11 16:11:34 +09:00
김보곤
4bf85dc8a7
fix: [fire-shutter] 가이드레일 원숫자 위치를 참조 도면 기준으로 수정
...
- ① 마감재: 도면 상단→우측 랩/플랜지 영역(상하 2개, 참조 도면 동일)
- ③ C형: 위쪽 치우침→몸체(45mm) 수직 중심
- ④ D형: 아래쪽 치우침→몸체(40mm) 수직 중심
2026-03-11 16:04:38 +09:00
김보곤
bde1613b7d
fix: [fire-shutter] 가이드레일 부재 번호를 KSS01 참조 도면 기준으로 변경
...
- ①마감재 ②가이드레일 ③C형 ④D형 (기존 ①본체 ③벽C ④벽D ⑤마감재)
- hasTrim 조건 분기 제거 (KSS01에 마감재 있음)
- 모든 치수선 라벨, 범례 텍스트, SVG 주석 번호 통일
2026-03-11 15:53:30 +09:00
김보곤
a120cfacf4
fix: [journal] 거래처 드롭다운 클릭 시 즉시 닫히는 버그 수정
...
- onFocus에서 열린 경우 onClick 토글을 건너뛰도록 justFocusedRef 플래그 추가
- 다른 요소에서 포커스 이동 후 클릭 시 정상 동작
2026-03-11 15:33:14 +09:00
김보곤
76a8970d33
fix: [fire-shutter] KSS01 모델에서 마감재(⑤) 조건부 렌더링
...
- KSS01은 마감재(⑤) 없음 → hasTrim 조건으로 분기
- ⑤ SVG, 치수선 라벨, 범례 텍스트 조건부 처리
- 모델 변경 시 가이드레일 재렌더링 추가
2026-03-11 15:33:08 +09:00
김보곤
ed5493ca3a
fix: [fire-shutter] 가이드레일 평면도 원숫자 크기 3배 확대
2026-03-11 15:27:28 +09:00
김보곤
124490355f
fix: [esign] 체크박스 필드를 단순화 - 변수 연결 대신 위치에 체크 표시 렌더링
...
- 체크박스는 변수 연결 불필요, 배치한 위치에 무조건 ☑ 표시
- PDF 오버레이에서 체크박스 필드는 ☑ 아이콘으로 표시
- 커스텀 변수에서 체크박스 타입 옵션 제거 (불필요)
2026-03-11 15:16:52 +09:00
김보곤
678d0614e7
feat: [esign] 템플릿 체크박스 필드에 변수 연결 기능 추가
...
- 체크박스 필드 속성에서 변수 연결 UI 노출
- 커스텀 변수 생성 시 텍스트/체크박스 타입 선택 지원
- 체크박스 변수는 체크박스 필드에만, 텍스트 변수는 텍스트/날짜 필드에만 표시
2026-03-11 15:03:44 +09:00
김보곤
380139e641
feat: [esign] 사원 불러오기 기능 추가 및 랜덤 데이터 품질 개선
...
- 근로계약서 시 '사원 불러오기' 버튼으로 직원 검색/선택 기능
- fillRandomVariables 스마트 기본값 생성 (테스트_ 접두사 제거)
- searchEmployees API 엔드포인트 추가
2026-03-11 14:28:03 +09:00
김보곤
611cf94ef1
feat: [esign] 근로계약서 번개 아이콘 클릭 시 랜덤 테스트 데이터 자동 입력
...
- 직원주소, 직종구분, 업무내용, 업무기간, 출생년도, 급여, 계약자이름 등 매핑
- 라벨 부분 매칭(정규식)으로 유연하게 처리
- 매칭 안 되는 변수는 '테스트_라벨명'으로 기본값 입력
- 기존 영업파트너/고객 계약서 매핑 유지
2026-03-11 14:18:19 +09:00
김보곤
72e810cd5f
fix: [finance] 적요 컬럼 텍스트 잘림 해제
...
- max-w-[220px] + truncate 제거로 긴 적요 전체 표시
- 은행거래 탭의 적요 컬럼도 동일 적용
2026-03-11 14:14:50 +09:00
김보곤
06017cd0f9
fix: [fire-shutter] ⑤ 위치를 ①백월 기준으로 복원, 벽쪽 'ㄱ' 측면탭 복원
...
- trimL5를 bx(①백월)로 변경하여 ①이 ⑤ 범위 안에 완전히 포함되도록
- 벽쪽 측면탭(11mm) SVG 복원 → ①백월을 따라 'ㄱ' 형상 표현
- 코킹립(10mm)은 Z방향 절곡으로 평면도에서 생략 유지
2026-03-11 13:41:35 +09:00
김보곤
5b2bafffa3
fix: [finance] 전표 수정 후 리스트에 수정된 적요가 반영되지 않는 문제 수정
...
- 은행/카드거래 행에서 원본 거래 적요 대신 전표 적요를 우선 표시
- 분개가 존재하면 journal_entries.description을 사용
2026-03-11 13:24:23 +09:00
김보곤
80aefc1b83
fix: [finance] 거래처 필드 Tab키 자동 검색 열기
...
- TradingPartnerSelect에 onFocus 핸들러 추가
- Tab으로 포커스 시 드롭다운이 자동 열려 바로 검색 가능
- 선택 후 재포커스 시 중복 열림 방지 (skipAutoOpenRef)
2026-03-11 13:08:24 +09:00
김보곤
78a52f2110
feat: [esign] 계약 수정 화면에 서명 필드 값 편집 기능 추가
...
- 수정 화면에서 text/date/checkbox 필드 값 인라인 편집
- 필드별 서명자 구분(작성자/상대방), 페이지 번호 표시
- update API에서 필드 값 일괄 업데이트 처리
2026-03-11 13:06:04 +09:00
김보곤
2ef2de7463
feat: [esign] 전자계약 수정 기능 추가
...
- draft 상태 계약의 제목, 설명, 서명자 정보, 파일 수정 가능
- 계약 상세 페이지에 '계약 정보 수정' 버튼 추가
- create.blade.php를 생성/수정 겸용으로 확장
2026-03-11 11:56:17 +09:00
김보곤
29e8dea54a
fix: [payroll] PDF 한글 폰트 NanumGothic → Pretendard 전환
...
- 운영서버 NanumGothic 메트릭 생성 실패 문제 해결
- Pretendard Regular/Bold TTF를 resources/fonts/에 번들링
- ensureKoreanFont()에서 Pretendard 등록으로 변경
- payslip.blade.php font-family를 Pretendard로 변경
- PDF 크기: 18KB (서브셋팅 적용)
2026-03-11 11:49:57 +09:00
김보곤
1a58fd87d0
feat: [esign] 계약 제목에 '근로계약서' 옵션 추가
2026-03-11 11:46:46 +09:00
김보곤
907f8ff958
fix: [fire-shutter] ⑤마감재 방화벽 밀착 및 코킹립/탭 평면도 제거
...
- trimL5를 wallRight(방화벽 면)로 변경하여 ⑤가 벽에 맞닿도록 수정
- Z방향 절곡인 코킹립(10mm)·측면탭(11mm) SVG 요소 제거 (평면도에서 불가시)
2026-03-11 11:27:14 +09:00
김보곤
18d9f38a05
fix: [fire-shutter] ③ 브라켓 몸체를 방화벽에 직접 맞닿도록 벽-③ 간 갭(10px) 제거
2026-03-11 11:20:38 +09:00
김보곤
84b86a08a0
fix: [payslip] 폰트를 프로젝트에 포함하여 서버 의존성 제거
...
- resources/fonts/에 NanumGothic TTF 포함 (Git으로 배포)
- ensureKoreanFont()가 시스템 경로 대신 resource_path() 사용
- fonts-nanum 패키지 미설치 서버에서도 한글 PDF 정상 생성
2026-03-11 11:01:19 +09:00
김보곤
8e31724f97
fix: [fire-shutter] ① 본체 개구부측 'ㄱ' 형태 수정 — 립(10mm)이 바깥Y에서 먼저 우측 연장 후 플랜지(26mm) 아래로 절곡
2026-03-11 10:36:07 +09:00
김보곤
0cd5ef94d1
fix: [payslip] PDF 급여명세서 font-weight 800 → bold 수정
...
- DomPDF에 NanumGothic bold(700)까지만 등록되어 weight 800 한글이 깨짐
- h1, .net-row의 font-weight: 800 → bold로 변경
2026-03-11 10:35:40 +09:00
김보곤
65c93dd8d0
fix: [fire-shutter] ① 본체 개구부측 절곡을 'ㄱ' 형태로 수정 (플랜지→립 순서)
2026-03-11 10:23:34 +09:00
김보곤
1f00e4ba6f
fix: [fire-shutter] ⑤ 마감재 수평면 시작위치를 ① 백월(bx)로 수정하여 ①이 ⑤ 안쪽에 위치하도록 변경
2026-03-11 10:15:55 +09:00
김보곤
8b6c47066c
fix: [hometax] 분개 기본 계정과목 코드 수정
...
- 매입: 135(미존재)→117(부가세대급금), 251(장기차입금)→201(외상매입금)
- 매출: 255(장기미지급금)→208(부가세예수금)
- 매입 501 account_name '상품매입'→'상품매출원가' (DB 일치)
- DB: 비표준 5자리/1-2자리 중복 코드 2386개 비활성화 (163개→163개 유지)
- DB: 기존 분개 코드 135→117 4건 수정
2026-03-11 10:08:24 +09:00
김보곤
455f9e0501
fix: [fire-shutter] ① 본체 EGI 립/플랜지 절곡 방향 수정 (KSS01)
2026-03-11 10:02:15 +09:00
김보곤
88b70f02d4
fix: [hr] 급여명세서 PDF 한글 폰트 깨짐 수정
...
- NanumGothic 폰트 자동 등록 로직 추가 (ensureKoreanFont)
- storage/fonts/에 폰트 복사 후 DomPDF에 등록 (최초 1회)
- payslip.blade.php font-family를 NanumGothic으로 변경
- 서버 배포 시 수동 폰트 등록 불필요
2026-03-11 09:50:24 +09:00
김보곤
ec35b2f456
fix: [hr] 급여명세서 PDF 구글 폰트 외부 로드 제거
...
- payslip.blade.php: @import 구글 폰트 URL 삭제, 시스템 기본 폰트 사용
- PayrollService.php: isRemoteEnabled 옵션 제거
- 운영서버 배포 시 폰트 캐시 권한 오류 근본 해결
2026-03-11 09:41:56 +09:00
김보곤
a1b35060bb
fix: [rd] 클코→슬랙 변환기 2패널로 단순화
...
- 슬랙 전송용 텍스트 패널 제거
- 미리보기 리치텍스트 복사로 변경 (서식 보존)
- Selection API로 복사하여 슬랙 붙여넣기 시 형태 유지
2026-03-11 09:31:57 +09:00
김보곤
878cec7935
feat: [rd] 클코 → 슬랙 변환기 추가
...
- Claude Code CLI 출력을 슬랙 mrkdwn 형식으로 자동 변환
- 마크다운 → 슬랙 문법 변환 (볼드, 코드블록, 링크 등)
- 슬랙 스타일 실시간 미리보기
- 클립보드 복사/붙여넣기 지원
2026-03-11 09:20:54 +09:00
김보곤
bb267d14c1
feat: [payroll] 슈퍼관리자 급여 수정/지급취소 권한 추가
...
- 지급완료/확정 상태에서도 슈퍼관리자는 급여 수정 가능
- 지급취소(unpay) 기능 추가: paid → draft 상태 되돌리기
- 테이블에 슈퍼관리자 전용 수정/지급취소 버튼 표시
2026-03-11 06:52:45 +09:00
dfe97308f3
deploy: 2026-03-11 배포
...
- feat: MNG→SAM 자동 로그인 토큰 (LoginToken 모델 도메인 매핑)
- feat: 사용자/역할/부서 관리 개선 (Controller, Service, View)
- feat: 메뉴 관리 개선 (MenuService, menu-tree.js)
- fix: 문서 뷰어, FCM 토큰, 방화셔터 도면, 테넌트 테이블 뷰 수정
2026-03-11 02:12:51 +09:00
김보곤
ef1aa7644f
fix: [journal] CurrencyInput 컴포넌트 음수 입력 개선
...
- 포커스 시 쉼표 제거하여 순수 숫자 편집 모드
- 타이핑 중 포맷팅 제거하여 커서 점프 방지
- 블러 시에만 천단위 쉼표 포맷 적용
- minus + 숫자만 허용하는 단순 필터링
2026-03-10 16:28:26 +09:00
김보곤
75a5d2c1b9
fix: [journal] 전표 금액 입력에서 음수(-) 입력 지원
...
- CurrencyInput 컴포넌트 도입하여 로컬 상태로 중간 입력('-') 보존
- 3개 모달(수동전표, 카드분개, 계좌분개) 6개 금액 입력 필드 모두 교체
- onBlur 시 포맷팅, onChange 시 즉시 파싱으로 실시간 합계 반영
2026-03-10 12:50:28 +09:00
김보곤
bde4be4123
fix: [payroll] 전표 기타공제 항목별 분리 및 음수 금액 처리
...
- 기타공제를 합산 단일 라인에서 항목별(연말정산소득세, 연말정산지방소득세 등) 분리
- formatInputCurrency/parseInputCurrency 음수 부호 처리 추가
- JournalEntryController validation에서 min:0 제거하여 음수 credit_amount 허용
2026-03-10 12:44:37 +09:00
김보곤
84614a77b9
fix: [journal] 급여 전표 수정 허용 및 source_type 라벨 개선
...
- payroll source_type 전표 수정 허용 (기존: manual, bank_transaction만)
- source_type별 정확한 라벨 매핑 (카드사용내역, 홈택스 매출/매입)
- 프론트/백엔드 양쪽 수정
2026-03-10 11:38:04 +09:00
김보곤
63271ed18c
fix: [payroll] 전표 생성 시 기타공제 누락 수정 및 에러 모달 추가
...
- 기타공제(deductions JSON) 항목을 대변 207 예수금에 반영
- 차대 불균형 시 상세 분개 내역을 에러 모달로 표시
- toast 대신 복사 가능한 모달로 에러 메시지 표시
2026-03-10 11:30:56 +09:00
김보곤
a14c7a5119
fix: [payroll] 급여명세서 이메일 발송 시 개인 이메일 우선 참조
...
- 개인 이메일이 있으면 개인 이메일로 발송
- 개인 이메일이 없으면 업무용 이메일로 폴백
- 목록의 이메일 모달에서도 동일 로직 적용
2026-03-10 10:58:12 +09:00
김보곤
eb7b8f32cb
feat: [employee] 사원 상세페이지에 개인 이메일 항목 추가
...
- 이메일 → 업무용 이메일로 라벨 변경
- 개인 이메일 항목 추가
2026-03-10 10:38:41 +09:00
김보곤
76a993d32d
feat: [employee] 사원관리 개인 이메일 필드 추가
...
- 사원 수정 폼에 개인 이메일 입력 필드 추가
- 레이아웃 2x2 배열로 변경 (업무용 이메일|개인 이메일 / 주민등록번호|연락처)
- Employee 모델에 personalEmail accessor 추가
- 컨트롤러 validation, 서비스 jsonExtraKeys에 personal_email 반영
2026-03-10 10:05:00 +09:00
김보곤
d3feb982a7
fix: [payroll] 이메일 발송 버튼을 확정 상태에서만 표시
2026-03-10 09:43:25 +09:00
김보곤
5ca33cb24b
fix: [payroll] PDF 급여명세서 레이아웃 수정
...
- 사원정보 테이블 colgroup으로 너비 고정 (오버플로우 해결)
- footer를 table 기반으로 변경 (dompdf float 미지원)
- 회사명 문자 인코딩 수정
2026-03-10 09:24:31 +09:00
김보곤
4a3d14a591
feat: [payroll] 급여명세서 이메일을 PDF 첨부파일로 변경
...
- 이메일 본문에 급여 내역 직접 노출 → PDF 첨부파일로 전환 (보안 강화)
- barryvdh/laravel-dompdf 패키지 추가
- 이메일 본문은 간단한 안내 메시지로 변경
- dompdf에서 한글 렌더링을 위해 Noto Sans KR 폰트 적용
2026-03-10 09:12:25 +09:00
김보곤
01493c90f5
fix: [rd] 가이드레일 높이 오픈H+150 → 오픈H+100으로 변경
2026-03-10 07:33:23 +09:00
김보곤
2b1e8b559c
fix: [rd] 스크린 가이드레일 립 절곡방향 수정 (안쪽→개구부 방향)
...
- 2D 평면도: 사이드월 길이 분리(swLen=bodyD-lp), 립이 개구부 방향으로 절곡
- 3D 렌더링: bodyShape/hole의 립 Y좌표 반전(-lp, 벽쪽→개구부쪽)
- 치수선, 씰, 슬랫, 클립 위치 업데이트
2026-03-10 01:41:22 +09:00
김보곤
85d52c9bc0
fix: [rd] 방화셔터 가이드레일 높이 계산 수정 (오픈H + 150mm)
...
- 기존: 표준 재고길이(3305mm) 선택 방식 → 오픈H + 305mm 표시
- 수정: 오픈H + 150mm 계산 (실제 가이드레일 높이)
- 3D 렌더링 레일 높이도 +100 → +150 수정
2026-03-10 01:28:34 +09:00
김보곤
4c2a905a94
feat: [payroll] 이메일 발송 후 '발송' 라벨 표시 기능
...
- payrolls 테이블 options JSON에 email_sent_at/email_sent_to 저장
- 이메일 아이콘 아래 '발송' 텍스트 표시 (서버 렌더링 + JS 즉시 반영)
- Payroll 모델에 options 컬럼 추가
2026-03-10 01:21:28 +09:00
김보곤
dfa193f369
fix: [payroll] 급여명세서 이메일 버튼 Blade 파싱 오류 수정
...
- @json() 내부 (int) 캐스팅이 Blade 파서 괄호 매칭 혼란 유발
- @php 블록에서 데이터를 미리 준비하고 @json($var)로 전달
2026-03-10 01:12:21 +09:00