Commit Graph

217 Commits

Author SHA1 Message Date
김보곤
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
김보곤
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
김보곤
5793845def feat: [business-cards] 처리완료 삭제 기능 추가 및 기본 매수 500매로 변경
- 관리자 화면 처리완료 카드에 삭제 버튼 추가
- processed 상태만 삭제 가능 (서비스 검증)
- 파트너 명함신청 기본 매수 100매 → 500매 변경
2026-02-26 14:06:36 +09:00
김보곤
85c7a55d00 feat: [business-card] 3단계 워크플로우 구현 (요청→제작의뢰→처리완료)
- 모델: STATUS_ORDERED 추가, markAsOrdered() 헬퍼
- 서비스: order(), getOrderedRequests() 추가
- 컨트롤러: order() 액션 추가
- 관리자 뷰: 좌측 신규요청 + 우측 제작중 + 하단 처리완료
- 파트너 뷰: 제작중(파란) 상태 뱃지 추가
- 라우트: POST business-cards/{id}/order 추가
2026-02-25 05:41:34 +09:00
김보곤
089a60231d feat: [business-card] 명함신청 기능 구현
- 모델: BusinessCardRequest (pending/processed 상태 관리)
- 서비스: 신청/처리/통계/뱃지 카운트
- 컨트롤러: 관리자 2분할 뷰, 파트너 신청폼+이력
- 뷰: admin-index (대기/처리완료 2분할), partner-index (신청폼+이력)
- 라우트: GET/POST /sales/business-cards, POST /{id}/process
- 뱃지: ViewServiceProvider에 대기 건수 연동
2026-02-24 21:45:08 +09:00
김보곤
303b3f5861 refactor: [finance/system/sales] createIcon DOM 방식에서 React.createElement 방식으로 교체
- useRef/useEffect 기반 DOM 조작 방식 제거
- React.createElement로 SVG 직접 렌더링하는 방식으로 전환
- arrow-up-circle, arrow-down-circle 아이콘 별칭 추가
- 대상: finance 20개, system 2개, sales 1개 blade 파일 (총 23개)
2026-02-23 17:54:09 +09:00
김보곤
e58b3438e9 fix: [icons] 커스텀 SVG 생성 코드를 lucide.createElement API로 교체
- 24개 Blade 파일의 수동 SVG 생성 코드를 lucide.createElement(_def)로 통일
- 불필요한 quote-stripping regex(/^"|"$/g) 제거
- Lucide 공식 API 사용으로 SVG viewBox/path 속성 에러 해결
2026-02-23 17:21:40 +09:00
김보곤
5272f0e0bf fix: [lucide] SVG viewBox/path 속성 에러 수정 (24개 파일)
- SVG 기본 속성을 하드코딩하여 lucide 데이터의 따옴표 포함 문제 해결
- 자식 요소(path 등) 속성에서 불필요한 따옴표 자동 제거
- Error: <svg> attribute viewBox: Expected number 에러 해소
2026-02-23 16:31:21 +09:00
김보곤
4c36f583c8 fix: [lucide] createElement 대신 직접 SVG DOM 생성하여 viewBox 속성 에러 해결
- lucide.createElement가 SVG 속성에 따옴표를 포함시키는 버그 우회
- 아이콘 데이터 배열에서 createElementNS로 직접 SVG 생성
- 25개 Blade 파일 일괄 적용
2026-02-23 16:15:27 +09:00
김보곤
2481fce74d fix: [lucide] 버전을 0.469.0으로 추가 다운그레이드 2026-02-23 16:11:47 +09:00
김보곤
decbf4c127 fix: [lucide] 버전을 0.474.0으로 고정하여 SVG viewBox 속성 에러 해결
- lucide@latest(0.575.0)에서 createElement SVG 속성에 따옴표 포함되는 버그 발생
- 28개 Blade 파일 일괄 변경
2026-02-23 16:08:04 +09:00
김보곤
50b1e61d55 fix:모달 내 정보보기 버튼 JS 함수 미정의 오류 수정
AJAX 로드 모달에서 script 태그가 실행되지 않는 문제 해결
- 별도 함수 대신 onclick 인라인으로 토글 로직 직접 처리

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 15:10:24 +09:00
김보곤
f2f10d2f15 feat:고객 상세 모달에 계약 상세정보 보기 기능 추가
- 계약 및 납입 정보 옆에 '정보보기' 토글 버튼 추가
- 계약 상품 내역 (카테고리, 상품명, 개발비, 구독료, 할인율) 테이블 표시
- 수당 정산 내역 (계약금/잔금별 입금액, 수당, 지급예정일 등) 카드 표시

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 14:55:52 +09:00
김보곤
1d90411308 feat:고객관리 상세 모달에 총 개발비/구독료 표시 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 17:27:44 +09:00
김보곤
4e03df5624 feat:상세 모달에 구분/계약일/납입일/인계일 정보 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:38:08 +09:00
김보곤
6a846a1c0d feat:계약일 date input 입력 가능하게 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:34:07 +09:00
김보곤
6a7a8d00d0 feat:영업파트너 고객관리 인계일 컬럼 동적 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:27:12 +09:00
김보곤
4ddc1efa34 refactor:영업파트너 고객관리 테이블 정리 + 정산관리에 수당지급일 관리 이동
- 고객관리 테이블: 1차수당/2차수당/매니저수당/협업지원금/등록일 열 제거, 계약일 열 추가 (16열→12열)
- 정산관리 수당정산 테이블: 수당지급일/매니저지급일/협업지원금 인라인 편집 컬럼 추가
- SalesCommissionController에 updateCommissionDate 메서드 추가
- 불필요한 JS 함수 제거 (saveReferrerCommission, checkHandoverStatus)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 16:20:42 +09:00
김보곤
63975f9e3f fix:단체 파트너 매니저 수당 일자 비활성화 (해당없음)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 13:21:19 +09:00
김보곤
b6601989f3 feat:영업파트너 고객관리에 개인/단체 구분 열 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 13:19:36 +09:00
김보곤
e63b6f1512 feat:영업파트너 고객관리에 협업지원금 수동 입력 기능 추가
- 개인 파트너: 협업지원금 금액 수정 가능한 number input 추가
- 단체 파트너: "-" 표시 (자동계산 3% 고정, 수동 수정 불가)
- AdminProspectController에 updateReferrerCommission 메서드 추가
- firstOrCreate에 referrer_rate, referrer_commission 필드 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 13:14:36 +09:00
김보곤
41e7eca92d feat:유치 파트너 현황에 개인/단체 유형 배지 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 09:00:51 +09:00
김보곤
b4470d94b4 fix:내 계약 현황 예상 수당 요율 하드코딩(10%) → 동적 적용(개인 20%, 단체 30%)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 08:36:15 +09:00
김보곤
b4581299e2 feat:영업파트너 승인 화면에 개인/단체 유형 열 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 08:10:13 +09:00
김보곤
81bcd617fe feat:단체(Corporate) 파트너 UI 접근 제한 구현
- User 모델에 isGroupPartner() 헬퍼 추가
- 대시보드에서 단체 파트너는 판매자 카드만 표시 (관리자/협업지원금 카드 제외)
- 유치 파트너 현황 탭 단체 파트너에게 숨김
- 파트너 등록 create/store 접근 차단 (403)
- 파트너 목록에서 등록 버튼 숨김
- SidebarMenuService에 hide_for_group_partner 옵션 기반 메뉴 필터링 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 08:00:58 +09:00
김보곤
67b2c6f7c0 fix:단체(그룹) 옆에 수당 요율 표시 (단체 30%, 유치 3%)
등록폼/수정모달 모두 적용

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 07:28:09 +09:00
김보곤
5a1fcb4140 feat:영업파트너 수정 모달에 개인/단체 유형 변경 기능 추가
- 승인 전(pending): 라디오 버튼으로 개인/단체 변경 가능
- 승인 후(approved): 읽기 전용 뱃지로 표시
- 유형 변경 시 수당률 자동 설정 (단체 30%, 개인 초기화)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 07:26:13 +09:00
김보곤
dab54b992c feat:영업파트너 리스트에 개인/단체 유형 열 추가
salesPartner 관계를 eager load하여 partner_type 표시
개인: 하늘색 뱃지, 단체: 주황색 뱃지

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 07:23:16 +09:00
김보곤
d5a13fea1b fix:영업파트너 등록 시 유치 파트너 드롭다운 제거 (등록자 자동 지정)
영업파트너가 직접 등록하므로 등록자가 곧 유치파트너임.
드롭다운 대신 등록자 이름을 표시하고 서버에서 자동 설정.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 07:18:32 +09:00
김보곤
f1f31d5f70 feat:단체(그룹) 수당 체계 통합 (단체 30%, 유치 3%, 매니저 0%)
- SalesPartner: referrer_partner_id, referrer/referredGroups 관계, isGroup() 헬퍼
- SalesCommission: 유치수당 필드, referrerPartner 관계, 지급 추적 메서드
- SalesCommissionService: 단체/개인 분기 수당 계산 로직
- SalesManagerService: 단체 등록 시 수당률 자동 설정
- SalesManagerController: 유형 선택 및 유치 파트너 지정 기능
- 대시보드: 유치수당 카드 표시 및 합산
- UI: purple 색상 처리 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 19:42:51 +09:00
김보곤
8cfc44bf45 fix:영업파트너 수정 모달 validation 에러 표시 추가
- 폼을 AJAX 제출로 변경하여 422 에러 시 모달 내 에러 메시지 표시
- innerHTML로 로드된 script 태그 수동 실행 처리
- 컨트롤러에 JSON 응답 지원 추가

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 12:47:41 +09:00
김보곤
7e9dec8bd3 feat:영업파트너 등록/수정에 사업자 정보(상호, 사업자등록번호, 주소) 필드 추가
- 컨트롤러 store/update 유효성 검사에 3개 필드 추가
- 서비스 create/update에서 SalesPartner 레코드 생성/업데이트
- 등록 폼(create.blade.php)에 사업자 정보 섹션 추가
- 수정 모달(edit-modal.blade.php)에 사업자 정보 섹션 추가
- 테스트 데이터 자동입력에 사업자 정보 포함

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 11:11:32 +09:00
김보곤
56d060a37d refactor:React CDN을 공통 partial로 통합
- 새 파일: resources/views/partials/react-cdn.blade.php
- 모든 React 페이지에서 중복된 CDN 스크립트를 @include('partials.react-cdn')로 대체
- 30개 파일 업데이트 (finance, juil, system, sales)
- 유지보수성 향상: CDN 버전 변경 시 한 곳만 수정
2026-02-12 10:34:48 +09:00
김보곤
16309c5f61 refactor:영업/매니저 시나리오 음성 인식 STT 개선
- onresult에서 event.resultIndex부터 순회 (중복 처리 방지)
- finalizedSegments[] 배열로 확정 텍스트 영구 관리
- 다크 프리뷰 패널(bg-gray-900)로 UI 통일
- 확정=흰색 일반체, 미확정=회색 이탤릭 스타일 적용
- 고정 line-height(1.6)으로 텍스트 전환 시 흔들림 방지
- 인식 중/완료 상태 표시 추가
- 공사현장 사진대지 VoiceInputButton과 동일 규칙 적용

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 09:19:14 +09:00
김보곤
5818c7e93e fix:전체 Lucide 아이콘 호환성 수정 (24개 파일)
- Lucide 0.563.0 API 변경 대응: lucide.icons[name] → PascalCase 개별 export
- kebab-case → PascalCase 자동 변환 로직 적용
- 리네임된 아이콘 별칭 매핑 (check-circle→CircleCheck 등)
- 구버전 lucide.icons 객체 폴백 유지
- 적용 범위: finance/*(19), system/*(2), sales/interviews(1), ai-token-usage(1), holidays(1)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 14:12:40 +09:00
김보곤
d6cf587bc9 fix:고객관리 필터 버튼 정리 (영업중/완료/인계완료)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:59:55 +09:00
김보곤
a427fe7cec fix:상태 토글 confirm을 클릭 위치 팝오버로 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:43:10 +09:00
김보곤
0ac8b3ee9b feat:가망고객 상태 토글 기능 추가 (영업중 ↔ 완료)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:41:04 +09:00
김보곤
b34924ccab fix:인계 상태 경고를 모달에서 alert 알림으로 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:30:23 +09:00
김보곤
cebc1262b6 feat:수당지급일 입력 시 개발상태 인계 여부 검증 안전장치 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:26:25 +09:00
김보곤
71065ca91a feat:납입일 입력 시 수당지급일 자동 계산 (익월 10일)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:23:35 +09:00
김보곤
a337b7afb4 feat:수퍼관리자 가망고객 삭제 기능 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 08:18:54 +09:00
김보곤
249491452b fix:항목 삭제 confirm을 인라인 팝오버로 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 22:44:58 +09:00
김보곤
c6e8789b7e fix:질문 삭제 confirm을 인라인 팝오버로 변경
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 22:41:23 +09:00
김보곤
46f8296324 fix:질문 삭제 버튼을 텍스트로 변경 (Lucide 아이콘 렌더링 이슈)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 22:22:29 +09:00
김보곤
b365486c09 fix:질문 행 hover X 마크를 순수 CSS로 변경 (group-hover 미동작 수정)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 22:18:29 +09:00
김보곤
655dfc6641 fix:질문 행 hover 시 문장 끝에 적색 X 삭제 버튼 추가
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 22:15:02 +09:00
김보곤
32cbef9ae3 feat:인터뷰 시나리오 MD 파일 업로드 일괄 생성 기능
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 21:42:14 +09:00
김보곤
79f6fc29e8 fix:카테고리 수정/삭제 버튼 선택 시 항상 표시
- hover 의존(hidden group-hover) 제거
- 선택된 카테고리에서 수정/삭제 버튼 항상 노출

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 21:22:02 +09:00