4cee825aca
ci: add Jenkinsfile for CI/CD pipeline (main)
2026-02-24 08:15:10 +09:00
김보곤
869896e9ce
fix: [email] 이메일 발신자명 SAM-MNG → (주)코드브릿지엑스 변경
...
- .env.example MAIL_FROM_NAME을 (주)코드브릿지엑스로 변경
- 전자계약 이메일 템플릿 푸터에 회사명 추가
- 비밀번호 이메일 푸터 copyright를 (주)코드브릿지엑스로 변경
2026-02-24 08:08:44 +09:00
김보곤
36486795f2
feat: [academy] PM2 가이드 라우트 및 컨트롤러 추가
2026-02-24 08:01:47 +09:00
김보곤
492e81c339
feat: [academy] PM2 프로세스 관리 가이드 페이지 추가
2026-02-24 08:00:25 +09:00
김보곤
66be684d40
fix: [barobill] 카카오톡 알림톡 SOAP 파라미터 구조 수정
...
- WSDL 스펙에 맞게 KakaotalkMessage 중첩 구조로 변경
- ReceiverName, ReceiverNum 등을 최상위에서 KakaotalkMessage 내부로 이동
- ReserveDT → SendDT로 파라미터명 수정
- SendATKakaotalkEx에 YellowId 파라미터 추가
- 버튼 배열을 KakaotalkButton 래핑 구조로 변경
- sendATKakaotalks 대량 발송도 WSDL 구조에 맞게 수정
- esign 알림톡 메시지 본문을 등록 템플릿에 맞게 조정
2026-02-24 01:21:08 +09:00
김보곤
d6dabada2b
fix: [kakaotalk] 알림톡 발송 시 collectButtons null 오류 수정
...
- at-buttons-container 요소가 알림톡 폼에 없어 null 참조 오류 발생
- container가 null이면 빈 배열 즉시 반환
2026-02-24 01:10:17 +09:00
김보곤
1c2b018917
fix: [kakaotalk] 발송 페이지 템플릿 로딩 개선
...
- Status 필터 제거 (API가 반환하는 모든 템플릿 표시)
- 응답 파싱 누락 케이스 추가 (else if raw)
- API 오류 시 에러 메시지 표시 및 console.log 디버깅 추가
2026-02-24 01:03:09 +09:00
김보곤
dbe1037094
fix: [kakaotalk] 알림톡 발송 페이지 템플릿 필터링 수정
...
- 승인 상태 필터를 'R'만 체크하던 것을 'R' 또는 '3'으로 확장
- 바로빌 API가 승인 상태를 숫자(3)로 반환하는 경우 대응
2026-02-24 01:00:28 +09:00
김보곤
6e043b9539
fix: [esign] 알림톡 발신프로필 키(SenderID) 조회 로직 추가
...
- senderId를 빈 문자열로 보내던 것을 바로빌 채널 목록에서 ChannelId 조회 후 전달
- 바로빌 API 오류 -24005 해결
2026-02-24 00:55:32 +09:00
김보곤
748a9d1807
fix: [esign] 알림톡 발송 실패 수정 (corp_num → biz_no)
...
- BarobillMember의 실제 컬럼명은 biz_no인데 corp_num으로 접근하여 항상 null
- is_test_mode → server_mode로 수정
- kakaotalk_sender_id → 빈 문자열 (기본 발신프로필 사용)
2026-02-24 00:46:29 +09:00
김보곤
514e23930e
fix: [esign] 도장 이미지 용량 최적화 (500px 리사이즈)
...
- 원본 해상도 PNG 변환 시 용량 폭발 문제 해결
- 최대 500px로 리사이즈 후 배경 제거 적용
- @verbatim 추가로 PHP 8.4 named parameter 에러 수정
2026-02-23 23:49:16 +09:00
김보곤
0dd009a02c
fix: [esign] 서명 페이지 PHP 8.4 named parameter 에러 수정
...
- style={{height:...}} 구문이 Blade에 의해 PHP로 해석되는 문제
- script 블록에 @verbatim 추가하여 Blade 해석 방지
2026-02-23 23:44:52 +09:00
김보곤
7ab2460687
chore: [esign] 새 계약 생성 상대방 기본값 설정 (김보곤)
2026-02-23 23:37:16 +09:00
김보곤
3a8d28e21d
fix: [settlement] 수당지급현황통계 파트너별 결산 개별 건 표시
...
- 파트너별 GROUP BY 요약 → 개별 commission 레코드 표시로 변경
- 1차/2차수당 계산에 매니저/유치 수당 포함하여 합계 불일치 해소
- 파트너 헤더행 + 개별 건 행 + 합계행 구조로 테이블 재구성
2026-02-23 22:42:13 +09:00
김보곤
c9e57b59ce
refactor: [ecard] 카드사용내역 상단 UI를 계좌입출금내역 스타일로 통일
...
- x-barobill-tenant-header 보라색 그라디언트 Blade 컴포넌트 제거
- StatCard 4칸 그리드 → CompactStat 인라인 배지로 변경
- CardSelector 버튼 그룹 → select 드롭다운으로 변경
- 날짜 필터/액션 버튼을 TransactionTable에서 App 레벨로 이동
- border-stone-100 → border-gray-200로 통일
2026-02-23 22:29:44 +09:00
김보곤
949fad759d
feat: [hometax] 바로빌 데이터 지연 안내 문구 추가
...
- 수집 상태 영역에 "전일까지 데이터 제공, 당일 발행분은 익일 반영" 안내 표시
2026-02-23 21:56:36 +09:00
김보곤
3c17e44262
fix: [hometax] 자동동기화 dateType을 전송일자(3)로 변경하여 신규 전송건 누락 방지
...
- autoSync dateType: 1(작성일자) → 3(전송일자, 바로빌 권장)
- autoSync 증분 범위: -1일 → -3일로 확대 (안전 마진)
- 수집 요청 후 자동 동기화 추가 (스크래핑만 요청 → 동기화까지 수행)
2026-02-23 21:49:02 +09:00
김보곤
0d567e8b88
refactor: [storage] tenant 저장소 경로를 shared-storage에서 storage/app/tenants로 변경
...
- tenant disk root: /var/www/shared-storage/tenants → storage_path('app/tenants')
- symlink 경로도 동일하게 변경
- react git pull 시 shared-storage 삭제 문제 해결
2026-02-23 21:32:34 +09:00
김보곤
c44b31c328
fix: [journal] 계좌입출금 중복제거 groupBy에 balance, summary 추가
...
- 같은 시간/계좌/금액이라도 잔액·적요가 다른 거래가 하나로 합쳐지는 문제 수정
- uniqueKey 구성(6필드)과 groupBy(4필드) 불일치 해소
2026-02-23 21:00:56 +09:00
김보곤
8626a40d8f
fix: [eaccount] 계좌입출금내역 페이지 불필요한 테넌트 헤더 카드 제거
2026-02-23 19:26:32 +09:00
김보곤
6ba4f4efdf
refactor: [account-transactions] createIcon React.createElement 방식으로 교체
...
- useRef/useEffect DOM 조작 → React 네이티브 SVG 렌더링
- arrow-up-circle/arrow-down-circle 아이콘 별칭 추가
2026-02-23 17:54:52 +09:00
김보곤
303b3f5861
refactor: [finance/system/sales] createIcon DOM 방식에서 React.createElement 방식으로 교체
...
- useRef/useEffect 기반 DOM 조작 방식 제거
- React.createElement로 SVG 직접 렌더링하는 방식으로 전환
- arrow-up-circle, arrow-down-circle 아이콘 별칭 추가
- 대상: finance 20개, system 2개, sales 1개 blade 파일 (총 23개)
2026-02-23 17:54:09 +09:00
김보곤
bf90f91d7c
feat: [academy] 리눅스 & 서버 명령어 아카데미 페이지 추가
...
- 10개 섹션: 터미널 기초, 파일 탐색, 파일 조작, 권한 관리, 검색, 모니터링, 프로세스, 네트워크, 텍스트 편집, 위험 명령어
- git-policy 페이지와 동일한 레이아웃 (히어로 배너, 좌측 TOC, 도움말 풍선)
- 초보자 친화적 비유와 실무 팁 포함
2026-02-23 17:36:23 +09:00
김보곤
e58b3438e9
fix: [icons] 커스텀 SVG 생성 코드를 lucide.createElement API로 교체
...
- 24개 Blade 파일의 수동 SVG 생성 코드를 lucide.createElement(_def)로 통일
- 불필요한 quote-stripping regex(/^"|"$/g) 제거
- Lucide 공식 API 사용으로 SVG viewBox/path 속성 에러 해결
2026-02-23 17:21:40 +09:00
김보곤
5f939b108e
fix: [finance] SVG 속성값 따옴표 제거 처리 추가
...
- lucide@0.469 .0 아이콘 정의의 속성값에 포함된 불필요한 따옴표 strip
2026-02-23 16:52:40 +09:00
김보곤
c9ffa476ea
fix: [finance] lucide SVG 아이콘 렌더링 오류 수정
...
- lucide@0.469 .0에 존재하지 않는 createElement 함수 대신 재귀적 buildEl 함수 사용
- account-transactions, payables 두 페이지 수정
2026-02-23 16:47:20 +09:00
김보곤
e8cd01e723
fix: [finance] 계좌입출금내역 SVG 아이콘 렌더링 오류 수정
2026-02-23 16:37:54 +09:00
김보곤
5272f0e0bf
fix: [lucide] SVG viewBox/path 속성 에러 수정 (24개 파일)
...
- SVG 기본 속성을 하드코딩하여 lucide 데이터의 따옴표 포함 문제 해결
- 자식 요소(path 등) 속성에서 불필요한 따옴표 자동 제거
- Error: <svg> attribute viewBox: Expected number 에러 해소
2026-02-23 16:31:21 +09:00
김보곤
4c36f583c8
fix: [lucide] createElement 대신 직접 SVG DOM 생성하여 viewBox 속성 에러 해결
...
- lucide.createElement가 SVG 속성에 따옴표를 포함시키는 버그 우회
- 아이콘 데이터 배열에서 createElementNS로 직접 SVG 생성
- 25개 Blade 파일 일괄 적용
2026-02-23 16:15:27 +09:00
김보곤
2481fce74d
fix: [lucide] 버전을 0.469.0으로 추가 다운그레이드
2026-02-23 16:11:47 +09:00
김보곤
decbf4c127
fix: [lucide] 버전을 0.474.0으로 고정하여 SVG viewBox 속성 에러 해결
...
- lucide@latest(0.575.0)에서 createElement SVG 속성에 따옴표 포함되는 버그 발생
- 28개 Blade 파일 일괄 변경
2026-02-23 16:08:04 +09:00
김보곤
005020f5ec
fix: [bank-transaction] uniqueKey에 적요(summary) 추가하여 동일 금액·시간 거래 구분
...
- BankTransaction 모델: getUniqueKeyAttribute, generateUniqueKey에 summary 추가
- EaccountController: API 응답 및 DB upsert 시 summary 포함 매칭
- JournalEntry, JournalEntryController: 레거시(5필드) 키 호환 처리
- BankTransactionOverride: 레거시 키 호환 조회
2026-02-23 16:02:36 +09:00
김보곤
a1c9c68607
fix: [receivables] 탭 순서 변경 — 거래처별 요약을 기본 탭으로
2026-02-23 15:50:16 +09:00
김보곤
a3d63a8a59
feat: [esign] 고객 도장 업로드 시 배경 자동 제거 기능 추가
...
- Canvas API로 흰색/밝은 배경 픽셀을 투명 처리
- 경계 부분 부드러운 페이드 처리 (anti-aliasing)
- 미리보기에 체크무늬 배경으로 투명 영역 시각화
- "배경이 자동 제거되었습니다" 안내 메시지 표시
2026-02-23 15:46:32 +09:00
김보곤
8cfab74e1f
feat: [receivables] 미분개 홈택스 매출세금계산서도 외상매출금 원장에 표시
2026-02-23 15:43:21 +09:00
김보곤
7465a2b674
refactor: [receivables] 기간 필터를 공통 필터바로 통합
...
- 미지급금관리와 동일한 패턴으로 기간 관리 구조 변경
- 기간 설정을 메인 컴포넌트에서 관리하고 각 탭에 props로 전달
- localStorage에 기간 저장 (탭 이동/새로고침 시 유지)
- 월 빠른 선택 버튼 추가 (이번달, 지난달, D-2월, D-3월, 올해전체)
- 각 탭 내부 개별 필터 제거, 공통 필터바로 통합
2026-02-23 15:17:27 +09:00
김보곤
9625d5e0a1
feat: [finance] 미지급금관리 기간 저장 및 월선택 편의 버튼 추가
...
- localStorage로 시작일/종료일 저장 (재방문 시 유지)
- 이번달/지난달/D-2월/D-3월/올해전체 빠른 선택 버튼
2026-02-23 15:13:36 +09:00
김보곤
5f0ef5dbb9
refactor: [receivables] 수동관리 탭 제거
...
- ManualTab 컴포넌트 및 관련 유틸 함수 삭제
- 미사용 아이콘 선언 정리
- 외상매출금 원장 / 거래처별 요약 2탭 구조로 변경
2026-02-23 15:07:26 +09:00
김보곤
389d571180
refactor: [finance] 미지급금관리 수동 관리 탭 제거
2026-02-23 14:55:37 +09:00
김보곤
530c8bcc64
fix: [receivables] JSX style prop 문자열→객체 문법 수정
...
- React에서 style="..." 문자열은 에러 #62 발생
- style={{...}} 객체 문법으로 전체 수정
2026-02-23 14:53:38 +09:00
김보곤
f23255192d
feat: [receivables] 외상매출금 원장/거래처별 요약 연동
...
- 홈택스 분개(hometax_invoice_journals)와 일반전표(journal_entry_lines)에서 계정코드 108(외상매출금) 데이터 집계
- ledger() API: 날짜순 정렬, 누적잔액 계산, 출처/거래처/기간 필터
- summary() API: 거래처별 발생액/회수액/잔액 요약
- UI 3탭 구조로 개편: 외상매출금 원장 / 거래처별 요약 / 수동관리(기존)
- 거래처별 요약에서 행 클릭 시 해당 거래처 원장으로 이동
2026-02-23 14:49:46 +09:00
김보곤
a7aef552c3
feat: [esign] 고객(counterpart) 도장 업로드/선택 기능 추가
...
- 백엔드: submitSignature에 stamp_image(base64) 파라미터 처리 추가
- 프론트: counterpart 역할에 도장 선택 UI 항상 표시
- 프론트: 도장 이미지 업로드(PNG/JPG, 5MB 제한) 및 미리보기 기능
- 기존 Creator 법인도장 흐름은 변경 없음
2026-02-23 14:48:30 +09:00
김보곤
3e294f4a1f
feat: [finance] 미지급금관리 홈택스/일반전표 데이터 통합 조회
...
- 홈택스 매입세금계산서 미지급금/미지급비용 대변 데이터 연동
- 일반전표 미지급금/미지급비용 차변 상계 데이터 연동
- 거래처별 잔액 자동 계산 (발생-상계)
- 통합잔액/홈택스발생/일반전표상계/수동관리 4탭 구조
2026-02-23 14:45:32 +09:00
김보곤
7a7904efc1
fix: [academy] Docker 환경이해 페이지에 로컬/서버 환경 차이 반영
...
- 서버는 Docker 없이 네이티브로 운영됨을 명시하는 핵심 안내 박스 추가
- 섹션 2 제목을 "SAM 로컬 Docker 아키텍처"로 변경
- 섹션 5-3에 서버 네이티브 구조도 추가
- 섹션 6에 로컬(Docker) vs 서버(네이티브) 명령어 비교표 추가
- 목차(TOC) 업데이트
2026-02-23 14:10:27 +09:00
김보곤
d8528ed54d
fix: [esign] 그룹 드래그 후 선택 해제되는 문제 수정
...
- 드래그 완료 후 click 이벤트에서 선택 변경 무시
- 여백 클릭 시에만 그룹 선택 해제
2026-02-23 14:08:15 +09:00
김보곤
0d98fabf8d
feat: [esign] Shift+클릭으로 필드 다중 선택/해제 토글 기능 추가
2026-02-23 14:05:05 +09:00
김보곤
01997806d6
feat: [esign] 올가미 선택 필드 그룹 드래그 이동 기능 추가
...
- 다중 선택된 필드 드래그 시 전체 그룹이 동시에 이동
- FieldOverlay에 selectedIndices/onGroupMove props 전달
- 단일 선택 시 기존 동작 유지
2026-02-23 14:03:00 +09:00
김보곤
fc92ea26ec
feat: [academy] 방화셔터 동작 애니메이션 추가
...
- 인라인 SVG + CSS @keyframes 애니메이션
- 감김→1차하강→완전폐쇄→복귀 루프
- 재생/정지/리셋 컨트롤, 상태 텍스트 표시
2026-02-23 13:49:27 +09:00
김보곤
eff567c2fd
fix: [esign] 올가미 다중 선택 후 즉시 해제되는 버그 수정
...
- 올가미 mouseup 후 click 이벤트가 상위 div로 버블링되어 clearSelection() 호출되는 문제
- 컨테이너 div에 onClick stopPropagation 추가하여 이벤트 전파 차단
- lassoUsedRef 플래그로 올가미 직후 click 이벤트 무시
2026-02-23 13:45:29 +09:00
김보곤
4b4db55418
feat: [esign] 템플릿 필드 편집기 다중 선택/잘라내기/붙여넣기 + 폰트 수정
...
- 올가미(Lasso) 드래그로 여러 필드 다중 선택 기능 추가
- Ctrl+클릭으로 개별 필드 토글 선택 지원
- Ctrl+X 잘라내기, Ctrl+C 복사, Ctrl+V 붙여넣기 (다중 필드)
- 다른 페이지로 붙여넣기 시 현재 페이지에 배치
- Delete/방향키 다중 필드 일괄 삭제/이동 지원
- PDF.js CMap 설정 추가로 Pretendard 등 한글 폰트 렌더링 개선
2026-02-23 13:24:44 +09:00