김보곤
31ac46fe21
fix: [approvals] 거래처 선택 후 드롭다운이 다시 열리는 문제 수정
...
- 선택 시 selected 플래그 설정 + blur로 포커스 해제
- onInput/onFocus에서 selected 상태면 검색 차단
- 다시 직접 타이핑 시 selected 해제되어 검색 재개
2026-03-05 11:05:13 +09:00
fd017a9e34
fix: [document] document.data null 참조 오류 수정
...
- DocumentController: resolveAndBackfillBasicFields에서 data null-safe 처리
- show.blade.php: $docData 변수로 일괄 치환 (클로저 포함 전체 12곳)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-05 11:03:52 +09:00
김보곤
491426fc3e
fix: [approvals] 거래처 검색 드롭다운을 순수 DOM으로 body에 직접 렌더링
...
- x-teleport 대신 document.body.appendChild로 드롭다운 생성
- position:fixed + z-index:99999로 모든 레이아웃 위에 표시
- mousedown으로 blur 전 선택 처리
2026-03-05 10:58:00 +09:00
김보곤
e1299d5f25
fix: [approvals] 거래처 검색 드롭다운이 레이아웃에 가려지는 문제 수정
...
- x-teleport로 body에 렌더링하여 overflow 영향 제거
- position:fixed + getBoundingClientRect로 정확한 위치 계산
2026-03-05 10:55:11 +09:00
김보곤
adc54ffeba
feat: [approvals] 지출결의서 업체명에 거래처 검색 기능 추가
...
- 업체명 input을 거래처 검색 자동완성으로 교체
- 기존 trading_partners 검색 API 활용 (/barobill/tax-invoice/search-partners)
- 거래처명/사업자번호로 검색, 드롭다운에서 선택
- 키보드 탐색 지원 (위/아래 화살표, Enter, Escape)
- vendor_id, vendor_biz_no 추가 저장
2026-03-05 10:52:49 +09:00
김보곤
c653618ecc
fix: [approvals] 불러오기 버튼을 양식 선택 옆으로 이동
2026-03-05 10:46:13 +09:00
김보곤
ac8f16de59
feat: [approvals] 지출결의서 불러오기 기능 추가
...
- 기안 작성 시 '불러오기' 버튼으로 기존 지출결의서 불러오기
- 지출결의서 이력 API 엔드포인트 추가 (/expense-history)
- 선택한 지출결의서의 내용을 새 폼에 복사 (날짜는 오늘로 초기화)
2026-03-05 10:26:55 +09:00
김보곤
0011681683
fix: [approvals] 지출부서 기본값 경리부로 변경, 복지카드 옵션 삭제
2026-03-05 10:20:15 +09:00
김보곤
cfae574a35
fix: [approvals] 결재일자 기본값을 현재일자로 설정
2026-03-05 10:17:44 +09:00
김보곤
b083d1561f
feat: [approvals] 지출결의서 양식 필드 추가
...
- 지출형식에 '자동이체 출금' 라디오버튼 추가
- 세금계산서 종류에 '없음' 옵션 추가
- 작성일자 옆에 '결재일자' 날짜 입력 필드 추가
- 저장/수정 로직(getFormData)에 신규 필드 반영
- 읽기전용 표시(_expense-show)에도 반영
2026-03-05 10:15:35 +09:00
김보곤
7c38790801
fix: [leaves] 휴가관리 삭제/영구삭제 함수 누락 수정
2026-03-04 23:09:14 +09:00
김보곤
f2556aae61
feat: [approval] 지출형식별 내역 테이블 동적 전환
...
- 법인카드: 지급은행/계좌/예금주 → 결제카드 컬럼 (선택 카드 자동표시)
- 송금: 선택 계좌 정보 자동 채움 (녹색 배경)
- 현금/가지급정산, 복지카드: 기존 수동입력 유지
- getFormData()에서 저장 시 카드/계좌 정보 items에 반영
2026-03-04 21:29:11 +09:00
김보곤
f506f68df5
fix: [approval] 계좌 조회 tenant 중복조건 제거, 관리링크 모달 변경
2026-03-04 21:00:28 +09:00
김보곤
f4c08de0e4
fix: [approval] 카드/계좌 1개일 때 자동 선택
2026-03-04 20:54:03 +09:00
김보곤
bfb7302f9c
fix: [approval] 카드/계좌 관리 페이지 링크 수정
2026-03-04 20:42:26 +09:00
김보곤
8a52cd198f
feat: [approval] 지출결의서 법인카드/송금 계좌 선택 기능
...
- 법인카드 선택 시 카드 목록 패널 슬라이드-다운 표시
- 송금 선택 시 출금 계좌 목록 표시, 대표계좌 자동 선택
- 선택된 카드/계좌 정보를 content JSON에 스냅샷 저장
- 상세 페이지에서 선택된 카드/계좌 정보 읽기전용 표시
2026-03-04 20:29:25 +09:00
김보곤
622fb92a92
feat: [approval] 지출결의서 첨부파일 업로드/다운로드 기능 추가
...
- 첨부파일 업로드 API (GCS 연동, 20MB 제한)
- 첨부파일 삭제/다운로드 API 추가
- 지출결의서 폼에 드래그&드롭 멀티 파일 업로드 UI 추가
- ApprovalService에 linkAttachments 메서드 추가 (is_temp 플래그 관리)
- show 페이지에 첨부파일 목록 표시 및 다운로드 링크
- 지출부서 기본값 '본사', 로그인 사용자 이름 자동입력, 제목 필드 제거
2026-03-04 20:07:49 +09:00
김보곤
b791b7d764
fix: [approval] 기안 작성 폼 가로 폭 제한 제거
...
- max-width: 960px 제거하여 전체 너비 사용
2026-03-04 15:19:00 +09:00
김보곤
e3efc4f2ee
feat: [approval] 지출결의서 전용 폼 UI 추가
...
- Alpine.js 기반 지출결의서 전용 폼 컴포넌트 (_expense-form.blade.php)
- 지출형식/세금계산서 라디오, 내역 테이블(동적 행 추가/삭제), 금액 자동합계
- 양식 code === 'expense' 시 Quill 대신 전용 폼 표시 (create/edit)
- content JSON 구조화 저장, show 페이지 읽기전용 테이블 렌더링
- 기존 Quill 방식 하위 호환 유지
2026-03-04 15:14:18 +09:00
김보곤
1e5ebcb6b1
feat: [approval] 양식 선택 시 제목 자동 설정 기능 추가
...
- applyBodyTemplate에서 제목 필드가 비어있으면 양식명 자동 입력
- create/edit 공통 적용
2026-03-04 14:51:18 +09:00
김보곤
18c44f3a1c
fix: [approval] 결재선 요약 카드 XSS 방어 추가
...
- updateApprovalLineSummary의 innerHTML에 escapeHtml 함수 적용
- user_name, position, stepLabel 출력 시 HTML 이스케이프 처리
2026-03-04 14:21:07 +09:00
김보곤
c314715008
feat: [approval] 결재선 드롭다운 직접 배치 및 양식 본문 자동 채움
...
- 새기안/수정 화면에 결재선 드롭다운 추가 (모달 없이 빠른 선택)
- 양식 선택 시 body_template HTML 자동 채움 (편집기 자동 활성화)
- 모달 닫을 때 외부 드롭다운 동기화
- ApprovalForm 모델 fillable에 body_template 추가
2026-03-04 14:18:54 +09:00
김보곤
fe892d81ec
fix: [ecard] 기간 검색 stale closure 문제 수정
...
- loadTransactions/loadSplits/loadJournalStatuses에 명시적 날짜 파라미터 추가
- 조회 버튼 클릭 시 현재 날짜 직접 전달
- 편의 버튼(이번달/지난달/D-N월) 클릭 시 자동 검색 트리거
2026-03-04 12:57:42 +09:00
김보곤
35696400a2
fix: [eaccount] 기간 검색 시 stale closure 문제 수정
...
- loadTransactions/loadSplits에 명시적 날짜 파라미터 추가
- 조회 버튼 클릭 시 TransactionTable prop의 최신 날짜 직접 전달
- 편의 버튼(이번달/지난달/D-N월) 클릭 시 자동 검색 트리거
2026-03-04 12:50:49 +09:00
김보곤
c0f606a949
fix: [journal] 계좌 출처 전표 일반전표에서 수정 허용
...
- 카드/세금계산서 출처 → 잠금 유지 (원본에서 수정)
- 계좌(bank_transaction) 출처 → 일반전표에서 수정 허용
- 프론트엔드 UI + 백엔드 update 메서드 동시 수정
2026-03-04 12:42:35 +09:00
김보곤
caf549b2a0
fix: [eaccount] 12월분 조회 타임아웃 오류 수정
...
- PHP set_time_limit(120) 추가 (SOAP 다건 호출 시 기본 30초 초과 방지)
- 프론트엔드 응답 상태/빈 응답 체크 추가 (에러 원인 구체화)
2026-03-04 12:39:36 +09:00
김보곤
2813f31f7b
feat: [china-tech] 유니트리 왕싱싱 5번째 탭 추가
...
- 공급망 혁신 인터랙티브 비교 (기존 vs 유니트리 수직 계열화)
- H1/G1 휴머노이드 제어 알고리즘 탭 전환 UI
- 시장 점유율 도넛 차트, 가격 파괴 현황 Bar 차트
- ut- 접두사로 외부 함수 충돌 방지
2026-03-04 11:16:59 +09:00
김보곤
1dee6d0de8
fix: [payables] 전표 삭제 500 에러 수정
...
- Accept: application/json 헤더 추가 (HTML 응답 방지)
- findOrFail → find + 수동 404 처리 (에러 메시지 개선)
- try-catch 추가로 상세 에러 메시지 반환
2026-03-04 11:13:14 +09:00
김보곤
1c8d06eb99
feat: [payables] 미지급금관리 전표 삭제 기능 추가
...
- 일반전표 상세 행에 삭제 버튼(휴지통 아이콘) 추가
- DELETE /finance/payables/journal-entry/{id} API 추가
- journal_entry_id 필드를 프론트에 전달하도록 쿼리 수정
- 삭제 후 데이터 자동 새로고침
2026-03-04 11:02:06 +09:00
김보곤
fa0740bb17
feat: [china-tech] DeepSeek 량원펑 4번째 탭 추가
...
- 개요&기원, V3 핵심기술 MoE, 비용효율성, 오픈소스 생태계 4개 내부 탭
- MoE 라우팅 인터랙티브 시뮬레이션 데모
- 훈련 비용 비교 Bar 차트 (DeepSeek vs Llama vs GPT-4)
- 내부 탭 네비게이션 ds- 접두사로 외부 충돌 방지
2026-03-04 11:00:57 +09:00
김보곤
23c6eede44
feat: [journal] 일반전표입력 테이블에 전표번호 컬럼 추가
...
- 날짜 다음에 전표번호(entry_no) 컬럼 추가
- 운영서버에서 전표 식별/비교 용이하도록 개선
2026-03-04 10:47:50 +09:00
김보곤
91cbc9559f
feat: [china-tech] 양즈린 Kimi LLM 기술 리서치 탭 추가
...
- 세 번째 탭: Moonshot AI 양즈린 분석 콘텐츠
- 타임라인 카드 인터랙션, 문맥 길이 바 차트, 투자 도넛 차트
2026-03-04 10:40:02 +09:00
김보곤
f8f9df98ec
fix: [big-tech] Agibot 비전 섹션 가독성 개선
...
- 다크 배경(slate-900) → 밝은 배경(indigo-50)으로 변경
- 텍스트 색상 대비 강화 (slate-200 → slate-700)
- 비전 탭 버튼/콘텐츠 박스 밝은 테마 적용
2026-03-04 10:35:46 +09:00
김보곤
18dcec312f
fix: [big-tech] Agibot 비교 테이블 레이아웃 깨짐 수정
...
- grid-cols-3 균등 분배 → table 요소로 교체 (컬럼 비율 제어)
- 테이블+차트를 flex 레이아웃으로 나란히 배치
- min-width 설정으로 좁은 화면에서 텍스트 줄바꿈 방지
2026-03-04 10:32:31 +09:00
김보곤
ec6b72937c
feat: [china-tech] Agibot 휴머노이드 로봇 정보 탭 추가
...
- 두 번째 탭: Agibot 원정 A1 분석 콘텐츠
- 탭 전환 시 차트 지연 초기화 (lazy init)
- 비전 단계별 인터랙티브 UI
2026-03-04 10:12:37 +09:00
김보곤
56cbd7ca21
fix: [ecard] 분개 모달에서 수정된 카드 금액 자동 반영
...
- 기존 분개 로드 시 카드 금액과 불일치하면 자동으로 새 금액 기준 라인 갱신
- 불일치 경고를 자동 갱신 안내 메시지로 변경
2026-03-04 10:12:35 +09:00
김보곤
af1bbe05dd
fix: [ecard] 분리/분개 모달에서 수정된 금액 반영
...
- SplitModal의 originalAmount를 effectiveSupplyAmount + effectiveTax로 변경
- 분리 저장 시 백엔드 검증도 수정된 금액 기준으로 전달
2026-03-04 09:42:59 +09:00
김보곤
b4f0329113
feat: [china-tech] 중국의 기술도약 > 5대 신흥빅테크 페이지 추가
...
- BigTechController 생성 (HX-Redirect 패턴 적용)
- 5개 탭 UI 구현 (첫 번째 탭: 천텐스, 캄브리콘 AI 반도체 분석)
- Chart.js 차트 3개 (주가, 매출 비중, 성능 레이더)
2026-03-04 09:30:47 +09:00
김보곤
6f03a8d12c
feat: [hr] 슈퍼관리자 근태/신청 삭제 및 영구삭제 기능 추가
...
- AttendanceService: forceDeleteAttendance 메서드 추가
- LeaveService: deleteLeave(모든 상태), forceDeleteLeave 메서드 추가
- Controller: force 파라미터 + 슈퍼관리자 권한 분기
- 근태 테이블: 슈퍼관리자에게 삭제/영구삭제 버튼 표시
- 신청 테이블: 슈퍼관리자에게 삭제/영구삭제 버튼 표시
2026-03-04 00:15:41 +09:00
김보곤
266040a008
fix: [hr] 통합 근태관리 탭2/3 컨테이너 HTML 추가 및 정렬 지원
2026-03-04 00:06:01 +09:00
김보곤
af325d1cab
fix: [hr] 통합 근태관리 JS API URL에 /api 접두사 추가
2026-03-04 00:02:40 +09:00
김보곤
6cdcc293cf
feat: [hr] 근태등록 + 휴가관리 통합 시스템 구현
...
- Leave 모델 확장: 6개 유형 추가 (출장/재택/외근/조퇴/지각사유서/결근사유서)
- LeaveService: 유형별 결재양식 자동 선택, 유형별 Attendance 반영 분기
- ApprovalService: 콜백 3개 결재양식코드로 확장
- AttendanceIntegratedController: 통합 화면 컨트롤러
- 통합 UI: 근태현황/신청결재/연차잔여 3탭 + 신규 신청 드롭다운
- AttendanceRequest 모델/서비스/컨트롤러/뷰 삭제 (Leave로 일원화)
- AttendanceService: deductLeaveBalance 제거 (Leave 시스템으로 일원화)
2026-03-03 23:50:27 +09:00
김보곤
896446f388
fix: [attendance] 근태관리 승인 탭 제거
...
- 결재관리에서 처리하므로 승인 탭 불필요
- 탭 네비게이션, 승인 탭 콘텐츠, 승인 신청 모달 제거
- 승인/반려 JS 함수 및 탭 전환 로직 제거
2026-03-03 23:04:36 +09:00
김보곤
ff7947d5bd
feat: [leave] 결재선 없을 때 빠른 생성 기능 추가
...
- 결재선 0개 시 경고 메시지 + '결재선 바로 생성' 버튼 표시
- 결재선 있을 때 '새 결재선 추가' 링크 표시
- 빠른 결재선 생성 모달 (z-[60]): 인원 목록 / 결재선 편집 2단 레이아웃
- 부서별 펼침/접기, 이름 검색, SortableJS 드래그 순서 변경
- 저장 후 드롭다운 동적 갱신 + 새 결재선 자동 선택
2026-03-03 22:50:34 +09:00
김보곤
d55e34357d
feat: [leave] 휴가 신청 시 결재선 선택 기능 추가
...
- 휴가 신청 모달에 결재선 드롭다운 + 미리보기 UI 추가
- 선택된 결재선으로 결재 생성 (미선택 시 기본결재선 fallback)
- 휴가 목록에 결재진행 컬럼 추가 (원형 아이콘: ✓승인/✗반려/숫자대기/파랑현재)
- approval.steps.approver eager load 추가
2026-03-03 22:36:05 +09:00
김보곤
4513e51e50
feat: [hr] 사원관리 퇴직자 영구삭제 기능 추가
...
- 슈퍼관리자만 퇴직 상태 사원을 영구삭제 가능
- 관련 첨부파일도 함께 삭제
- DELETE /admin/hr/employees/{id}/force 엔드포인트 추가
2026-03-03 21:46:37 +09:00
김보곤
650f0ee3a7
fix: [hr] 사업소득자 임금대장 행 삭제 후 일괄저장 실패 수정
...
- 모든 행 삭제 시 "저장할 데이터가 없습니다" 오류 → 확인 후 서버 전송으로 변경
- 백엔드 validation: required|array → present|array (빈 배열 허용)
- 서버의 orphan draft 자동 삭제 로직이 정상 동작하도록 수정
2026-03-03 19:30:24 +09:00
김보곤
a276e8b2de
fix: [sidebar] 메뉴 검색 시 대분류 그룹도 검색 대상에 포함
...
- 그룹 헤더(대분류/서브그룹)도 검색어 매칭 대상으로 추가
- 그룹 헤더 매칭 시 하위 전체 메뉴 표시 + 하이라이트 적용
2026-03-03 16:08:02 +09:00
김보곤
a605e62360
feat: [ai-quotation] 제조 견적서 자동 생성 기능 추가
...
- AI 2단계 분석: 고객 인터뷰 → 요구사항 추출 → 견적 산출
- 모델 확장: AiQuotation(모드/견적번호), AiQuotationItem(규격/단가/금액)
- AiQuotePriceTable 모델 신규 생성
- Create 페이지: 모듈/제조 모드 탭, 제품 카테고리, 고객 정보 입력
- Show 페이지: 제조 모드 분기 렌더링 (품목/금액/고객정보)
- Edit 페이지: 품목 인라인 편집, 할인/부가세/조건 입력
- Document: 한국 표준 제조업 견적서 양식 템플릿
- Controller/Route: update 엔드포인트, edit 라우트 추가
2026-03-03 15:57:31 +09:00
김보곤
1b50e3bb2f
fix: [journal] 카드거래 수정 금액이 일반전표에 미반영되는 문제 수정
...
- 통합 목록 출금액: approvalAmount(원본) → supplyAmount+taxAmount(수정값) 사용
- 카드 분개 모달: 동일하게 수정된 금액 사용
- 외국결제 수수료 포함 금액 등 사용자 수정값이 정상 반영됨
2026-03-03 15:13:05 +09:00