Commit Graph

63 Commits

Author SHA1 Message Date
김보곤
3bded18129 feat:가망고객에 매니저 지정 기능 추가 및 수당 구조 변경
- 영업 진행중(가망고객)에도 매니저 드롭다운 추가
- 가망고객용 assign-manager API 라우트 추가
- 매니저 수당: 5% → 1개월 구독료 (고정 금액)
- 역할별 수당 표시에서 관리자 "1개월 구독료" 라벨 추가
- 유치 파트너 현황 예상 수당도 구독료 기준으로 변경

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 11:45:57 +09:00
김보곤
a03c01f97a fix:유치 파트너 현황 총 계약 건수를 가입비 기준으로 계산
- 계약 성사(STATUS_CONVERTED) 기준 대신 가입비(registration_fee > 0) 기준으로 변경
- 예상 수당이 표시되면 총 계약 건수도 함께 표시되도록 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 11:29:02 +09:00
김보곤
3ab9d20376 feat:유치 파트너 예상수당 계산 개선
- 가입비 설정 시: 가입비 × 5% 예상수당 표시
- 가입비 미설정 시: "계약전" 표시
- 요약 통계 및 파트너별 예상수당 모두 적용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:49:28 +09:00
김보곤
c75fddd18c fix:내 계약 현황에서 하위 파트너 등록 건 제외
- 내 활동 탭: 본인이 직접 등록한 건만 표시
- 하위 파트너 등록 건은 유치 파트너 현황 탭에서만 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:45:18 +09:00
김보곤
7b069d6197 fix:영업파트너 삭제 권한 체크 추가 - 최고관리자만 삭제 가능
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-02 09:21:37 +09:00
김보곤
0e4c6da5b1 feat:유치 파트너 현황 UI/UX 개선
- 파트너별 카드 레이아웃으로 변경
- 클릭 시 가망고객 목록 펼침
- 각 가망고객의 영업/매니저 진행률 프로그레스 바 표시
- 개발 진행 상태 8단계 표시 (100% 완료 시)
- 인계 완료 목록 별도 섹션으로 구분

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 21:41:42 +09:00
김보곤
9221752265 feat:인계 완료 목록을 내 계약 현황에 표시
- 인계 완료된 가망고객을 별도 섹션으로 표시
- 완료된 계약의 가입비, 월 구독료, 예상 수당 표시
- 인계일 표시로 히스토리 관리

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 21:32:49 +09:00
김보곤
8c9df47932 fix:prospect_id를 tenant_prospect_id로 수정 2026-01-31 21:29:37 +09:00
김보곤
820171df61 feat:인계 완료 시 수당 및 통계 자동 계산
- hq_status가 handover인 경우 계약 금액 기반 수당 계산
- 판매자 수당: 가입비 × 10% (기준금액 50% × 20%)
- 관리자 수당: 가입비 × 2.5% (기준금액 50% × 5%)
- 관리 테넌트 수에 인계 완료 가망고객 포함
- 총 가입비, 확정 수당 통계에 반영

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 21:28:28 +09:00
김보곤
b2346bad14 fix:도움말 가이드북 파일 경로 수정
- docs 폴더 대신 resources/markdown 폴더 사용
- Docker 환경에서 파일 접근 가능하도록 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 21:22:14 +09:00
김보곤
ebf1055564 feat:영업관리 대시보드에 도움말 버튼 추가
- 페이지 헤더에 도움말(i) 버튼 추가
- 영업파트너가이드북.md를 모달로 표시
- HTMX로 마크다운 콘텐츠 로드 및 HTML 변환
- max-w-6xl 모달로 가독성 확보

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 21:08:40 +09:00
김보곤
7d0ead3079 fix:가망고객 모드에서 계약상품 선택 표시 및 저장 지원
- scenario-step.blade.php: 가망고객 모드에서도 상품 선택 UI 표시
- product-selection.blade.php: 가망고객/테넌트 모드 공통 지원
  - management_id 기반으로 상품 조회/저장
  - isProspect 플래그로 모드 구분
