Commit Graph

916 Commits

Author SHA1 Message Date
김보곤
58991e352e feat: [esign] 근로계약서 사원 불러오기 시 주소, 생년월일, 계약일 자동 반영
- 주민등록번호에서 출생년도/월/일 분리 (세기 자동 판별)
- 입사일 기반 계약일, 근로계약시작일, 연봉계약시작일 자동 반영
- 연봉계약종료일은 입사일 + 1년으로 계산
- 사원 주소, 계약자 이름 자동 매핑 추가
2026-03-11 16:18:37 +09:00
김보곤
2d3f915a30 fix: [barobill] 은행거래 동기화 시 중복 키 에러 수정
- summary 포함 WHERE와 DB unique index 불일치로 발생하는 duplicate entry 에러
- insert를 insertOrIgnore로 변경하여 중복 시 무시
2026-03-11 15:48:33 +09:00
김보곤
a97396df99 fix: [journal] 전표 적요 수정 시 자금일보에 반영되도록 동기화
- 은행거래 출처 전표의 적요 수정 시 BankTransactionOverride에 저장
- 기존 modified_cast 오버라이드 값 보존
2026-03-11 15:27:50 +09:00
김보곤
bb3ffc6085 feat: [esign] 사원 불러오기 기능 추가 및 랜덤 데이터 품질 개선
- 근로계약서 시 '사원 불러오기' 버튼으로 직원 검색/선택 기능
- fillRandomVariables 스마트 기본값 생성 (테스트_ 접두사 제거)
- searchEmployees API 엔드포인트 추가
2026-03-11 14:27:32 +09:00
김보곤
ea4e16bbd0 feat: [esign] 계약 수정 화면에 서명 필드 값 편집 기능 추가
- 수정 화면에서 text/date/checkbox 필드 값 인라인 편집
- 필드별 서명자 구분(작성자/상대방), 페이지 번호 표시
- update API에서 필드 값 일괄 업데이트 처리
2026-03-11 13:05:36 +09:00
김보곤
edc69040ab feat: [esign] 전자계약 수정 기능 추가
- draft 상태 계약의 제목, 설명, 서명자 정보, 파일 수정 가능
- 계약 상세 페이지에 '계약 정보 수정' 버튼 추가
- create.blade.php를 생성/수정 겸용으로 확장
2026-03-11 11:55:46 +09:00
김보곤
ca36e8e54d fix: [daily-fund] 일일자금일보 바로빌 데이터 자동 동기화 추가
- periodReport에서 데이터 조회 전 바로빌 API 자동 동기화 트리거
- BarobillBankSyncService 서비스 클래스 생성 (EaccountController 로직 분리)
- 현재 월 캐시 10분 만료, 과거 월 영구 캐시 정책 동일 적용
- 동기화 실패 시 기존 DB 캐시로 폴백 (서비스 중단 방지)
2026-03-11 09:55:50 +09:00
김보곤
64b0325d75 feat: [rd] 클코 → 슬랙 변환기 추가
- Claude Code CLI 출력을 슬랙 mrkdwn 형식으로 자동 변환
- 마크다운 → 슬랙 문법 변환 (볼드, 코드블록, 링크 등)
- 슬랙 스타일 실시간 미리보기
- 클립보드 복사/붙여넣기 지원
2026-03-11 09:20:22 +09:00
김보곤
e65e2f3dc8 feat: [payroll] 슈퍼관리자 급여 수정/지급취소 권한 추가
- 지급완료/확정 상태에서도 슈퍼관리자는 급여 수정 가능
- 지급취소(unpay) 기능 추가: paid → draft 상태 되돌리기
- 테이블에 슈퍼관리자 전용 수정/지급취소 버튼 표시
2026-03-11 06:52:03 +09:00
d292c8eefc fix: [pm] 프로젝트 관리 HTMX 부분 로드 시 HX-Redirect 적용
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 01:18:05 +09:00
d7c4283b66 feat: [admin] 일괄 작업 및 작업 버튼 뱃지 UI 적용
- 사용자/부서/역할 페이지에 체크박스 선택 + 일괄 삭제/복원/영구삭제
- 사용자 테이블: 이메일을 이름 아래로 이동, 이메일 컬럼 제거
- 사용자/부서/테넌트 작업 버튼 뱃지 스타일로 변경

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 01:18:05 +09:00
김보곤
6d2720edf3 fix: [payroll] 전표 공제항목 동일 항목 병합 처리
- 기타공제 이름 정규화 (trim, 공백 통일)
- 동일 description + trading_partner 공제항목 합산 병합
- 중복 라인 제거하여 깔끔한 전표 생성
2026-03-10 16:34:19 +09:00
김보곤
3f3b843f36 fix: [payroll] 전표 기타공제 항목별 분리 및 음수 금액 처리
- 기타공제를 합산 단일 라인에서 항목별(연말정산소득세, 연말정산지방소득세 등) 분리
- formatInputCurrency/parseInputCurrency 음수 부호 처리 추가
- JournalEntryController validation에서 min:0 제거하여 음수 credit_amount 허용
2026-03-10 12:44:09 +09:00
김보곤
17d86958ea fix: [payroll] 음수 공제항목 전표 처리 방식 수정
- 음수 공제(환급)를 차변 별도 라인 대신 대변 마이너스로 처리
- 차변은 총지급액(gross_salary) 단일 라인 고정
- 대변합계 = 양수공제 + 음수공제(마이너스 대변) + 실수령액 = 차변
2026-03-10 12:26:34 +09:00
김보곤
c24d5cc672 fix: [payroll] 전표 생성 음수 공제(환급) 처리 및 역산 제거
- 음수 공제항목을 차변 207 예수금으로 처리 (환급 = 예수금 감소)
- 역산 방식 제거, DB의 실제 net_salary 사용
- 공제항목 루프 처리로 코드 간결화
2026-03-10 11:42:38 +09:00
김보곤
129b383ed5 fix: [journal] 급여 전표 수정 허용 및 source_type 라벨 개선
- payroll source_type 전표 수정 허용 (기존: manual, bank_transaction만)
- source_type별 정확한 라벨 매핑 (카드사용내역, 홈택스 매출/매입)
- 프론트/백엔드 양쪽 수정
2026-03-10 11:37:45 +09:00
김보곤
764ae09615 fix: [payroll] 전표 미지급비용을 역산으로 차대 균형 보장
- net_salary를 DB 값 대신 (총지급액 - 공제 합계)로 역산
- DB 데이터 불일치 시에도 전표 차대 균형 보장
2026-03-10 11:33:02 +09:00
김보곤
c53b3d8bc3 fix: [payroll] 전표 생성 시 기타공제 누락 수정 및 에러 모달 추가
- 기타공제(deductions JSON) 항목을 대변 207 예수금에 반영
- 차대 불균형 시 상세 분개 내역을 에러 모달로 표시
- toast 대신 복사 가능한 모달로 에러 메시지 표시
2026-03-10 11:30:27 +09:00
김보곤
50275b0500 feat: [employee] 사원관리 개인 이메일 필드 추가
- 사원 수정 폼에 개인 이메일 입력 필드 추가
- 레이아웃 2x2 배열로 변경 (업무용 이메일|개인 이메일 / 주민등록번호|연락처)
- Employee 모델에 personalEmail accessor 추가
- 컨트롤러 validation, 서비스 jsonExtraKeys에 personal_email 반영
2026-03-10 10:04:24 +09:00
김보곤
26d081d04e fix: [journal] 전표 거래처 검색 limit(50) 제거 — 전체 활성 거래처 로드 2026-03-10 09:53:48 +09:00
김보곤
ca0473d541 feat: [payroll] 급여명세서 이메일 발송 기능 추가
- PayslipMail Mailable 클래스 생성 (admin@codebridge-x.com 발송)
- 급여명세서 이메일 템플릿 (전통 한국식 양식)
- 이메일 발송 API 엔드포인트 추가 (POST /payrolls/{id}/send-payslip)
- 목록 테이블에 이메일 발송 아이콘 버튼 추가
- 급여명세서 미리보기 모달 + 인쇄 기능
2026-03-10 01:06:21 +09:00
김보곤
512f01bea6 feat: [hr] 휴가관리 참조자 선택 기능 추가
- 휴가 신청 모달에 참조자 검색/선택 UI 추가 (Alpine.js)
- 부서별 사용자 목록에서 참조자 검색 및 녹색 칩 표시
- LeaveController 참조 배열 유효성 검증 추가
- LeaveService에서 결재선 steps에 참조자 자동 병합
2026-03-10 00:09:09 +09:00
김보곤
fff45cf707 fix: [hr] 급여관리 접근 권한 사용자 변경 (이경호 → 이의찬) 2026-03-10 00:00:01 +09:00
김보곤
888e810d31 fix: [finance] 거래처 등록 필수값 개선 (거래처명+사업자번호만 필수)
- 백엔드: bizNo 필수 검증 추가, trade_type/status null-safe 처리
- 프론트엔드: 사업자번호 필수 검증 + 라벨에 * 표시 추가
- 나머지 필드 비어있어도 저장 가능하도록 NOT NULL 컬럼 기본값 보장
2026-03-09 10:54:07 +09:00
김보곤
f855da6c71 fix: [finance] 거래처 등록/수정 시 NOT NULL 컬럼 기본값 누락 수정
- type, category 컬럼이 NOT NULL인데 빈 값 전달 시 null 변환되어 DB 오류 발생
- store: null 대신 DB 기본값(vendor, 기타) 적용
- update: null 대신 기존 값 유지
2026-03-09 10:49:47 +09:00
김보곤
48a8dd9cf4 feat: [rd] 방화셔터 도면생성 기능 구현
- 4탭 구성: 설정 / 가이드레일 / 셔터박스 / 3D 렌더링
- 가이드레일 C-채널 SVG 단면도 (횡단면/정면도)
- 셔터박스 SVG 단면도 (정면/측면, 내부 부품 ON/OFF)
- Three.js 3D 조립체 렌더링 (셔터 개폐 애니메이션, 투명도, 부품 토글)
- DXF/PNG/JSON 내보내기, localStorage 프리셋 관리
- 제품 유형별(강판/스크린) 기본값 자동 적용
2026-03-08 19:30:05 +09:00
김보곤
b5cec674b1 feat: [rd] 자동도면 생성 메뉴 추가
- 레거시 전개도 시뮬레이터를 MNG 환경으로 마이그레이션
- RdController에 autoDrawing 메서드 추가 (HX-Request 체크 포함)
- 라우트: GET /rd/auto-drawing
- R&D 대시보드에 자동도면 생성 카드 추가
- 레거시 PHP 코드 제거 (세션, API키, 서버기록 등)
- Three.js 3D 렌더링, SVG 미리보기, DXF 도면 생성 기능 유지
2026-03-08 17:53:48 +09:00
김보곤
9b7362fa4f fix: [sound-logo] 음성 카테고리 기반 선택으로 재구성
- 여성/남성/아이 카테고리 탭으로 1차 분류 (성별 확실한 전달)
- 공식 문서 기반 음성 성별 정보 수정 (Gacrux=여성, Sadachbia=남성 등)
- 아이 카테고리: 젊은 음성 + 'young child, high-pitched' Director's Note 지시문
- 스타일 옵션에서 아이/청소년 제거 (카테고리로 이동)
- 프롬프트 형식을 Director's Note 형식으로 개선
2026-03-08 14:12:57 +09:00
김보곤
0e86636354 feat: [sound-logo] 아이 목소리 옵션 + 말하기 속도 조절 추가
- 스타일 옵션에 어린이(5~7세), 초등학생(8~12세), 청소년(13~18세) 추가
- 말하기 속도 슬라이더 추가 (매우느리게~매우빠르게 5단계)
- 속도와 스타일을 TTS 프롬프트 지시문으로 조합하여 Gemini API에 전달
- 음성 목록 여성/남성/중성 순서로 정렬
2026-03-08 14:05:22 +09:00
김보곤
64b3ad2b59 feat: [sound-logo] TTS 음성 옵션 확장 + 잡음 문제 수정
- PCM 디코딩 endianness 수정 (big-endian → little-endian, Gemini TTS는 s16le)
- 16종 음성 선택 옵션 추가 (남성/여성/중성, 성격 설명)
- 9종 발화 스타일 옵션 추가 (밝고 활기차게, 차분하고 신뢰감 등)
- 음성/스타일을 컨트롤러에 전달하여 Gemini API에 적용
- 기본 텍스트: '우리들의 솔루션 쌤, 쌤, 쌤'
2026-03-08 13:58:48 +09:00
김보곤
f8a00c3f8c feat: [rd] AI 배경음악 생성 기능 추가 (Google Lyria RealTime)
- Lyria RealTime WebSocket 연동으로 다중 악기 배경음악 실시간 생성
- BPM, 밀도, 밝기, 스케일 컨트롤 지원
- 시퀀서 + 음성 + 배경음악 3중 합성 (playAll, exportWav)
- 서버 API 키 보호 엔드포인트 (lyria-config)
- 빠른 프롬프트 10종 제공
2026-03-08 13:37:25 +09:00
김보곤
d02c142f65 feat: [rd] 사운드로고/나레이션 AI 토큰 사용량 기록 추가
- RdController: 사운드로고-AI생성, 사운드로고-TTS 토큰 기록
- CmSongController: 나레이션-가사생성, 나레이션-TTS 토큰 기록
- AI 토큰 사용량 UI에 사운드로고/나레이션 카테고리 분류 추가
2026-03-08 12:57:29 +09:00
김보곤
e7f81cb063 fix: [rd] TTS 500 에러 수정 및 AI 응답 파싱 개선
- 짧은 텍스트(4자 미만) TTS 요청 시 따옴표 래핑으로 Gemini TTS 인식률 개선
- TTS API 에러 시 실제 에러 메시지 반환 (기존: 일괄 500)
- AI 생성 temperature 0.9→0.7, maxOutputTokens 2048→4096으로 응답 안정성 개선
- 프롬프트에 name/desc 길이 제한 추가하여 JSON 잘림 방지
2026-03-08 12:51:08 +09:00
김보곤
301369bb37 feat: [sound-logo] TTS 음성 오버레이 기능 추가
- Gemini TTS API 연동 (한국어 Kore 음성)
- 사이드바에 음성 오버레이 컨트롤: 텍스트 입력, 시작 시점, 볼륨
- 재생/WAV 내보내기 시 신스 + 음성 자동 합성
- POST /rd/sound-logo/tts 엔드포인트 추가
- L16 PCM → AudioBuffer 디코더 구현
2026-03-08 12:44:05 +09:00
김보곤
75dbe2910a feat: [sound-logo] Phase 2 AI 어시스트 모드 추가
- Gemini API 연동: 프롬프트 → 음표 시퀀스 JSON 자동 생성
- AI 탭 UI: 프롬프트 입력, 카테고리/길이 선택, 빠른 프롬프트 10종
- AI 결과 미리보기: 음표 시각화, 미리듣기, 시퀀서 로드
- POST /rd/sound-logo/generate 엔드포인트 추가
2026-03-08 12:34:42 +09:00
김보곤
d81c5f4a6f feat: [rd] 사운드 로고 생성기 Phase 1 MVP 구현
- Web Audio API 기반 사운드 합성 엔진
- 4종 신스(sine/square/triangle/sawtooth) + ADSR 엔벨로프
- 노트 시퀀서 UI (비주얼 바 + 드롭다운 편집)
- 10종 프리셋 (알림, 로고, 시작음, 성공 등)
- WAV 내보내기, JSON import/export, localStorage 저장
2026-03-08 12:15:32 +09:00
김보곤
d9c808b928 feat: [rd] 디자인 인사이트 메뉴 Phase 1 MVP 구현
- GET /rd/design-insight 라우트 + 컨트롤러 추가
- Alpine.js 단일 파일 SPA (localStorage 기반)
- 4종 카드: 레퍼런스, 분석(CRAP), 패턴, Before/After
- 3종 뷰: 보드, 갤러리, 리스트
- Ctrl+V 클립보드 이미지 붙여넣기
- 프로젝트 CRUD, 태그/카테고리 필터, 검색
- JSON 내보내기/가져오기
2026-03-08 09:55:36 +09:00
김보곤
64ab20becf feat: [rd] 기획디자인 플래닝 캔버스 페이지 추가
- 연구개발 > 기획디자인 메뉴 라우트/컨트롤러/뷰 추가
- Alpine.js 기반 캔버스 도구 (노드 배치, 연결, 줌/팬)
- 16종 노드 타입 (기획/분석/구조/산출물 카테고리)
- 타임라인/플로우 뷰 모드, 프로젝트 저장/불러오기
- 실행취소/재실행, 키보드 단축키 지원
2026-03-07 22:06:06 +09:00
김보곤
e38ef0f1d5 fix: [approval] 결재선 인원 목록에서 미배정/퇴사/외주 사용자 제외
- 부서 미배정(department_id NULL) 사용자 목록에서 제외
- 코드브릿지엑스(tenant_id=1) 테넌트에서 영업팀(외주) 제외
2026-03-07 21:53:22 +09:00
김보곤
0dab993508 feat: [help] 도움말 > 바로빌 연동 가이드 페이지 추가
- 7탭 구성: 전체 구조, 초기 설정, 세금계산서, 계좌/카드, 홈택스 연동, 카카오톡/SMS, 메뉴 맵
- BarobillGuideController + HX-Redirect 패턴 적용
- 테넌트 필수 설정, 바로빌↔SAM 연동 구조, FAQ 포함
2026-03-07 19:02:53 +09:00
김보곤
67694b926f feat: [help] 도움말 > 연차휴가/근태관리 페이지 추가
- 7탭 구성: 전체 흐름도, 연차 발생/계산, 휴가 신청/결재, 근태 기록, 연차촉진제도, 급여 연동, 메뉴 맵
- AttendanceGuideController + HX-Redirect 패턴 적용
- 근로기준법 기반 연차 발생 기준, 촉진 타임라인, 급여 연동 로직 포함
2026-03-07 18:50:51 +09:00
김보곤
d9ad2e801b feat: [help] 도움말 > 회계동작원리 페이지 추가
- 6탭 구성: 전체 흐름도, 일상 업무, 월간 업무, 세금/부가세, 정산/결산, 메뉴 맵
- AccountingGuideController + HX-Redirect 패턴 적용
- 중소기업 회계담당자를 위한 SAM 재무/회계 가이드
2026-03-07 18:36:08 +09:00
김보곤
ffe02b3224 feat: [claude-code] 발전과정 페이지 추가 (타임라인/핵심혁신/모델진화/생태계) 2026-03-07 18:03:34 +09:00
김보곤
8784b81f1b feat: [china-tech] 중국 AI기술 발전과정 페이지 추가 2026-03-07 17:57:44 +09:00
fe420a3cd7 feat: 문서 스냅샷 출력 + 절곡 전용 렌더링
- show.blade.php: rendered_html 우선 출력 로직 추가 (스냅샷 모드)
- show.blade.php: 스냅샷 없으면 기존 동적 렌더링 fallback
- DocumentController: inspectionData 추출하여 view 전달
- partials/bending-inspection-data: inspection_data 스냅샷 기반 렌더링
- partials/bending-worklog: 절곡 작업일지 전용 렌더링

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 01:30:15 +09:00
김보곤
2e97b824cd feat: [hr] 연차촉진 관리 페이지 추가
- LeavePromotionController: 대상자 목록 조회 + 일괄 통지 발송
- LeaveService: getPromotionCandidates(), sendPromotionNotices() 메서드 추가
- 통지 현황 추적 (미발송/1차 발송/완료)
- 일괄 선택 + 결재 문서 자동 생성 + 상신
2026-03-07 00:46:10 +09:00
김보곤
810c1f67dd feat: [finance] 경조사비 관리 페이지 추가
- 거래처 경조사비 관리대장 CRUD (등록/수정/삭제)
- 축의/부조 구분, 부조금(현금/계좌이체/카드), 선물(종류/금액) 관리
- 연도별 필터, 구분별 필터, 거래처/내역 검색
- 통계 카드 (총건수, 총금액, 부조금 합계, 선물 합계, 축의/부조 비율)
- CSV 내보내기
- 라우트: /finance/condolence-expenses
2026-03-06 21:38:41 +09:00
김보곤
c850172f5b feat: [approvals] 사용인감계 양식 추가
- 증명서 카테고리에 사용인감계(seal_usage) 양식 등록
- 입력 폼: 사용일자, 인감종류, 용도, 제출처, 비고
- 회사 정보 자동 로드 (테넌트 정보 기반)
- 미리보기/인쇄 기능 (원본 DOCX 유사 레이아웃)
- create/edit/show 3개 페이지 모두 지원
2026-03-06 20:48:01 +09:00
김보곤
81157a150a feat: [org-chart] 부서 숨기기 상태 DB 저장
- departments.options JSON 컬럼에 orgchart_hidden 플래그 저장
- 숨기기/복원 시 API 호출하여 영구 저장
- 페이지 로드 시 DB에서 숨김 상태 복원
2026-03-06 20:24:51 +09:00
김보곤
e1fc78ada1 feat: [org-chart] 조직도 최상단 노드 색상 수정 및 부서 드래그 정렬 기능 추가
- 최상단 회사 노드: Tailwind gradient → inline style로 변경 (글씨 안보이는 문제 수정)
- 부서 카드 드래그 앤 드롭 정렬: SortableJS handle 기반
- 1단계/2단계 부서 모두 드래그 정렬 가능
- sort_order 변경 즉시 서버 저장 (reorder-depts API)
- 부서 헤더에 드래그 아이콘 추가
2026-03-06 19:50:36 +09:00