Commit Graph

545 Commits

Author SHA1 Message Date
pro
6b54e19a42 feat:GCS 환경변수(.env) 기반 설정 지원
- config/gcs.php 추가: 환경변수 기반 설정
- GoogleCloudStorageService 우선순위 변경:
  1. DB 설정 (UI 오버라이드용)
  2. 환경변수 (.env) - 기본
  3. 레거시 파일 (fallback)
- .env.example에 GCS 설정 추가
- 서버 배포 시 .env만 설정하면 DB 설정 불필요

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 09:39:49 +09:00
pro
5f0b221750 fix:AI 설정 페이지 레이아웃 톤앤매너 통일
- max-w-4xl mx-auto 제거 → space-y-6 (전체 너비, 왼쪽 정렬)
- 다른 관리자 페이지와 동일한 레이아웃 패턴 적용
- 탭 네비게이션 중복 마진 제거

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 09:32:14 +09:00
pro
0d5045d535 fix:AI 설정 페이지 탭 전환 UI 수정
- x-cloak 스타일 추가: Alpine.js 초기화 전 탭 콘텐츠 숨김
- 초기 로드 시 두 탭이 동시에 보이던 문제 해결

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 09:29:50 +09:00
pro
50becbdd28 feat:AI 설정 페이지에 GCS 스토리지 설정 통합
- AI 설정과 스토리지 설정을 탭으로 구분
- GCS 버킷 이름, 서비스 계정 (JSON 직접입력/파일경로) 설정 가능
- GCS 연결 테스트 기능 추가
- GoogleCloudStorageService가 DB 설정 우선 사용 (fallback: 레거시 파일)
- AiConfig 모델에 gcs provider 및 관련 메서드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 09:22:12 +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
13418cd3ac fix:tenant-list Alpine.js 인라인 x-data로 변경
- HTMX 로드 시 script 태그 미실행 문제 해결
- tenantListManager 함수를 인라인 x-data로 이동
- toggle-detail 버튼에 @click 핸들러 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 09:02:33 +09:00
pro
c3afde94c9 fix:시나리오 모달 헤더 그라디에이션 제거
- 그라디에이션으로 우측 텍스트 가독성 저하 문제 해결
- 단색 배경으로 변경 (영업: blue-600, 매니저: green-600)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 08:57:02 +09:00
pro
bdf00f9c36 fix:체크리스트 토글 checkpoint_index NOT NULL 오류 수정
- 새 레코드 생성 시 checkpoint_index 기본값 0 설정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 08:53:55 +09:00
pro
5d15acebba fix:시나리오 모달 500 에러 및 무한 루프 수정
- SalesScenarioChecklist::toggle()에서 user_id 설정 추가 (DB NOT NULL 오류 해결)
- scenario-modal.blade.php에서 @scenario-modal-closed.window 이벤트 리스너 제거 (무한 루프 해결)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 08:20:04 +09:00
pro
ae9aa4e91f fix:영업 시나리오 모달 Alpine.js 오류 수정
- @push('scripts') 대신 인라인 x-data로 변경 (HTMX 호환)
- x-collapse 플러그인 의존성 제거, x-transition 사용
- $parent 참조 대신 window 이벤트(CustomEvent) 사용
- 체크리스트 토글, 진행률 업데이트, 단계 이동 정상화

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 08:14:07 +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
3ebae96a7f refactor:실적 데이터 섹션 제거, 내 계약 현황으로 통합
- 중복된 실적 데이터 없음 섹션 제거
- 테넌트 목록을 '내 계약 현황'으로 명칭 변경
- 빈 상태 메시지 개선 (가망고객 전환 안내)
- 총 계약 건수 표시 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:44:45 +09:00
pro
6780585f5d refactor:역할별 수당 상세를 모달로 전환
- 확정 수당 카드 클릭 시 모달로 상세 정보 표시
- 대시보드 화면 단순화 (역할별 수당 섹션 제거)
- Alpine.js 모달 트랜지션 효과 적용

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:34:10 +09:00
pro
08d584a53a refactor:대시보드 중복 섹션 통합 (영업 현황 + 테넌트 관리)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:28:53 +09:00
pro
55994ab116 fix:Alpine.js CDN 추가
- 레이아웃에 Alpine.js가 로드되지 않아 x-data 디렉티브가 동작하지 않음
- Alpine.js 3.x CDN 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:23:56 +09:00
pro
92055a6187 fix:매니저 드롭다운을 인라인 Alpine.js로 완전 재작성
- 별도 스크립트 함수 대신 x-data 인라인 정의
- @click.away를 @click.outside로 수정 (올바른 Alpine 문법)
- 스크립트 로드 순서 문제 해결

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:21:01 +09:00
pro
0f38aff96b fix:매니저 드롭다운 버튼 동작 수정
- 버튼에 type="button" 추가 (폼 제출 방지)
- 스크립트를 @push('scripts')로 이동 (중복 정의 방지)
- 디버깅 로그 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:15:14 +09:00
pro
995c0e11b5 fix:매니저 드롭다운 x-cloak 추가로 초기 깜빡임 방지
- Alpine.js 로드 전 드롭다운이 잠시 보이는 FOUC 문제 수정
- x-cloak 디렉티브와 CSS 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:11:54 +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
f1f9ff4148 fix:매니저 드롭다운 API 엔드포인트 수정
- 기존: /api/admin/users?tenant_type=HQ (미지원 파라미터)
- 변경: /sales/managers/list (전용 엔드포인트)
- 라우트 추가: sales.managers.list

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 07:01:14 +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
c20624ad0d fix:테넌트 전환 시 user_tenants에 자동 연결
- 전환한 사용자를 새 테넌트에 자동 연결
- 대시보드에서 관리 테넌트로 표시되도록 함

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:54:39 +09:00
pro
e960e0c0e1 fix:테넌트 전환 시 고유 코드 자동 생성
- code 필드 추가 (T + 날짜 + 랜덤 4자리)
- 예: T260128ABC1

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:34:25 +09:00
pro
f874acdaff fix:테넌트 전환 시 tenant_type을 STD로 수정
- customer → STD (ENUM 허용값에 맞게 수정)
- created_by 필드 제거 (테이블에 없는 컬럼)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:33:01 +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
6cb9e703d2 fix:PermissionController Tenant 모델 네임스페이스 수정
- App\Models\Tenant → App\Models\Tenants\Tenant

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:00:14 +09:00
pro
8f4c8b182e fix:검색창 닫을 때 전체 메뉴 표시 보장
- 새로고침 후에도 검색창 닫으면 전체 메뉴 표시
- originalMenuState가 없어도 모든 메뉴 복원

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:45:31 +09:00
pro
65bddb6fed feat:메뉴 검색 상태 새로고침 후에도 유지
- localStorage에 검색 활성화 상태 및 검색어 저장
- 페이지 로드 시 검색 상태 자동 복원
- 검색창 닫기 시에만 상태 초기화

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:43:46 +09:00
pro
535af469b9 fix:검색 아이콘 외곽선 간격 조정
- left-2.5 → left-3.5로 변경

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:40:46 +09:00
pro
ae76646808 fix:메뉴 검색창 아이콘과 텍스트 간격 조정
- pl-8 → pl-10으로 변경하여 여유 공간 확보

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:39:29 +09:00
pro
b442ee7b16 fix:메뉴 검색창 닫기 버튼 동작 수정
- sidebar-expanded-only 클래스가 hidden을 오버라이드하는 문제 해결
- !important로 hidden 클래스 우선순위 보장
- 사이드바 접힌 상태에서 검색창 숨김 처리

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:37:38 +09:00
pro
b257512336 feat:사이드바 메뉴 실시간 검색 기능 추가
- 헤더에 검색 아이콘 추가 (클릭 시 검색창 토글)
- 실시간 메뉴 필터링 (검색어 입력 시 즉시 반영)
- 검색어 하이라이트 표시
- X 버튼으로 검색 모드 종료
- Ctrl+K / Cmd+K 단축키 지원
- ESC 키로 검색 닫기

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:33:50 +09:00
pro
5bf50c002f fix:사이드바 그룹명 스타일 개선 (하위 메뉴보다 굵고 크게)
- 그룹 헤더: text-sm font-semibold (기존 text-xs font-bold uppercase)
- 하위 메뉴: font-normal (기존 font-medium)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:29:50 +09:00
pro
9ed6f21c12 refactor:R&D Labs 탭 개념 제거, 하위 메뉴 직접 표시
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 19:27:49 +09:00
pro
a02959d871 fix:DB 기반 메뉴 컴포넌트에서 A 탭 제거 2026-01-28 19:16:56 +09:00
pro
39e9ae39c6 fix:R&D LABS A 탭 메뉴 전체 제거 (AI/Automation) 2026-01-28 19:14:31 +09:00
pro
53469a77c5 fix:월 select min-width 120px로 확대 2026-01-28 19:05:49 +09:00
pro
143ff0dddf fix:신용평가 조회회수 월 select min-width 확대 2026-01-28 19:04:23 +09:00
pro
4d5a39ca65 fix:신용평가 조회회수 집계 과금 정책 안내 제거 (무상 제공) 2026-01-28 18:47:45 +09:00
pro
2b95ed1f40 fix:품목 테이블 품목명 확대, 나머지 컬럼 축소 2026-01-28 18:02:58 +09:00
pro
ab0335ff94 fix:전자세금계산서 폼 그리드 비율 조정 - 사업자번호 축소, 주소 확대 2026-01-28 17:59:57 +09:00
pro
ab70fb5b17 fix:전자세금계산서 발행 폼 UI/UX 개선 - 그리드 레이아웃 최적화 2026-01-28 17:50:28 +09:00
pro
3b3ef9ef8e fix:품목 테이블 레이아웃 개선 - 품목명 40% 확대 2026-01-28 17:48:01 +09:00
pro
5f64d14aef fix:품목 테이블 수량 width 축소, 품목명 확장 2026-01-28 17:42:42 +09:00