Commit Graph

492 Commits

Author SHA1 Message Date
김보곤
7fc2b95b11 fix:내 계약 현황 프로그래스바 비율 조정 (영업/매니저 절반)
- 영업/매니저 프로그래스바 너비를 w-32에서 flex-1로 변경
- 영업/매니저와 개발 진행 프로그래스바가 각각 절반씩 차지하도록 수정

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-31 20:26:42 +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
김보곤
49c437f796 fix:모달 닫힐 때 가망고객 진행률 업데이트 기능 추가
- scenario-modal-closed 이벤트에서 prospectId 처리
- updateProspectProgress 함수 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 19:41:09 +09:00
김보곤
97dfbbff45 fix:시나리오 모달 include에서 prospect 모드 변수 전달 수정
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 19:38: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
9e22f6656b fix:메뉴 뱃지 URL 기반 매칭 추가
- 라우트명뿐만 아니라 URL로도 뱃지 매칭
- 메뉴 DB에 route_name이 없어도 URL로 뱃지 표시 가능

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 16:46:17 +09:00
pro
13bb65a55b feat:사이드바 메뉴 뱃지 기능 추가
- ViewServiceProvider에서 메뉴별 뱃지 데이터 전달
- 영업파트너 승인 대기 건수 뱃지 표시
- menu-item 컴포넌트에서 뱃지 렌더링 (빨간색 원형)
- 99개 초과 시 "99+" 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 16:40:50 +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
80bbed0d4a fix:명함 OCR 에러 처리 개선
- JSON 응답 여부 확인 후 파싱
- 비JSON 응답시 상세 에러 로그 출력

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:39:43 +09:00
pro
b1c365b4ad fix:명함 OCR API 요청에 Accept 헤더 추가
- Accept: application/json 헤더 추가
- Laravel validation 오류 시 JSON 응답 보장

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:37:11 +09:00
pro
1ce98986ba fix:상세모달 헤더에서 중복 역할 뱃지 제거
- 역할은 아래 '역할 관리' 섹션에서만 표시
- 승인 상태 뱃지만 헤더에 유지

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:26:03 +09:00
pro
7ce26f35e3 fix:명함등록 용어 변경 - 계약완료 → 성공
- 통계 카드: 계약완료 → 성공
- 필터 옵션: 계약완료 → 성공
- 유효기간 표시: 계약 → 성공

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:22:54 +09:00
pro
d61f11fea8 fix:명함등록(영업권) 목록에서 계약 버튼 제거
- 명함 등록 = 영업시작의 개념으로, 별도 계약 버튼 불필요
- 상세, 수정, 삭제 버튼만 유지

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:19:55 +09:00
pro
599098a481 fix:모달 닫기 버튼 호환성 수정
- index.blade.php(closePartnerModal)와 approvals.blade.php(closeDetailModal) 모두 지원
- 함수 존재 여부 확인 후 적절한 함수 호출

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:52:44 +09:00
pro
8c01e00e0c fix:승인 페이지 수정 모달 함수 추가
- openEditModal 함수 누락으로 인한 오류 수정
- 상세 모달에서 수정 버튼 클릭 시 수정 폼 로드

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:49:52 +09:00
pro
078e3ca60e fix:상세 모달 닫기 버튼 동작 수정
- data-close-modal 속성을 onclick="closeDetailModal()"로 변경
- X 버튼과 닫기 버튼이 정상적으로 모달을 닫도록 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:48:30 +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
1e8474cd62 Merge branch 'develop' of http://114.203.209.83:3000/SamProject/sam-manage into develop 2026-01-31 11:35:38 +09:00
pro
120016c8f8 fix:상세모달 승인/반려 버튼 관리자 전용으로 변경
- 일반 영업파트너에게는 '본사 운영팀에서 승인 처리 예정' 메시지 표시
- 승인/반려 버튼은 isAdmin() 체크로 관리자에게만 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:35:04 +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
5da0ab5ccb feat:헤더 사용자 뱃지 옆에 이름 표시 추가
- 데스크톱에서 사용자 아바타 뱃지 옆에 이름 표시
- 모바일에서는 기존처럼 뱃지만 표시 (공간 절약)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 10:50:54 +09:00
pro
21337f4a4f fix:영업파트너관리 승인/삭제 버튼 권한 제어
- isAdmin() 체크 추가: admin 또는 super-admin 역할만 승인/삭제 가능
- 일반 사용자(유치자)는 상세/수정만 가능

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 10:36:02 +09:00
5ddea44bef feat:문서관리 Phase 4.2 - show.blade.php 섹션 테이블 읽기전용 렌더링
- 5가지 컬럼 타입 렌더링 (complex/select/check/measurement/text)
- select 판정값 배지 표시 (적합=초록, 부적합=빨강)
- check 체크마크 SVG, measurement mono 폰트
- 정적 컬럼 매핑 (NO/검사항목/기준/방식/주기/규격/분류)
- 종합판정 + 비고 Footer (마지막 섹션 하단)
- 검사 기준 이미지 표시
- 버그 수정: field_key→Str::slug, field_type, section.name→title

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 09:50:51 +09:00
9cd902af2b feat: 시스템 알림 관리 페이지 (Phase 5)
- sam_stat DB 연결 추가 (config/database.php)
- StatAlert 모델 생성 (sam_stat 연결, 읽기+상태변경)
- SystemAlertController 생성 (목록/읽음/해결/전체읽음)
- 시스템 알림 Blade 페이지 (필터/페이지네이션/HTMX)
- /system/alerts 라우트 등록

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 08:33:33 +09:00
4efd95e2ba feat:Phase 2.4 문서 목록/검색/필터 완성 - 날짜 범위 필터 + 삭제 기능
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 05:07:33 +09:00
5111db24c2 feat:결재 워크플로우 구현 (Phase 2.3)
- API: submit(DRAFT→PENDING), approve(단계별 승인), reject(반려 사유 필수)
- 전체 승인 완료 시 자동 APPROVED, 재제출 시 결재라인 초기화
- edit: 결재 제출 버튼 + submitForApproval() JS
- show: 승인/반려 버튼, 반려 사유 모달, 결재 현황 속성 수정, 상태 배지 CSS
- 라우트: submit/approve/reject 3개 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 05:00:48 +09:00
d43f8d0ba1 fix:카테고리 스코프 분류 버그 수정, 복사 시 소프트삭제 복원, UI 개선
- isset→array_key_exists: description NULL인 그룹 스코프 오분류 수정
- 글로벌+테넌트 필터 버튼 추가 (공통코드/카테고리)
- 전체선택 체크박스를 헤더 아이콘 앞에 배치
- 스크롤 영역 calc(100vh-180px) 화면 기준으로 변경
- 복사 시 소프트삭제된 동일 코드 존재하면 복원 처리

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 04:51:32 +09:00
df762d6cf4 feat:문서 데이터 입력 UI 구현 (Phase 2.2)
- 섹션별 동적 검사 테이블 렌더링 (complex/select/check/measurement/text)
- 정적 컬럼 자동 매핑 (NO, 검사항목, 검사기준, 검사방식, 검사주기)
- complex 컬럼 서브 라벨 행 (측정치 n1/n2/n3)
- 종합판정 + 비고 Footer 영역
- JS 폼 데이터 수집 (기본필드 + 섹션 테이블 데이터 + 체크박스)
- saveDocumentData() 공통 메서드 (section_id/column_id/row_index EAV 저장)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 04:43:12 +09:00
7635373a45 feat:문서관리 Phase 1.3~2.1 구현 (시드데이터, 복제, 문서생성)
- Phase 1.3: EGI/SUS 수입검사 시드 데이터 생성 (IncomingInspectionTemplateSeeder)
- Phase 1.5: 양식 복제 기능 (duplicate API, 테이블 버튼, JS)
- Phase 2.1: 문서 생성 보완
  - 문서번호 카테고리별 prefix (IQC/PRD/SLS/PUR-YYMMDD-순번)
  - 결재라인 초기화 (template.approvalLines → document_approvals)
  - 기본필드 뷰 속성 수정 (field_type, Str::slug field_key)
  - store()에 DB 트랜잭션 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 04:32:35 +09:00
