김보곤
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
999cbad667
chore: [infra] Slack 알림 채널 분리 — product_infra → deploy_mng
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 11:35:24 +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
김보곤
dcbeafd92c
fix: [approvals] 완료함에 기안자 본인의 완료 문서도 표시
...
- 기존: 결재자로 처리한 문서만 조회
- 수정: 내가 기안한 완료/반려/회수 문서 + 결재자로 처리한 문서 모두 조회
2026-03-05 11:08:17 +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
김보곤
74d406fceb
fix: [leaves] 휴가관리 삭제/영구삭제 함수 누락 수정
2026-03-04 23:09:35 +09:00
김보곤
d431fc3637
fix: [approval] 파일 업로드 시 display_name 누락 오류 수정
2026-03-04 21:32:10 +09:00
김보곤
7b81f954d7
feat: [approval] 지출형식별 내역 테이블 동적 전환
...
- 법인카드: 지급은행/계좌/예금주 → 결제카드 컬럼 (선택 카드 자동표시)
- 송금: 선택 계좌 정보 자동 채움 (녹색 배경)
- 현금/가지급정산, 복지카드: 기존 수동입력 유지
- getFormData()에서 저장 시 카드/계좌 정보 items에 반영
2026-03-04 21:29:24 +09:00
김보곤
871b470ff2
fix: [approval] 법인카드 tenant_id 세션 조회, 하이패스카드 제외
2026-03-04 21:11:11 +09:00
김보곤
5c652e6b21
fix: [approval] 계좌 조회 tenant 중복조건 제거, 관리링크 모달 변경
2026-03-04 21:00:40 +09:00
김보곤
fa4132c946
fix: [approval] 카드/계좌 1개일 때 자동 선택
2026-03-04 20:54:17 +09:00
김보곤
33fcec9c9c
fix: [approval] 카드/계좌 관리 페이지 링크 수정
2026-03-04 20:42:44 +09:00
김보곤
e006f25427
feat: [approval] 지출결의서 법인카드/송금 계좌 선택 기능
...
- 법인카드 선택 시 카드 목록 패널 슬라이드-다운 표시
- 송금 선택 시 출금 계좌 목록 표시, 대표계좌 자동 선택
- 선택된 카드/계좌 정보를 content JSON에 스냅샷 저장
- 상세 페이지에서 선택된 카드/계좌 정보 읽기전용 표시
2026-03-04 20:29:48 +09:00
김보곤
087ad1c7b9
feat: [approval] 지출결의서 첨부파일 업로드/다운로드 기능 추가
...
- 첨부파일 업로드 API (GCS 연동, 20MB 제한)
- 첨부파일 삭제/다운로드 API 추가
- 지출결의서 폼에 드래그&드롭 멀티 파일 업로드 UI 추가
- ApprovalService에 linkAttachments 메서드 추가 (is_temp 플래그 관리)
- show 페이지에 첨부파일 목록 표시 및 다운로드 링크
- 지출부서 기본값 '본사', 로그인 사용자 이름 자동입력, 제목 필드 제거
2026-03-04 20:08:16 +09:00
김보곤
beff55cabb
fix: [approval] 기안 작성 폼 가로 폭 제한 제거
...
- max-width: 960px 제거하여 전체 너비 사용
2026-03-04 15:19:17 +09:00
김보곤
9beda571a4
feat: [approval] 지출결의서 전용 폼 UI 추가
...
- Alpine.js 기반 지출결의서 전용 폼 컴포넌트 (_expense-form.blade.php)
- 지출형식/세금계산서 라디오, 내역 테이블(동적 행 추가/삭제), 금액 자동합계
- 양식 code === 'expense' 시 Quill 대신 전용 폼 표시 (create/edit)
- content JSON 구조화 저장, show 페이지 읽기전용 테이블 렌더링
- 기존 Quill 방식 하위 호환 유지
2026-03-04 15:14:42 +09:00
김보곤
aa8ae86f1d
feat: [approval] 양식 선택 시 제목 자동 설정 기능 추가
...
- applyBodyTemplate에서 제목 필드가 비어있으면 양식명 자동 입력
- create/edit 공통 적용
2026-03-04 14:51:43 +09:00
김보곤
0593700e40
fix: [approval] 결재선 요약 카드 XSS 방어 추가
...
- updateApprovalLineSummary의 innerHTML에 escapeHtml 함수 적용
- user_name, position, stepLabel 출력 시 HTML 이스케이프 처리
2026-03-04 14:21:27 +09:00
김보곤
25b6470555
feat: [approval] 결재선 드롭다운 직접 배치 및 양식 본문 자동 채움
...
- 새기안/수정 화면에 결재선 드롭다운 추가 (모달 없이 빠른 선택)
- 양식 선택 시 body_template HTML 자동 채움 (편집기 자동 활성화)
- 모달 닫을 때 외부 드롭다운 동기화
- ApprovalForm 모델 fillable에 body_template 추가
2026-03-04 14:19:18 +09:00
김보곤
a8b6a781bd
fix: [eaccount] 부분 월 조회 시 무한루프 크래시 수정
...
- splitDateRangeMonthly()에서 endDate가 월 중간인 경우
cursor가 같은 달 1일로 되돌아가 무한루프 발생
- cursor 이동 로직 수정: chunkEnd+1일→월초 대신 chunkStart+1월→월초
- 부분 월, 전체 월, 다중 월 모든 케이스 테스트 완료
2026-03-04 13:26:27 +09:00
김보곤
322442aef6
fix: [roadmap] 개발서버 문서 경로 설정 가능하도록 개선
...
- config/roadmap.php 추가 (ROADMAP_DOCS_BASE 환경변수)
- RoadmapController에서 config 기반 경로 사용
- 로컬: base_path('../docs') 기본값 유지
- 서버: .env에서 ROADMAP_DOCS_BASE 설정
2026-03-04 13:21:56 +09:00
김보곤
1da6ae7841
fix: [barobill] 전체 바로빌 컨트롤러 WSDL 캐싱 활성화
...
- EcardController, HometaxController, EtaxController
- WSDL_CACHE_NONE → WSDL_CACHE_BOTH (불필요한 WSDL 재다운로드 방지)
2026-03-04 13:16:15 +09:00
김보곤
94ae19e14a
fix: [eaccount] SOAP 호출 크래시 방지 — WSDL 캐싱 + 소켓 타임아웃 + 진단 로깅
...
- WSDL_CACHE_NONE → WSDL_CACHE_BOTH (매 요청 WSDL 재다운로드 방지)
- default_socket_timeout 60→120초 연장
- register_shutdown_function으로 Fatal Error 감지/로깅
- callSoap에 SOAP 호출 소요시간 로깅 추가
2026-03-04 13:14:59 +09:00
김보곤
367b81d504
fix: [eaccount] 운영서버 500 에러 디버깅 — set_time_limit 안전 처리 + 상세 에러 메시지
2026-03-04 13:03:48 +09:00
김보곤
06cd50d1a6
fix: [ecard] 기간 검색 stale closure 문제 수정
...
- loadTransactions/loadSplits/loadJournalStatuses에 명시적 날짜 파라미터 추가
- 조회 버튼 클릭 시 현재 날짜 직접 전달
- 편의 버튼(이번달/지난달/D-N월) 클릭 시 자동 검색 트리거
2026-03-04 12:57:54 +09:00
김보곤
6188762f8c
fix: [eaccount] 기간 검색 시 stale closure 문제 수정
...
- loadTransactions/loadSplits에 명시적 날짜 파라미터 추가
- 조회 버튼 클릭 시 TransactionTable prop의 최신 날짜 직접 전달
- 편의 버튼(이번달/지난달/D-N월) 클릭 시 자동 검색 트리거
2026-03-04 12:51:02 +09:00
김보곤
d77b9615b3
fix: [journal] 계좌 출처 전표 일반전표에서 수정 허용
...
- 카드/세금계산서 출처 → 잠금 유지 (원본에서 수정)
- 계좌(bank_transaction) 출처 → 일반전표에서 수정 허용
- 프론트엔드 UI + 백엔드 update 메서드 동시 수정
2026-03-04 12:42:47 +09:00
김보곤
fc63ea80ff
fix: [eaccount] 12월분 조회 타임아웃 오류 수정
...
- PHP set_time_limit(120) 추가 (SOAP 다건 호출 시 기본 30초 초과 방지)
- 프론트엔드 응답 상태/빈 응답 체크 추가 (에러 원인 구체화)
2026-03-04 12:39:49 +09:00
김보곤
ec388df7b3
feat: [china-tech] 유니트리 왕싱싱 5번째 탭 추가
...
- 공급망 혁신 인터랙티브 비교 (기존 vs 유니트리 수직 계열화)
- H1/G1 휴머노이드 제어 알고리즘 탭 전환 UI
- 시장 점유율 도넛 차트, 가격 파괴 현황 Bar 차트
- ut- 접두사로 외부 함수 충돌 방지
2026-03-04 11:17:27 +09:00
김보곤
4a72368107
fix: [payables] JournalEntry 모델 use 문 누락 수정
2026-03-04 11:17:10 +09:00
김보곤
f5e7e6c2a8
fix: [payables] 전표 삭제 500 에러 수정
...
- Accept: application/json 헤더 추가 (HTML 응답 방지)
- findOrFail → find + 수동 404 처리 (에러 메시지 개선)
- try-catch 추가로 상세 에러 메시지 반환
2026-03-04 11:15:05 +09:00
김보곤
f8f9619258
fix: [payables] 전표 삭제 라우트 순서 수정
...
- journal-entry/{id}를 /{id}보다 위로 이동하여 라우트 충돌 해결
2026-03-04 11:07:52 +09:00
김보곤
32e680dce8
feat: [payables] 미지급금관리 전표 삭제 기능 추가
...
- 일반전표 상세 행에 삭제 버튼(휴지통 아이콘) 추가
- DELETE /finance/payables/journal-entry/{id} API 추가
- journal_entry_id 필드를 프론트에 전달하도록 쿼리 수정
- 삭제 후 데이터 자동 새로고침
2026-03-04 11:02:27 +09:00
김보곤
7ee3c9398a
feat: [china-tech] DeepSeek 량원펑 4번째 탭 추가
...
- 개요&기원, V3 핵심기술 MoE, 비용효율성, 오픈소스 생태계 4개 내부 탭
- MoE 라우팅 인터랙티브 시뮬레이션 데모
- 훈련 비용 비교 Bar 차트 (DeepSeek vs Llama vs GPT-4)
- 내부 탭 네비게이션 ds- 접두사로 외부 충돌 방지
2026-03-04 11:01:15 +09:00
김보곤
3b7e493b19
feat: [journal] 일반전표입력 테이블에 전표번호 컬럼 추가
...
- 날짜 다음에 전표번호(entry_no) 컬럼 추가
- 운영서버에서 전표 식별/비교 용이하도록 개선
2026-03-04 10:48:09 +09:00
김보곤
4dc445aaf1
feat: [china-tech] 양즈린 Kimi LLM 기술 리서치 탭 추가
...
- 세 번째 탭: Moonshot AI 양즈린 분석 콘텐츠
- 타임라인 카드 인터랙션, 문맥 길이 바 차트, 투자 도넛 차트
2026-03-04 10:40:19 +09:00
김보곤
f8bfb9dfa6
fix: [big-tech] Agibot 비전 섹션 가독성 개선
...
- 다크 배경(slate-900) → 밝은 배경(indigo-50)으로 변경
- 텍스트 색상 대비 강화 (slate-200 → slate-700)
- 비전 탭 버튼/콘텐츠 박스 밝은 테마 적용
2026-03-04 10:36:03 +09:00