- SalesContractController: prospect_id 지원 추가
  - tenant_id 또는 prospect_id 중 하나로 상품 저장 가능
  - 카테고리별 상품 삭제 후 저장으로 변경

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 20:40:16 +09:00
김보곤
28f129393d feat:개발 진행중 → 승인대기로 이동 기능 추가
- revertToPending 서비스 메서드 추가
- revertToPending 컨트롤러 액션 추가
- /approvals/{id}/revert-pending 라우트 추가
- progress-list에 "승인대기로" 버튼 추가
- JavaScript revertToPending 함수 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 20:33:44 +09:00
김보곤
6bfe2a986f fix:매니저 상담 완료 시 내 계약 현황 갱신 오류 수정 및 UI 개선
- refreshTenantList에 prospects 데이터 추가하여 HTMX 갱신 오류 수정
- 내 계약 현황 진행률 UI 개선:
  - 영업/매니저 프로그래스바 컴팩트 레이아웃 (왼쪽)
  - 개발 진행 과정 7단계 + 상태 배지 (오른쪽)
  - 현재 단계 애니메이션 효과 추가
  - 상태별 색상 배지로 시각적 구분

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-31 20:24:26 +09:00
김보곤
f83d2a1333 feat:개발 승인 메뉴 구현
- 영업관리 하위에 "개발 승인" 메뉴 추가
- 영업/매니저 100% 완료 고객의 개발 진행 상태 관리
- 3분할 레이아웃: 승인대기 / 개발진행중 / 완료
- 7단계 진행 상태: 대기→검토→기획안작성→개발코드작성→개발테스트→개발완료→통합테스트→인계
- 승인/반려/상태변경 기능 구현
- 통계 카드 및 상세 모달 지원

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-31 20:15:03 +09:00
김보곤
d96cdc1975 feat:가망고객(prospect) 상담 기록 및 첨부파일 기능 추가
- SalesConsultation 모델에 prospect 관련 메서드 추가
  - createTextByProspect(), createAudioByProspect(), createFileByProspect()
  - getByProspectAndType() 조회 메서드
- ConsultationController에 prospect 라우트 추가
  - prospectIndex(), prospectStore(), prospectUploadAudio(), prospectUploadFile()
- scenario-modal.blade.php에서 @if(!$isProspectMode) 조건 제거
  - 가망고객 모드에서도 상담 기록 섹션 표시
