Commit Graph

1510 Commits

Author SHA1 Message Date
김보곤
7c03aba203 fix: [approval] 전용 폼 선택 시 제목을 항상 양식명으로 설정 2026-03-05 23:46:53 +09:00
김보곤
4daca61007 feat: [approval] 경력증명서 기안/조회/PDF 기능 추가
- CareerCertService: 사원 경력정보 조회 + TCPDF PDF 생성
- 기안 작성 폼: 사원 선택, 인적/경력/발급 정보, 미리보기
- 상세 조회: 읽기전용 렌더링 + 미리보기/PDF 다운로드
- API: career-cert-info, career-cert-pdf 엔드포인트
2026-03-05 23:41:45 +09:00
김보곤
8cdedae07e feat: [corporate-card] 카드분리 기능 추가
- 결제 내역 수정 모달에 카드분리 버튼 추가
- 카드별 배분금액 직접 입력 UI
- 균등 배분 / 비율 배분 / 해제 버튼
- 배분 합계 검증 (일치해야 저장 가능)
- card_splits 데이터 JSON 저장 (기존 items 확장)
- cardDeductions 로직: card_splits 우선 적용, 없으면 기존 비율 배분
2026-03-05 23:19:41 +09:00
김보곤
dab120eacd fix: [sidebar] 메뉴 검색 결과 텍스트 색상 가독성 개선 2026-03-05 22:11:45 +09:00
김보곤
cb88c02ae5 fix: [rd] 중대재해처벌법 진단 개요 너비 20% 확대 및 체크리스트 전체 너비 사용 2026-03-05 22:08:39 +09:00
김보곤
e7e0f55a27 feat: [rd] 중대재해처벌법 실무 점검 대시보드 추가
- 6개 카테고리 34개 점검항목 인터랙티브 체크리스트
- Chart.js 도넛/막대 차트 실시간 통계
- React 기반 SPA 대시보드
2026-03-05 21:57:21 +09:00
김보곤
53a851740a feat: [juil] 업무 Workflow 분기형 UI 구현
- 입찰 참여 기업 / 수의계약 기업 두 경로로 분기
- A경로: 영업 → 견적서 작성 → 입찰 참여 → 수주/계약
- B경로: 영업 → 견적서 작성 → 수주/계약 (입찰 생략)
- 분기/합류 시각적 연결선으로 표현
- 수주/계약 이후 공통 프로세스로 합류
2026-03-05 21:28:07 +09:00
김보곤
106e654cbd fix: [juil] 업무 Workflow 프로세스 순서 수정
- 영업/수주 → 영업 (수주는 견적 이후로 이동)
- 순서 변경: 영업 → 입찰 참여 → 견적서 작성 → 수주/계약
- 입찰 참여를 선택적 단계로 변경 (소규모/수의계약 시 생략 가능)
- 분기 표시: 대형/공공 vs 소규모/수의계약 경로 안내
2026-03-05 21:18:56 +09:00
김보곤
6de7ff21e4 fix: [sidebar] 메뉴 검색 닫기 시 스크롤 위치가 초기화되는 문제 수정
- 검색 닫기 시 매칭된 메뉴 위치로 스크롤 유지
- 부모 그룹 자동 펼침으로 해당 메뉴 바로 확인 가능
2026-03-05 21:06:08 +09:00
김보곤
8e4be54e3e fix: [bank-account] 보유계좌관리 테이블에 테넌트ID 열 추가 2026-03-05 21:01:15 +09:00
김보곤
a96cb35068 feat: [tenant] 테넌트 편집에 인쇄용 회사 표시명 필드 추가
- 테넌트 편집 페이지에 '인쇄용 회사명' 입력 필드 추가
- 저장 시 tenant_settings 테이블에 display_company_name 저장
- 재직증명서 등 문서에서 표시명 우선 적용
2026-03-05 20:20:48 +09:00
김보곤
5ae9db5842 feat: [cm-song] 나레이션 제작 시 자동 저장
- 저장 버튼 제거, 제작 완료 시 서버에 자동 저장
- 자동 저장 상태 표시 (저장 중.../자동 저장됨/저장 실패)
- 불필요한 나레이션은 목록에서 삭제하는 방식으로 변경
2026-03-05 20:13:48 +09:00
김보곤
e28077745f feat: [juil] 업무 Workflow 상세 모달 추가
- 각 워크플로우 단계 클릭 시 상세 업무 모달 표시
- 서브플로우 4단계 (단계별 아코디언 펼침)
- Input/Output, 담당자, 소요시간, TIP 정보 포함
- 미니 서브플로우 다이어그램으로 단계 간 이동 가능
2026-03-05 20:00:04 +09:00
김보곤
2658b44618 feat: [juil] 업무 Workflow 플로우차트 메뉴 추가
- 주일기업 기획 하위 '업무 Workflow' 메뉴 추가
- 11단계 업무처리과정 인터랙티브 플로우차트 구현
- 각 단계 클릭 시 상세정보(담당부서, 필요서류, SAM 연동) 표시
2026-03-05 19:41:43 +09:00
김보곤
72c93a47fa feat: [tenant-settings] 회사 표시명 설정 추가
- 테넌트 설정에 '인쇄용 회사명' 입력 필드 추가
- 재직증명서 등 문서 인쇄 시 표시명 우선 적용
- 비워두면 기본 company_name 사용
2026-03-05 19:37:03 +09:00
김보곤
7f73c054d5 refactor: [approval] 재직증명서 DOCX 생성을 제거하고 content JSON 저장 + PDF 다운로드 방식으로 변경
- 상신 시 DOCX 생성 API 호출 제거, content JSON만 저장
- show 페이지에 PDF 다운로드 버튼 추가
- TCPDF 기반 PDF 생성 (기존 Pretendard 한글 폰트 활용)
- EmploymentCertService에서 generateDocx/createFileRecord 제거
2026-03-05 19:29:38 +09:00
김보곤
62e9a9b8a2 feat: [approval] 재직증명서 미리보기 및 인쇄 기능 추가
- create/edit: 미리보기 버튼 + 모달 (실제 증명서 양식 레이아웃)
- show: 증명서 미리보기 버튼 + 모달 (content 데이터 기반)
- 인쇄 버튼으로 새 창에서 바로 인쇄 가능
2026-03-05 19:14:11 +09:00
김보곤
dde0acad72 feat: [approval] 재직증명서 기안 기능 추가
- EmploymentCertService: 사원 정보 조회, DOCX 생성, 파일 레코드 생성
- API 엔드포인트: cert-info/{userId}, generate-cert-docx
- _certificate-form: 인적사항/재직사항/발급정보 입력 폼
- _certificate-show: 재직증명서 읽기전용 표시 파셜
- create/edit/show에 employment_cert 양식 분기 처리
- phpoffice/phpword 패키지 추가
2026-03-05 18:54:03 +09:00
김보곤
5ed34ca27b feat: [approval] 결재함/참조함/완료함 페이지 사이즈 선택, 체크박스 선택삭제 기능 추가
- 기안함과 동일한 UI 패턴 적용
- 페이지당 표시 건수 선택 (15/50/100/200/500)
- 전체선택/개별선택 체크박스 + 선택삭제
- 슈퍼관리자 영구삭제 컬럼 추가
2026-03-05 17:46:27 +09:00
김보곤
27f520d303 feat: [approval] 기안함 페이지 사이즈 선택, 체크박스 선택삭제 기능 추가
- 페이지당 표시 건수 선택 (15/50/100/200/500, 기본 15)
- 첫 번째 열 체크박스 추가 (전체선택/개별선택)
- 선택삭제 버튼 및 bulk-delete API 엔드포인트 추가
2026-03-05 17:23:31 +09:00
김보곤
975a90d1f8 feat: [approval] 기안함 작성자 열 추가 및 슈퍼관리자 영구삭제 기능
- 기안함 테이블에 작성자 열 추가
- 슈퍼관리자: 전체 기안문서 조회 + 영구삭제 버튼
- forceDestroy API 엔드포인트 추가 (연관 Leave/Steps 함께 삭제)
- 기안함에서 휴가신청 시 Leave 자동 생성 로직 추가
2026-03-05 16:22:11 +09:00
김보곤
1b85a26f1d fix: [leave] 휴가신청 탭 기본 종료일을 연말로 변경
- 미래 날짜 휴가가 기본 필터에서 제외되는 문제 수정
- date_to 기본값: today → endOfYear
2026-03-05 16:06:31 +09:00
김보곤
810242ecdf feat: [dashboard] 비본사/영업팀/소속없음 사용자는 주간 날씨만 표시
- HQ(코드브릿지엑스) 테넌트가 아닌 경우 날씨 카드만 노출
- 소속 부서가 없거나 영업팀만 소속인 경우 날씨 카드만 노출
- Quick Actions, 달력, 일정 모달은 본사 직원만 표시
2026-03-05 16:00:10 +09:00
김보곤
a63b501964 feat: [approval] 기안함 휴가신청 → 휴가관리 연동
- 기안함에서 휴가/근태신청/사유서 양식 선택 시 전용 입력 폼 표시
- 양식코드별 유형 필터링 (leave/attendance_request/reason_report)
- saveApproval()에서 content에 구조화된 데이터 포함
- handleApprovalCompleted()에서 Leave 없을 시 자동 생성
- createLeaveFromApproval() 메서드 추가
2026-03-05 15:57:57 +09:00
김보곤
7b9c101065 feat: [business-card] 명함신청 화면에 제작 일정 안내 배너 추가
- 그라데이션 배경 + SVG 장식 배너 디자인
- 신청 마감/제작 소요/배송 기간 일정 안내
- 컬러 아이콘 활용 시각적 구분
2026-03-05 15:28:14 +09:00
김보곤
dd9b534162 feat: [hr] 휴가관리 잔여연차 탭에도 재직상태 필터 추가 2026-03-05 15:23:08 +09:00
김보곤
8af1647173 feat: [hr] 연차잔여 탭에 재직상태 필터 추가 (전체/재직자/퇴직자)
- 필터 기본값: 재직자 (active + leave)
- 퇴직자 선택 시 resigned만 표시
- 전체 선택 시 모든 상태 표시
2026-03-05 15:17:12 +09:00
김보곤
013df2592f feat: [hr] 사원관리 영업팀 제외 및 강제 제외 기능 추가
- 영업팀 포함 부서 사원 기본 제외 (외부직원)
- json_extra.is_excluded 플래그로 강제 제외/복원 토글
- 필터에 '제외 사원 표시' 체크박스 추가
- 제외 사원 시각적 구분 (주황 배경, 제외 뱃지)
2026-03-05 15:16:31 +09:00
김보곤
9192291400 feat: [layout] Remix Icon CDN 추가
- R&D 페이지에서 ri-* 아이콘이 렌더링되지 않던 문제 해결
2026-03-05 14:59:50 +09:00
김보곤
da1fc41acb fix: [cm-song] 나레이션 제작 TTS 오디오 재생 버튼 미표시 수정
- TTS try-catch 블록 누락 수정 (JS 구문 오류 해결)
- audioReady display:flex 명시적 설정 (hidden 제거 후 레이아웃 보장)
2026-03-05 14:56:56 +09:00
김보곤
3bba48e443 refactor: [rd] CM송 → 나레이션 명칭 변경 + 결과 자동 스크롤
- 모든 UI 텍스트 CM송 → 나레이션으로 변경
- 버튼: 나레이션 제작
- 제작 시 결과 패널로 자동 스크롤
- 프롬프트, 다운로드 파일명, 저장 메시지 모두 변경
2026-03-05 14:51:22 +09:00
김보곤
135d88e812 fix: [rd] CM송 제작 입력 필드 기본값 설정 2026-03-05 14:46:20 +09:00
김보곤
272df31501 feat: [rd] CM송 길이 슬라이더, 다운로드, 저장/목록 기능 추가
- 10~60초 5초 간격 길이 선택 슬라이더
- 음성 파일 WAV 다운로드
- 생성 결과 DB 저장 + 목록/상세/삭제 관리
- CmSong 모델 + tenant 스토리지 연동
2026-03-05 14:37:29 +09:00
김보곤
0e9f1297b8 feat: [rd] AI CM송 제작 기능 추가
- Gemini API 기반 CM송 가사 생성 + TTS 음성 생성
- 연구개발 대시보드에 CM송 제작 카드 추가
- 서버사이드 API 프록시로 API 키 보호
2026-03-05 14:13:59 +09:00
김보곤
9727a092e6 feat: [approval] 반려 이력 관리 기능 추가
- rejection_history JSON 컬럼으로 반려 이력 누적 저장
- 재상신 시 반려자, 사유, 일시를 이력에 기록
- 상세 페이지에 반려 이력 섹션 표시 (빨간 테두리)
- 수정 페이지에 이전 반려 이력 표시 (주황 배경)
2026-03-05 13:51:16 +09:00
김보곤
5fd69830ca feat: [approval] 기안함/완료함/대기함에 재상신 구분 열 추가
- resubmit_count 필드로 재상신 횟수 추적
- 반려 후 재상신 시 카운트 증가
- 보라색 뱃지로 재상신/재상신(N차) 표시
2026-03-05 13:06:58 +09:00
김보곤
61e77346de fix: [approval] 완료함 확인 상태 컬럼 추가 및 개별 읽음 처리로 변경
- 일괄 읽음 처리 제거 → 상세 페이지 열람 시에만 개별 읽음 처리
- 확인 컬럼 추가: 확인전(주황) / 확인(회색) 뱃지 표시
- 미확인 행 배경 하이라이트(주황) + 제목 볼드 처리
- 기안자 본인 문서만 확인 상태 표시, 타인 문서는 - 표시
2026-03-05 12:54:09 +09:00
김보곤
280367170a feat: [approval] 완료함 미읽음 알림 뱃지 기능 추가
- approvals 테이블에 drafter_read_at 컬럼 추가 (API 마이그레이션)
- 승인/반려/전결 완료 시 drafter_read_at = null 설정
- getBadgeCounts()에 completed_unread 카운트 추가
- 사이드메뉴 완료함에 미읽음 뱃지 표시 (주황색)
- 완료함 페이지 진입 시 일괄 읽음 처리
- 상세 페이지 열람 시 개별 읽음 처리
2026-03-05 11:38:05 +09:00
김보곤
2e999114ae fix: [approval] 결재서명란 테이블 크기 확대 (150% 너비, 130% 글씨)
- 셀 패딩 10px→16px, min-width 64px→96px
- 기본 폰트 12px→15px, 도장 32px→42px
- 결재 헤더 13px→16px, 이름/날짜 비례 확대
2026-03-05 11:29:29 +09:00
김보곤
daa7d40f4e feat: [approval] 결재서명란 테이블 추가 (전통 결재 양식)
- 문서 상세 우측 상단에 결재서명란 테이블 배치
- 작성자 + 결재자 컬럼, 직급/이름/서명/날짜 표시
- 승인/반려/보류/전결 상태별 도장 아이콘
- 기존 원형 타임라인 결재 진행 제거, 결재 의견만 유지
2026-03-05 11:23:48 +09:00
김보곤
76aabebc6e fix: [approval] 거래처 검색 키보드 방향키 내비게이션 버그 수정
- moveDown/moveUp 시 debounce 타이머 클리어하여 search 재실행 방지
2026-03-05 11:16:21 +09:00
김보곤
29c41165cc fix: [approvals] 거래처 선택 후 드롭다운이 다시 열리는 문제 수정
- 선택 시 selected 플래그 설정 + blur로 포커스 해제
- onInput/onFocus에서 selected 상태면 검색 차단
- 다시 직접 타이핑 시 selected 해제되어 검색 재개
2026-03-05 11:05:24 +09:00
김보곤
447c2152d2 fix: [approvals] 거래처 검색 드롭다운을 순수 DOM으로 body에 직접 렌더링
- x-teleport 대신 document.body.appendChild로 드롭다운 생성
- position:fixed + z-index:99999로 모든 레이아웃 위에 표시
- mousedown으로 blur 전 선택 처리
2026-03-05 10:58:13 +09:00
김보곤
75b359cec6 fix: [approvals] 거래처 검색 드롭다운이 레이아웃에 가려지는 문제 수정
- x-teleport로 body에 렌더링하여 overflow 영향 제거
- position:fixed + getBoundingClientRect로 정확한 위치 계산
2026-03-05 10:55:23 +09:00
김보곤
a29d246330 feat: [approvals] 지출결의서 업체명에 거래처 검색 기능 추가
- 업체명 input을 거래처 검색 자동완성으로 교체
- 기존 trading_partners 검색 API 활용 (/barobill/tax-invoice/search-partners)
- 거래처명/사업자번호로 검색, 드롭다운에서 선택
- 키보드 탐색 지원 (위/아래 화살표, Enter, Escape)
- vendor_id, vendor_biz_no 추가 저장
2026-03-05 10:53:03 +09:00
김보곤
011446bab5 fix: [approvals] 불러오기 버튼을 양식 선택 옆으로 이동 2026-03-05 10:46:24 +09:00
김보곤
8226552da5 feat: [approvals] 지출결의서 불러오기 기능 추가
- 기안 작성 시 '불러오기' 버튼으로 기존 지출결의서 불러오기
- 지출결의서 이력 API 엔드포인트 추가 (/expense-history)
- 선택한 지출결의서의 내용을 새 폼에 복사 (날짜는 오늘로 초기화)
2026-03-05 10:27:07 +09:00
김보곤
0d0e458d63 fix: [approvals] 지출부서 기본값 경리부로 변경, 복지카드 옵션 삭제 2026-03-05 10:20:29 +09:00
김보곤
7528113fc3 fix: [approvals] 결재일자 기본값을 현재일자로 설정 2026-03-05 10:17:56 +09:00
김보곤
eae39be233 feat: [approvals] 지출결의서 양식 필드 추가
- 지출형식에 '자동이체 출금' 라디오버튼 추가
- 세금계산서 종류에 '없음' 옵션 추가
- 작성일자 옆에 '결재일자' 날짜 입력 필드 추가
- 저장/수정 로직(getFormData)에 신규 필드 반영
- 읽기전용 표시(_expense-show)에도 반영
2026-03-05 10:15:53 +09:00