097504e5c9 feat:APK 파일 다운로드 링크 추가
- APK 파일명 클릭 시 다운로드, download_count 자동 증가
- app_releases 디스크 스트리밍 다운로드 라우트 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 23:37:41 +09:00
95ef55470e feat:앱버전 수정 기능 추가 (모달, APK 파일 교체)
- 버전코드/버전명/플랫폼/변경사항/강제업데이트/APK 파일 수정 가능
- 새 APK 업로드 시 기존 파일 삭제 후 교체
- 수정 모달 UI, PUT 라우트 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 22:56:38 +09:00
daaa77badc feat:앱버전 슈퍼관리자 소프트삭제 목록 표시, 복구/영구삭제 기능
- 슈퍼관리자: 삭제된 항목 빨간 배경으로 표시, 복구/영구삭제 버튼
- 소프트 삭제 시 APK 파일 유지, 영구 삭제 시에만 파일 제거
- restore, forceDestroy 라우트 및 서비스 메서드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 22:39:19 +09:00
a0ec103614 feat:코드그룹 DB기반 관리, 스코프 필터, 동기화 테넌트명 표시
- 공통코드/카테고리: 하드코딩 그룹 라벨 제거, DB description 기반으로 전환
- 코드그룹 신규 생성 기능 추가 (사이드바 + 모달, TenantSetting 저장)
- 글로벌/테넌트 스코프 분류 및 필터 버튼 (전체/글로벌/테넌트)
- 사이드바 컴팩트 레이아웃 (100+ 그룹 대응)
- 동기화 페이지 3종(메뉴/공통코드/카테고리) 테넌트 회사명 표시

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 22:25:05 +09:00
78e67eb928 feat: 앱 버전 관리 페이지 구현
- AppVersion 모델, Service, Controller
- 버전 등록 폼 (APK 업로드, 강제 업데이트 설정)
- 버전 목록 테이블 (활성 토글, 다운로드 수, 삭제)
- /app-versions 라우트 추가
- app_releases 스토리지 디스크 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 19:53:09 +09:00
pro
275ad1d5ab fix:테스트 데이터 생성 버튼 축소 및 1건만 생성
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 19:22:00 +09:00
pro
10ec26723f feat:법인카드 서버 저장 기능 구현
- CorporateCard 모델 추가
- CorporateCardController API 추가 (CRUD)
- 라우트 추가 (list, store, update, deactivate, destroy)
- React 컴포넌트 API 연동 (fetch 호출)
- 로딩 상태 UI 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 19:12:07 +09:00
pro
34752f0d64 refactor:법인카드 목록 한줄 테이블 형태로 간소화
- 카드명, 카드번호, 실사용자, 사용현황, 상태만 표시
- 그리드 카드 → 테이블 리스트 형태로 변경
- 클릭 시 상세 정보 모달에서 확인

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 18:11:57 +09:00
fd77a6667a Merge remote-tracking branch 'origin/develop' into develop 2026-01-30 18:09:47 +09:00
pro
e6f47e88cb feat:법인카드 테스트 데이터 생성 버튼 추가
- 번개(Zap) 아이콘 버튼 클릭 시 임시 데이터 3건 생성
- 입력 테스트용 기능

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 18:08:47 +09:00
615df87061 Merge remote-tracking branch 'origin/develop' into develop 2026-01-30 18:08:33 +09:00
290af99a98 feat(MNG): FCM 채널명 동기화 및 config 일원화 (7채널)
- push_urgent → push_vendor_register (거래처등록)
- push_payment → push_approval_request (결재요청)
- push_income 신규 추가 (입금)
- config/fcm.php 전체 7개 채널 등록
- FcmController validation 및 Blade select 옵션 반영

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 18:07:45 +09:00
pro
0172fc7441 fix:법인카드 목업 데이터 제거
- 하드코딩된 목업 데이터 삭제
- 빈 배열로 초기화 (서버 연동 후 실제 데이터 로드 예정)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 18:06:35 +09:00
pro
c2ae377273 feat:법인카드 비활성화/영구삭제 기능 분리
- 비활성화: status를 inactive로 변경 (데이터 유지)
- 영구삭제: 목록에서 완전히 제거 (복구 불가)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 18:04:25 +09:00
pro
12730a2e35 fix:유효기간 라벨에 년도/월 안내 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 18:02:09 +09:00
pro
cc15a26234 feat:법인카드 관리 필드 추가 (이용자명, 유효기간, CVC, 실사용자)
- 사용자 → 실사용자로 명칭 변경
- 이용자명(명의자) 입력 필드 추가
- 유효기간 YY/MM 형식 입력 필드 추가 (자동 포맷팅)
- CVC 3자리 입력 필드 추가

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 17:58:54 +09:00
b1481e168f Merge remote-tracking branch 'origin/develop' into develop 2026-01-30 13:51:49 +09:00
pro
bf1e3ff5b7 feat: Vertex AI 연결 테스트 기능 추가
- testGeminiVertexAi() 메서드 추가
- getVertexAiAccessToken() OAuth 토큰 획득 메서드 추가
- 모달에서 Vertex AI 파라미터 전송하도록 수정

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:37:33 +09:00