- voice-recorder, file-uploader, consultation-log에 prospect 모드 지원
- routes/web.php에 prospect 상담 기록 라우트 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 19:50:46 +09:00
김보곤
fcb3a65cf7 feat:가망고객 단계에서 영업/매니저 시나리오 체크리스트 지원
- SalesTenantManagement, SalesScenarioChecklist에 tenant_prospect_id 지원 추가
- 가망고객 기반 시나리오 컨트롤러 메서드 추가
- 라우트 추가: /sales/scenarios/prospect/{id}/sales, manager
- 대시보드에서 가망고객 행에 영업/매니저 버튼 및 진행률 표시
- 시나리오 모달/스텝 뷰 prospect 모드 지원

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 19:34:49 +09:00
김보곤
83af5ea473 feat:영업 대시보드에 진행중 가망고객 표시 추가
- 고객 관리에서 등록한 가망고객(TenantProspect)도 내 계약 현황에 표시
- active/expired 상태의 가망고객을 '영업 진행중' 섹션으로 구분하여 표시
- 영업권 만료까지 D-day 표시
- 상세 버튼으로 고객 관리 페이지 연결

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 19:24:31 +09:00
pro
9d00064165 feat:영업파트너 유치 현황 대시보드 탭 추가
- SalesDashboardController에 partnerActivity() 메서드 추가
- 유치 파트너 요약 통계 (파트너 수, 영업권, 계약, 예상수당)
- 파트너별 상세 활동 테이블 (펼침/접기 기능)
- 기존 대시보드에 탭 UI 통합 (내 활동 / 유치 파트너 현황)
- HTMX로 탭 콘텐츠 지연 로드

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 16:15:50 +09:00
pro
d6b3fa193a feat:영업파트너 승인 페이지 2분할 레이아웃 개선
- 좌측: 승인 대기자 목록 (노란색 헤더)
- 우측: 승인 완료 목록 (초록색 헤더, 최근 승인 순)
- 각 패널에 건수 표시 및 독립적 페이지네이션
- 컴팩트한 테이블 디자인으로 더 많은 정보 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:44:36 +09:00
pro
d2ab0d6659 feat:영업파트너 승인 페이지 추가 (본사 관리자 전용)
- 승인 대기 목록 페이지 (/sales/managers/approvals)
- isAdmin() 권한 체크: admin 또는 super_admin만 접근 가능
- 승인/반려 기능 (AJAX 지원)
- 상세 보기 모달
- 승인 대기 통계 (오늘 승인/반려 수)
- DB 메뉴 추가: 영업관리 > 영업파트너 승인

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:27:06 +09:00
pro
9ba1fa2db1 fix:영업파트너관리 목록에서 본인이 유치한 파트너만 표시되도록 수정
- parent_id 필터를 현재 로그인 사용자 ID로 강제 설정
- 통계(stats)도 현재 사용자 기준으로 조회하도록 변경
- getSalesPartners()에 parent_id 필터 처리 추가
- getStats()에 parentId 파라미터 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 10:26:51 +09:00
pro
2b518f5b1f fix:고객관리 목록에서 본인이 등록한 영업권만 표시되도록 수정
- registered_by 필터를 현재 로그인 사용자 ID로 강제 설정
- 통계(stats)도 현재 사용자 기준으로 조회하도록 변경

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 10:04:52 +09:00
pro
440342ff1f docs:협업지원금 구조 문서화
- 매뉴제작 협업수당 → 협업지원금으로 명칭 변경
- 협업지원금 산출 기준: 메뉴당 2,000원
- 지급 대상: 계약자 기준 2단계 상위 파트너 (할아버지)
- 지급 시점: 가입비 완납 시
- 다단계법 준수를 위한 구조 설명 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 17:19:01 +09:00
pro
7b24f3b883 feat:대시보드 통계를 실제 데이터로 구현
- 총 가입비, 총 수당, 지급 완료 비율 등 실제 계산
- 판매자(20%) / 매니저(5%) 역할별 수당 상세
- 영업파트너로서의 수당 + 매니저로서의 수당 모두 집계
- 테넌트 통계 (관리 테넌트 수, 누적 수당, 확정 수당)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 17:02:41 +09:00
pro
bd371f25d5 fix:대시보드에 매니저로 지정된 계약도 표시
- 내가 등록한 계약 (20% 수당)
- 내가 매니저로 지정된 계약 (5% 수당)
- 두 목록을 합쳐서 "내 계약 현황"에 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 16:38:16 +09:00
pro
93e7f44c2f fix:대시보드에서 나와 연결된 계약만 표시하도록 수정
- 전체 계약이 아닌 현재 사용자가 등록한 가망고객의 계약만 표시
- 하위 영업파트너가 등록한 계약도 포함

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 16:32:11 +09:00
pro
32bb5795d1 feat:고객관리 상세/수정 모달창 구현
- TenantProspectController에 modalShow, modalEdit 메서드 추가
- prospects 라우트에 modal-show, modal-edit 엔드포인트 추가
- index.blade.php에 모달 컨테이너 및 JavaScript 추가
- partials/show-modal.blade.php, edit-modal.blade.php 신규 생성

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 22:20:32 +09:00
pro
036a021b71 feat:영업파트너 관리 상세/수정 모달 구현
- 목록에서 상세/수정 버튼 클릭 시 모달로 표시
- 모달 열림 시 배경 스크롤 방지
- ESC 키로 모달 닫기 지원

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 21:27:05 +09:00
pro
5d7de6d13b feat:영업수수료 정산 기능 구현
[모델]
- SalesCommission: 영업수수료 정산 모델
- SalesCommissionDetail: 상품별 수당 내역 모델
- SalesTenantManagement: 입금 정보 필드 추가

