Commit Graph

1578 Commits

Author SHA1 Message Date
김보곤
6674df1b64 fix: [attendance] 근태관리 승인 탭 제거
- 결재관리에서 처리하므로 승인 탭 불필요
- 탭 네비게이션, 승인 탭 콘텐츠, 승인 신청 모달 제거
- 승인/반려 JS 함수 및 탭 전환 로직 제거
2026-03-03 23:04:54 +09:00
김보곤
e8ea3375ad feat: [leave] 결재선 없을 때 빠른 생성 기능 추가
- 결재선 0개 시 경고 메시지 + '결재선 바로 생성' 버튼 표시
- 결재선 있을 때 '새 결재선 추가' 링크 표시
- 빠른 결재선 생성 모달 (z-[60]): 인원 목록 / 결재선 편집 2단 레이아웃
- 부서별 펼침/접기, 이름 검색, SortableJS 드래그 순서 변경
- 저장 후 드롭다운 동적 갱신 + 새 결재선 자동 선택
2026-03-03 22:50:51 +09:00
김보곤
511bfa3ec5 feat: [leave] 휴가 신청 시 결재선 선택 기능 추가
- 휴가 신청 모달에 결재선 드롭다운 + 미리보기 UI 추가
- 선택된 결재선으로 결재 생성 (미선택 시 기본결재선 fallback)
- 휴가 목록에 결재진행 컬럼 추가 (원형 아이콘: ✓승인/✗반려/숫자대기/파랑현재)
- approval.steps.approver eager load 추가
2026-03-03 22:36:30 +09:00
김보곤
81b64f25aa feat: [hr] 사원관리 퇴직자 영구삭제 기능 추가
- 슈퍼관리자만 퇴직 상태 사원을 영구삭제 가능
- 관련 첨부파일도 함께 삭제
- DELETE /admin/hr/employees/{id}/force 엔드포인트 추가
2026-03-03 21:46:56 +09:00
김보곤
8762882b54 fix: [hr] 사업소득자 임금대장 행 삭제 후 일괄저장 실패 수정
- 모든 행 삭제 시 "저장할 데이터가 없습니다" 오류 → 확인 후 서버 전송으로 변경
- 백엔드 validation: required|array → present|array (빈 배열 허용)
- 서버의 orphan draft 자동 삭제 로직이 정상 동작하도록 수정
2026-03-03 19:30:41 +09:00
김보곤
60291e08f1 fix: [sidebar] 메뉴 검색 시 대분류 그룹도 검색 대상에 포함
- 그룹 헤더(대분류/서브그룹)도 검색어 매칭 대상으로 추가
- 그룹 헤더 매칭 시 하위 전체 메뉴 표시 + 하이라이트 적용
2026-03-03 16:08:20 +09:00
김보곤
25795f8612 feat: [ai-quotation] 제조 견적서 자동 생성 기능 추가
- AI 2단계 분석: 고객 인터뷰 → 요구사항 추출 → 견적 산출
- 모델 확장: AiQuotation(모드/견적번호), AiQuotationItem(규격/단가/금액)
- AiQuotePriceTable 모델 신규 생성
- Create 페이지: 모듈/제조 모드 탭, 제품 카테고리, 고객 정보 입력
- Show 페이지: 제조 모드 분기 렌더링 (품목/금액/고객정보)
- Edit 페이지: 품목 인라인 편집, 할인/부가세/조건 입력
- Document: 한국 표준 제조업 견적서 양식 템플릿
- Controller/Route: update 엔드포인트, edit 라우트 추가
2026-03-03 15:58:16 +09:00
김보곤
3962d4b35c fix: [journal] 카드거래 수정 금액이 일반전표에 미반영되는 문제 수정
- 통합 목록 출금액: approvalAmount(원본) → supplyAmount+taxAmount(수정값) 사용
- 카드 분개 모달: 동일하게 수정된 금액 사용
- 외국결제 수수료 포함 금액 등 사용자 수정값이 정상 반영됨
2026-03-03 15:13:20 +09:00
김보곤
6a5976cc5d feat: [journal] 카드/은행 출처 전표 읽기 전용 적용
- update() 메서드에 source_type 가드 추가 (403 반환)
- 통합 목록에서 카드/은행 분개완료 행에 잠금 아이콘 표시
- handleEditEntry에 출처 전표 방어 가드 추가
- show() 응답에 source_type 필드 추가
2026-03-03 14:54:49 +09:00
김보곤
2ac4c188d5 feat: [hr] 사업소득자 임금대장 동적 행 입력 리디자인
- earner 고정 행 → 동적 행 추가/삭제 구조로 변경
- 상호/성명 datalist 콤보박스 (드롭다운 선택 + 직접 입력)
- display_name/business_reg_number 컬럼 직접 저장
- bulkSave: payment_id 기반 upsert + 미제출 draft 자동 삭제
- confirmed/paid 행 수정/삭제 불가 유지
- 엑셀 내보내기 display_name 직접 사용으로 단순화
2026-03-03 14:21:06 +09:00
김보곤
099d08e49e chore: [ai] Gemini 모델 gemini-2.0-flash → gemini-2.5-flash 마이그레이션
- config/services.php fallback 기본값 변경
- AiConfig DEFAULT_MODELS 상수 + getActiveGemini() fallback 변경
- NotionService fallback 변경
- AI 설정 관리 UI placeholder/기본값 변경
- Google Cloud AI 가이드 서비스 현황 모델명 변경
- 환경변수 관리 아카데미 예시 변경
2026-03-03 08:09:28 +09:00
김보곤
3216bb98bc feat: [approval] 결재관리 삭제 권한 기능 추가
- 관리자/슈퍼관리자 모든 상태 결재 문서 삭제 가능
- 일반 사용자는 기존대로 draft + 본인 기안만 삭제
- 진행 중 문서 삭제 시 휴가 연동 취소 처리
- 삭제 API 403 권한 검증 추가
- 상세 페이지 삭제 버튼 + 2중 확인 다이얼로그
2026-03-03 07:36:24 +09:00
김보곤
420b80e45a feat: [ai-quotation] 견적서 5종 템플릿 선택 시스템 추가
- classic(클래식), modern(모던), blue(블루), dark(다크), colorful(컬러풀) 5종
- 문서 상단 미리보기 카드 클릭으로 즉시 디자인 전환
- URL 쿼리 파라미터 ?template=xxx 방식, 기본값 classic
- 인쇄/PDF 시 선택 UI 자동 숨김 (no-print)
- 기존 디자인은 classic 템플릿으로 100% 보존
2026-03-02 19:28:01 +09:00
김보곤
1fa2e0ca34 fix: [ai-quotation] 견적서 대표이사명 수정 (이의찬) 2026-03-02 19:14:17 +09:00
김보곤
a26e66bb8e feat: [ai-quotation] 제조업 표준 견적서 문서 뷰 추가
- 인쇄 전용 standalone 레이아웃 (layouts/document.blade.php) 생성
- 한국 제조업 표준 견적서 양식 문서 뷰 생성 (A4 인쇄/PDF 최적화)
- RdController에 documentQuotation 메서드 추가
- /rd/ai-quotation/{id}/document 라우트 등록
- 상세 페이지에 "견적서 보기" 버튼 추가 (완료 상태만 표시)
- 한글 금액 변환, VAT 자동 계산, 비고란 포함
2026-03-02 19:11:53 +09:00
김보곤
2e3dc556d1 feat: [credit] 신용평가 개발문서 페이지 추가
- 쿠콘(KooCon) API 연동 가이드 10개 섹션 구성
- 라우트, 컨트롤러, Blade 뷰 추가
2026-03-02 18:40:08 +09:00
김보곤
d17b46fe80 feat: [rd] AI 견적 생성 폼에 샘플 인터뷰 자동입력 버튼 추가
- 번개 아이콘 버튼 클릭 시 제목 + 인터뷰 내용 샘플 자동 입력
- 데모/설명용 기능
2026-03-02 18:16:00 +09:00
김보곤
dda94f4db8 fix: [rd] API 호출 URL /admin → /api/admin 수정
- index, create, show 뷰의 fetch URL을 /api/admin/rd/... 로 수정
- api.php 라우트는 api/ prefix가 자동 적용됨
2026-03-02 18:16:00 +09:00
김보곤
44f139f757 feat: [rd] AI 견적 엔진 Phase 1 구현
- 모델 3개: AiQuotationModule, AiQuotation, AiQuotationItem
- AiQuotationService: Gemini/Claude 2단계 AI 파이프라인
- RdController: R&D 대시보드 + AI 견적 Blade 화면
- AiQuotationController: AI 견적 API (생성/목록/상세/재분석)
- Blade 뷰: 대시보드, 목록, 생성, 상세, HTMX 테이블
- 라우트: /rd/* (web), /admin/rd/* (api)
2026-03-02 18:16:00 +09:00
김보곤
85ec94f07f feat: [barobill] 회원사 필수 설정 가이드 섹션 추가
- 파트너사/회원사 구조 설명 (코드브릿지엑스 → 회원사)
- 6단계 설정 가이드: 회원사등록, 공동인증서, 계좌, 카드, 서비스활성화, 충전
- 회원사가 바로빌 사이트에서 직접 수행해야 할 작업 명시
- 체크리스트 포함, 기존 섹션 번호 2~10 → 3~11로 조정
2026-03-02 17:52:44 +09:00
김보곤
6b411f173e feat: [barobill] 바로빌 개발문서 페이지 추가
- 라우트, 컨트롤러, Blade 뷰 생성
- 10개 섹션: 서비스 소개, 과금 구조, 시스템 구조, 트러블슈팅 등
- 기존 카카오톡 가이드 스타일 준용
2026-03-02 17:40:11 +09:00
김보곤
ea14de3814 fix: [roadmap] 로드맵 문서 마크다운 렌더링 스타일 개선
- Tailwind prose 클래스 → 커스텀 .markdown-body CSS로 변경
- 테이블 보더, 코드 블록, 제목 계층, 인용문 스타일 추가
2026-03-02 16:19:35 +09:00
김보곤
f94213fb39 feat: [roadmap] 로드맵 문서 페이지 추가
- sam/docs 중장기 계획 문서를 렌더링하는 전용 페이지
- 비전&전략, 프로젝트 런칭, 제품 설계, 시스템 개요 4개 카테고리
- Markdown → HTML 변환 (Str::markdown)
- /roadmap/documents 목록 + /roadmap/documents/{slug} 상세
2026-03-02 16:03:08 +09:00
김보곤
f7a9575655 feat: [roadmap] 중장기 계획 메뉴 및 전용 페이지 개발
- 모델: AdminRoadmapPlan, AdminRoadmapMilestone
- 서비스: RoadmapPlanService, RoadmapMilestoneService
- FormRequest: Store/Update Plan/Milestone 4개
- 컨트롤러: Blade(RoadmapController), API(Plan/Milestone) 3개
- 라우트: web.php, api.php에 roadmap 라우트 추가
- Blade 뷰: 대시보드, 목록, 생성, 수정, 상세, 파셜 테이블 6개
- HTMX 기반 필터링/페이지네이션, 마일스톤 인라인 추가/토글
2026-03-02 15:50:43 +09:00
김보곤
84befa546d feat: [google-cloud] AI 활용 가이드 PPTX 다운로드 기능 추가
- AiGuideController에 download() 메서드 추가
- AI 활용 가이드 PPTX 다운로드 라우트 추가
- 뷰에 PPTX 다운로드 버튼 추가
- 7장 슬라이드 HTML → PPTX 변환 파일 포함
2026-03-02 15:15:29 +09:00
김보곤
9fdbee5f0f feat: [google-cloud] AI 활용 가이드 페이지 추가
- AiGuideController 생성 (HX-Redirect 패턴)
- STT, Speaker Diarization, 회의록, 음성녹음, Gemini, GCS, AI Config 정보 페이지
- Google Cloud 메뉴 하위에 라우트 등록
2026-03-02 14:48:58 +09:00
김보곤
71d1c6dd85 fix: [menu] 메뉴 관리 페이지 기본 행 표시 개수를 500으로 변경 2026-03-02 14:31:12 +09:00
김보곤
5bdf133194 feat: [google-cloud] Gemini 2.0 모델 2026.06.01 중단 안내 추가
- 모델 테이블에 중단 예정 뱃지 및 취소선 표시
- 마이그레이션 가이드 경고 박스 추가 (2.0→2.5 권장)
- 바 차트에서 중단 모델 흐림(opacity) 처리
2026-03-02 14:15:08 +09:00
김보곤
1d9725c666 feat: [google-cloud] Google Cloud 메뉴 섹션 추가
- Workspace 정책: 계정관리, 2단계인증, 감사로그, 데이터보존
- Workspace 요금: 4티어 비교, 기능비교, 예상비용, 인상히스토리
- Cloud API 요금: Gemini 모델 단가, 추가기능, Storage, 비용시뮬레이션
- 컨트롤러 3개 + 뷰 3개 + 라우트 그룹 추가
2026-03-02 14:07:38 +09:00
김보곤
31e9b5d605 feat: [claude-code] 활용방안 PPTX 다운로드 기능 추가
- UsagePlanController에 download 메서드 추가
- 라우트에 /usage-plan/download 추가
- 뷰 헤더에 PPTX 다운로드 버튼 추가
- 7장 슬라이드 PPTX 파일 배치
2026-03-02 13:24:58 +09:00
김보곤
fce349392d feat: [claude-code] SAM 활용방안 페이지 추가
- 컨트롤러, 뷰, 라우트 생성
- 7개 섹션: 핵심요약, Before/After, 프로세스플로우, 80%공통화론, 멀티테넌시, AI자동화, 로드맵
- HX-Redirect 패턴 적용
2026-03-02 12:33:10 +09:00
김보곤
143418dc71 feat: [claude-code] Cowork 소개 페이지 추가
- Claude Code vs Cowork 핵심 차이 비교 테이블
- SAM 직무별 활용 시나리오 (영업/관리/생산)
- 업무 유형별 도구 선택 가이드
- Cowork 시작 3단계 안내
2026-03-02 11:40:23 +09:00
김보곤
e1289e0f82 feat: [claude-code] 요금정책 PPTX 다운로드 기능 추가
- 7페이지 상세 PPTX 생성 (표지/API단가/비용비교/팀비용/상세비교/전환가이드/결론)
- PricingController download 메서드 추가
- 페이지 헤더에 PPTX 다운로드 버튼 추가
- .gitignore에 public/downloads/*.pptx 예외 추가
2026-03-02 11:25:43 +09:00
김보곤
d9cd5d3526 feat: [claude-code] 요금정책 비교 분석 페이지 추가
- API 토큰 단가 테이블 (Sonnet/Opus/Haiku)
- 사용 강도별 Max 20x vs Max 5x+API 비용 비교 (시각적 바 차트)
- 5인 팀 기준 총 비용 비교 (현재/Max/Team Premium)
- 최종 결론: Team Premium 연간 결제 추천
2026-03-02 11:08:04 +09:00
김보곤
da334f0ee7 fix: [claude-code] body_html_ko 미존재 시 fallback 처리 2026-03-02 10:57:17 +09:00
김보곤
bec0df29e1 feat: [claude-code] 뉴스 페이지 한/영 토글 기능 추가
- Google Translate API 연동으로 릴리즈 노트 한국어 자동 번역
- 코드 블록 보호 처리 (번역 대상에서 제외)
- 긴 텍스트 단락 분할 번역 지원
- Alpine.js 한국어/English 토글 버튼 (localStorage 저장)
- 기본값: 한국어
2026-03-02 10:55:46 +09:00
김보곤
ab042cb132 feat: [claude-code] Claude Code 뉴스 페이지 추가
- GitHub Releases API 연동 서비스 (1시간 캐싱)
- 뉴스 컨트롤러 + Blade 뷰 (릴리즈 카드 목록)
- /claude-code/news 라우트 그룹 등록
2026-03-02 10:42:18 +09:00
김보곤
511fe69593 fix: [interview] 대분류 하위 '+ 중분류 추가' 버튼 개선
- 기존 '+' 단일문자 → '+ 중분류 추가' 텍스트 버튼으로 변경
- children 목록 하단에 항상 표시되도록 위치 이동
2026-02-28 21:34:04 +09:00
김보곤
43127c9c4f feat: [interview] 카테고리 계층 구조(대분류/중분류) 지원
- InterviewCategory 모델에 parent/children 관계 추가
- Service: getTree, getProjectTree 루트+children eager loading
- Service: createCategory에 parent_id 지원
- Service: cloneMaster 2단계 계층 복제
- Controller: storeCategory validation에 parent_id 추가
- UI: CategorySidebar/DomainSidebar 트리 뷰 렌더링
- UI: findCategory 헬퍼로 트리 내 카테고리 검색
2026-02-28 21:23:59 +09:00
김보곤
974a356f39 feat: [payroll] 전표 생성 도움말 모달 추가
- 전표 생성 버튼 옆에 i 도움말 아이콘 버튼 추가
- 분개 구조, 전표일자/번호, 주의사항, 수정/삭제 안내 포함
2026-02-28 20:31:31 +09:00
김보곤
daaf09bedc fix: [document-templates] 양식 디자이너 미리보기 렌더러 분기 처리
- builder_type=block 템플릿은 buildBlockPreviewHtml() 사용
- 레거시 템플릿은 기존 buildDocumentPreviewHtml() 유지
2026-02-28 20:16:52 +09:00
김보곤
0cf15923dc fix: [document] '블록 빌더' → '양식 디자이너' 명칭 변경 2026-02-28 20:11:59 +09:00
김보곤
47578da428 feat: [payroll] 급여 일반전표 자동 생성 기능
- PayrollController에 generateJournalEntry() 메서드 추가
- 해당월 급여 합산 → 분개 행 자동 구성 (차변 801 급여, 대변 207/205)
- 중복 체크 (source_type=payroll, source_key=payroll-YYYY-MM)
- 0원 항목 행 제외, 차대 균형 검증
- 급여관리 페이지에 전표 생성 버튼 추가
2026-02-28 20:06:18 +09:00
김보곤
f74bd8960b feat: [interview] 인터뷰 시나리오 고도화 Phase 1 구현
- InterviewProject/Attachment/Knowledge 모델 3개 신규
- 기존 모델 확장 (Question, Answer, Session, Category)
- 서비스 확장: 프로젝트 CRUD, 첨부파일, 지식 관리
- 컨트롤러 확장: 프로젝트/첨부/지식 API 엔드포인트
- 라우트 20개 추가 (프로젝트, 첨부, 지식)
- InterviewQuestionMasterSeeder: 8개 도메인 80개 질문
- UI 확장: 프로젝트 모드/기존 모드 전환
  - 프로젝트 선택 바, 상태 바, 도메인 사이드바
  - 탭 구조 (질문편집/인터뷰/첨부파일/추출지식)
  - 구조화 답변 입력 (테이블, 수식, 다중선택 등)
  - 첨부파일 업로드/관리
  - 지식 수동 추가/검증/필터링
2026-02-28 20:03:14 +09:00
김보곤
0706617463 fix: [document] 블록 빌더 Blade 이스케이프 오류 수정
- {{today}} → @{{today}} (Blade가 PHP 상수로 해석하는 문제)
2026-02-28 19:54:50 +09:00
김보곤
97bdc5fbb3 feat: [document] 범용 블록 빌더 Phase 1 구현
- block-editor.blade.php: 3패널 UI (Palette + Canvas + Properties)
- Alpine.js blockEditor() 컴포넌트 (CRUD, Undo/Redo, SortableJS)
- 기본 Block 6종: heading, paragraph, table, columns, divider, spacer
- 폼 필드 Block 7종: text, number, date, select, checkbox, textarea, signature
- BlockRendererService: JSON → HTML 렌더링 서비스
- 컨트롤러 분기: builder_type = 'block' → 블록 빌더 뷰
- 라우트 추가: block-create, block-edit
- API store/update에 schema JSON 처리 추가
- index 페이지에 블록 빌더 진입 버튼 추가
- 목록에 builder_type 뱃지 표시
2026-02-28 19:32:16 +09:00
김보곤
cf5b62ba06 feat: [payroll] 급여계산 도움말 모달 추가
- 급여관리 제목 옆 i 아이콘 버튼 추가
- 모달 내용: 전체 흐름, 지급항목, 4대보험, 세금, 실수령액, 예시, 상태 흐름, 팁
- 현재 설정된 요율/상하한 값을 동적으로 반영
2026-02-28 18:30:55 +09:00
김보곤
36992d5c23 fix: [barobill] SVG viewBox/path 속성 이중 인코딩 오류 수정
- " 로 이스케이프된 SVG HTML을 component prop에 직접 전달하면
  sanitizeComponentAttribute()가 이중 인코딩하여 SVG 파서 에러 발생
- @php 블록에서 변수로 정의 후 prop 전달 방식으로 변경
- 영향 파일: settings, etax, hometax 바로빌 페이지 3개
2026-02-28 17:53:16 +09:00
김보곤
eba34ed009 fix: [hr] 사업소득자 임금대장 버튼 라벨 CSV→엑셀 내보내기 변경 2026-02-28 17:48:11 +09:00
김보곤
63bc2f1cab docs: [equipment] 설비관리 도움말 업데이트 - 관리자 정/부, QR 모바일 점검, 다주기 점검 내용 추가
- 담당자 → 관리자 정/부 용어 전체 변경
- QR 코드 생성/다운로드/인쇄 안내 추가
- QR 모바일 점검 섹션 신규 추가 (흐름, 특징, 팁)
- 6단계 점검 주기(일일~반년) 안내 추가
- 휴일/주말 일일점검 제한 설명 추가
- 점검 데이터 초기화 안내 추가
- FAQ 2건 추가 (QR 모바일 점검, 데이터 초기화)
2026-02-28 16:23:19 +09:00