[서비스/컨트롤러]
- SalesCommissionService: 수당 생성, 승인, 지급 처리 로직
- SalesCommissionController: 정산 관리 CRUD

[뷰]
- 본사 정산 관리 화면 (필터, 통계, 테이블)
- 입금 등록 모달
- 상세 보기 모달
- 영업파트너 대시보드 수당 카드

[라우트]
- /finance/sales-commissions/* 라우트 추가
- 기존 sales-commission 리다이렉트 호환

[메뉴]
- SalesCommissionMenuSeeder: 정산관리 > 영업수수료정산 메뉴 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 18:14:11 +09:00
pro
3d12829dcb feat:영업 시나리오 계약체결 탭에 상품관리 데이터 연동 (registration_fee 사용) 2026-01-29 16:38:44 +09:00
pro
ac8afef985 feat:상품 수정 시 개발비/가입비 분리 입력 지원 2026-01-29 16:31:59 +09:00
pro
5381399731 feat:수당율 영업파트너/매니저 분리 (파트너 20%, 매니저 5%) 2026-01-29 16:18:29 +09:00
pro
3676f0c59d fix:상품관리 HTMX 부분 로드 시 Alpine.js 오류 수정 (HX-Redirect 적용) 2026-01-29 15:41:39 +09:00
pro
7547a63284 feat:계약 체결 단계에 상품 선택 기능 추가
- SalesContractController: 계약 상품 저장/조회 API
- product-selection.blade.php: 상품 선택 UI 컴포넌트
- scenario-step.blade.php: 6단계에서 상품 선택 컴포넌트 표시
- routes/web.php: /sales/contracts/* 라우트 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:04:26 +09:00
pro
f48d4b036a feat:영업 상품관리 기능 구현
- SalesProductController: CRUD + 카테고리 관리
- Models: SalesProductCategory, SalesProduct, SalesContractProduct
- Views: 상품관리 UI (Tailwind + Alpine.js + HTMX)
- Routes: /sales/products/* 라우트 등록

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 15:02:09 +09:00
pro
20d8c774f6 fix:시나리오 단계 버튼 및 완료 시 진행률 반영
- scenario-step: $totalSteps 명시적 계산으로 다음 단계 버튼 표시 수정
- scenario-step: 완료 버튼 클릭 시 scenario-completed 이벤트 발송
- scenario-modal: completeAndRefresh 함수 추가 (테넌트 리스트 새로고침)
- SalesDashboardController: refreshTenantList 메서드 추가
- routes/web.php: salesmanagement.dashboard.tenants 라우트 추가
- tenant-list: id="tenant-list-container" 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 13:02:52 +09:00
pro
9e39567604 fix:오디오/파일 다운로드 반환 타입 오류 수정
- downloadAudio: Response → BinaryFileResponse|RedirectResponse
- downloadFile: Response → BinaryFileResponse
- GCS 리다이렉트: response()->redirectTo() → redirect()->away()

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 10:00:27 +09:00
pro
dd86d70503 feat:음성 녹음 GCS 업로드 및 다운로드 기능 추가
- GoogleCloudStorageService 생성 (레거시 방식 JWT 인증)
- 10MB 이상 파일은 Google Cloud Storage에 백업 (본사 연구용)
- 오디오/파일 다운로드 라우트 추가
- voice-recorder.blade.php 인라인 x-data로 변경 (HTMX 호환)
- SalesConsultation 모델에 gcs_uri 필드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 09:15:13 +09:00
pro
8c089e54a7 fix:영업파트너 등록 시 본사 관리자도 추천인으로 설정
- 기존: 본사 관리자 등록 시 parent_id = null
- 변경: 누가 등록하든 등록자가 추천인(parent_id)으로 설정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 08:09:28 +09:00
pro
9f6218bc07 refactor:영업담당자 → 영업파트너 용어 변경 및 드롭다운 로직 수정
- 전체 코드에서 '영업담당자' → '영업파트너'로 용어 통일
- 관리 드롭다운: 모든 HQ 사용자 → 내가 유치한 하위 영업파트너만 표시
- User.php children() 관계 활용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:57:30 +09:00
pro
92c4e15273 feat:계약 현황 페이지네이션 추가 (10건 단위)
- 최신 계약이 상단에 표시되도록 정렬
- 10건 초과 시 HTMX 페이지네이션 표시
- 현재 페이지 범위 및 총 건수 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:51:41 +09:00
pro
0a0afe1df0 fix:매니저 드롭다운 API 호출 제거, 서버사이드 렌더링으로 변경
- 기존: 드롭다운 열 때 API 호출 → 로딩 스피너 문제
- 변경: 컨트롤러에서 allManagers 전달 → 즉시 렌더링
- 로딩 상태 제거로 UX 개선

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:05:45 +09:00
pro
b4163d6ffd fix:영업관리 대시보드에 가망고객 전환 테넌트만 표시
- 기존: 로그인 사용자의 모든 테넌트 표시 (HQ 제외)
- 변경: 가망고객(tenant_prospects)에서 전환된 테넌트만 표시
- TenantProspect.STATUS_CONVERTED 상태의 tenant_id만 조회

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 06:47:37 +09:00
pro
329c58e63b refactor:영업관리 데이터를 DB 테이블로 변경
- 모델 추가: SalesPartner, SalesTenantManagement, SalesScenarioChecklist, SalesConsultation
- 모델 위치 이동: app/Models/ → app/Models/Sales/
- 컨트롤러 수정: 캐시 대신 DB 모델 사용
- 뷰 수정: Eloquent 모델 속성 사용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 06:42:32 +09:00
pro
2f381b2285 feat:레거시 영업관리 시스템 MNG 마이그레이션
- 영업/매니저 시나리오 모달 구현 (6단계 체크리스트)
- 상담 기록 기능 (텍스트, 음성, 첨부파일)
- 음성 녹음 + Speech-to-Text 변환
- 첨부파일 Drag & Drop 업로드
- 매니저 지정 드롭다운

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 21:45:11 +09:00
pro
9980c334e4 fix:테넌트 조회를 user_tenants 관계로 변경
- registered_by 컬럼 대신 user_tenants 관계 사용
- 현재 사용자가 속한 테넌트 중 HQ 제외하고 조회

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:23:42 +09:00
pro
70300ccf3a fix:테넌트 목록을 현재 사용자가 등록한 것만 표시
- registered_by로 현재 로그인 사용자가 등록한 테넌트만 조회
- 영업 진행 버튼 → 영업실적 등록 페이지 연결
- 상세계약 설정 버튼 → 테넌트 편집 페이지 연결
- 매니저 진행 버튼 → 영업담당자 관리 페이지 연결
- 삭제 버튼에 확인 다이얼로그 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:22:54 +09:00
pro
f993d3de79 feat:영업관리 대시보드에 테넌트 및 계약 관리 섹션 추가
- 테넌트 목록 표시 (업체명, 담당자, 등록일)
- 계약관리 버튼 (영업 진행, 상세계약 설정, 매니저 진행)
- 행 클릭 시 상세 정보 토글
- 신규 테넌트 등록 버튼 제외 (가망고객 관리에서 처리)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:15:38 +09:00
pro
45aa0f9c72 fix:명함 OCR 이미지 저장 안되던 버그 수정
- TenantProspectController: business_card_image_data (Base64) validation 및 처리 추가
- TenantProspectService: saveBase64Image 메서드 추가로 Base64 이미지 저장 지원
- OCR로 인식한 명함 이미지가 DB에 정상 저장되도록 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 16:31:10 +09:00