S21고객DB 구성
g5_dbmaster (83컬럼) + memo + quickmemo — 고객 전체 정보 구조 ★ S5 DB배분배정/회수 관리 ★ S19 녹취관리통화기록 연동 ★ S22 사원관리기능즐겨찾기/일정/재고매핑
고객정보
문의정보
상담정보
계약정보
고객 기본정보 + 상담상태 (g5_dbmaster)
| 분류 | 필드 | 설명 | 값 예시 |
|---|---|---|---|
| 기본 식별 | |||
| PK | no | 고객 레코드 번호 | 734521 |
| 번호 | db_number | 관리번호 | GNA-2026-0342 |
| 이름 | db_name | 고객명 | 김** |
| 연락처 | db_phone | 전화번호 (암호화) | 010-****-5678 |
| 성별 | db_sex | 성별 | 남 / 여 |
| 연령 | db_age | 연령대 | 20대, 30대, 40대... |
| 지역 | db_area | 거주지역 | 서울, 경기, 부산... |
| 직업 | db_job | 직업 | 회사원, 자영업... |
| 상담 상태 (핵심) | |||
| 상담상태 | db_car_state | 현재 상담 진행상태 | 신규 / 부재 / 상담 / 회수 / 중복 |
| 알림상태 | db_al_state | 알림/알람 상태 | A(활성) |
| 결과 | db_result | 최종 결과 | 승인/반려 |
| 반려 | db_return | 반려 여부 | 회수 |
| 반려횟수 | db_return_cnt | 누적 반려 횟수 | 0, 1, 2... |
| 중복 | db_jungbok | 중복 DB 상태 | 중복확인됨 |
| 삭제 | db_del_yn | 소프트 삭제 | N / Y |
| 배정 정보 | |||
| 담당자 | db_agent / db_agent_name | 배정 사원 | 이동현 |
| 팀 | db_agent_team / db_te_code | 배정 팀 | 1팀 |
| 본부 | db_head / db_head_code | 배정 본부 | 서울본부 |
| 매니저 | db_manager | 관리 매니저 | 김매니저 |
고객 상세 보기 (더미 — popDbDetail.php 기반)
| 고객명 | 김** |
| 연락처 | 010-****-5678 |
| 상담상태 | 상담중 |
| 등록일 | 2026-03-17 09:23 |
| 배정일 | 2026-03-17 09:30 |
| 담당 | 이동현 (서울/1팀) |
| 매체 | 차봇 |
| 상품 | 리스 |
| 차종 | 현대 투싼 NX4 |
| 희망조건 | 월 45만원, 36개월 |
| 광고동의 | 동의 |
| 국산/수입 | 국산 |
차량 및 상품 DB 유입정보
| 분류 | 필드 | 설명 | 값 예시 |
|---|---|---|---|
| 차량/상품 정보 | |||
| 차종분류 | db_car_type | 신차/렌트/리스 | 리스 |
| 렌트|리스 | db_car_type2 | 렌트 또는 리스 | 리스 |
| 차량 | db_car | 차량 모델명 | 현대 투싼 NX4 |
| 제조사 | db_car_first | 제조사명 | 현대 |
| 모델 | db_car_second | 모델명 | 투싼 |
| 가격 | db_carmoney | 차량 가격 | 35,000,000 |
| 메모 | db_car_memo | 차량 관련 메모 | 월 납입 45만 희망 |
| 국산|수입 | db_makerNationCode | 국산/수입 코드 | 0=국산 |
| 유입 정보 (추적) | |||
| 매체 | db_domain | 유입 매체/광고사 | 차봇, 카카오, 네이버 |
| 유입코드 | db_statCode | 유입 타입 코드 | CPC, CPA |
| 광고대행 | db_inflowAdAgency | 광고 대행사 | GNA마케팅 |
| 유입기기 | db_inflowDevice | 접속 기기 | mobile, PC |
| 검색어 | db_inflowAdSearch | 광고/검색 코드 | 리스비교 |
| 노출 | db_exposure | 노출 경로 | 검색광고 |
| IP | db_insertIp | 등록 IP | 211.234.56.78 |
| 호스트 | db_insertHost | 등록 도메인 | gna-biz.online |
| 동의/마케팅 | |||
| 광고동의 | db_agree | 광고수신동의 | '예스'/'Y' = 동의 | ''/'없음' = 미동의 |
| 마케팅 | db_permPolicyMarketingYN | 마케팅 동의 | Y / N |
상담 타임라인 — g5_dbmaster_memo 기반 (고객 #734521)
2026-03-17 09:45 · 이동현 · 상담
고객 첫 상담. 투싼 NX4 리스 36개월, 월 45만원 희망. 재고 확인 후 견적 발송 예정.
2026-03-17 10:20 · 이동현 · 📞 발신 12:34 ★ 녹취S19 녹취관리에서 확인
전화 상담 완료. 투싼 NX4 프리미엄 트림 재고 있음. 월 42만원 가능. 고객 긍정적.
2026-03-17 14:00 · 이동현 · 견적발송
카카오 채널로 견적서 발송. 현대캐피탈 리스 36개월 견적.
2026-03-17 16:30 · 시스템 · 알림
일정 알림: 03-18 10:00 콜백 예약됨
상담 메모 DB 구조 (g5_dbmaster_memo / g5_dbmaster_quickmemo)
| 테이블 | 주요 필드 | 용도 |
|---|---|---|
| g5_dbmaster_memo | dbno, mb_id, memo, memo_type, gubun, memo_insertdate | 상세 상담이력 (타임라인) |
| g5_dbmaster_quickmemo | dbno, mb_id, quickmemo | 빠른 메모 (한줄 기록) |
| g5_dbmaster_log | log1~log10, insertid, insertdate | 변경 이력 로그 |
| call_recordings | phone_number, employee_id, transcription, summary | 통화 녹취 + AI 전사 (콜 연동) |
계약 시 기록되는 정보 (g5_dbmaster + ci_personal_sales)
| 분류 | 필드 | 설명 | 값 |
|---|---|---|---|
| g5_dbmaster 계약 필드 | |||
| 계약승인 | db_sales_yn | 계약 승인 여부 | Y / N |
| 계약일 | db_sales_date | 계약 승인일시 | 2026-03-17 14:30 |
| 계약금액 | db_sales_money | 매출 금액 | 850,000 |
| 인도승인 | db_indo_result_yn | 인도 승인 여부 | Y / N |
| 인도일 | db_indo_date | 인도 승인일시 | 2026-03-20 10:00 |
| 인도금액 | db_indo_money | 인도 매출 | 850,000 |
| ci_personal_sales 정산 상세 ★ S1계약관리에서 승인처리 | |||
| 계약번호 | contract_number | 계약 고유번호 | C2026-0342 |
| 캐피탈 | capital | 금융사 | 현대캐피탈 |
| 수수료 | fee | 수수료 | ₩850,000 |
| 지출 | expense | 지출 합계 | ₩120,000 |
| 정산액 | total | 최종 정산금액 | ₩730,000 |
| 상태 | status | 10가지 상태값 | 작성중→계약승인대기→계약완료→인도승인대기→인도완료 |
계약 상태 전이도 (SalesStatus)
작성중→
계약승인대기→
계약완료→
인도승인대기→
인도완료
분기:
반려
취소
수정대기
S22사원 관리기능
사원용 고객DB 관리 도구 — 즐겨찾기/일정/상단고정/재고매핑/카카오 ★ S21 고객DB고객 데이터 기반
즐겨찾기
일정등록
상단고정
재고매핑
카카오 푸시
즐겨찾기 시스템 — db_attention 필드 토글
| 항목 | 상세 |
|---|---|
| DB 필드 | g5_dbmaster.db_attention = '관리' (즐겨찾기 ON) / '' (OFF) |
| 추가 마커 | db_attention1 = '첩보1', '첩보2', '첩보3' (보조 마커) |
| 토글 함수 | toggleFavorite() → ajax_dbmaster_sangtae.php (num=1) |
| 메뉴 | db_master.php?returns=즐겨찾기 (현재 주석 처리됨) |
| 상태 | 구현완료 (레거시) |
즐겨찾기 목록 (더미)
| ⭐ | 고객명 | 차종 | 상태 | 최근상담 | 해제 |
|---|---|---|---|---|---|
| ★ | 김** | 투싼 NX4 | 상담중 | 03-17 09:45 | |
| ★ | 박** | BMW 520d | 부재 | 03-16 14:20 |
고객 연계 일정 — db_al_date / db_al_state
| 항목 | 상세 |
|---|---|
| 일정 필드 | g5_dbmaster.db_al_date (DATETIME) — 알림/스케줄 일시 |
| 상태 필드 | db_al_state — 'A'(활성) / 기타 |
| 기능 파일 | db_schedule.php + _lib/schedule_service.php |
| 유형 | 일정등록(reg) / 근무요청(work) |
| 상태 | 구현완료 (캘린더 뷰 포함) |
예약된 콜백 (더미)
| 일시 | 고객 | 유형 | 메모 | 관리 |
|---|---|---|---|---|
| 03-18 10:00 | 김** (투싼) | 콜백 | 견적 회신 확인 | |
| 03-19 14:00 | 박** (520d) | 방문 | 계약서 작성 |
DB목록 상단고정 — is_notice + g5_dbmaster_is_notice
| 항목 | 상세 |
|---|---|
| 플래그 필드 | g5_dbmaster.is_notice = 'y'(고정) / 'n'(일반) |
| 사원별 매핑 | g5_dbmaster_is_notice (dbno, mb_id) UNIQUE — 사원별 개별 고정 |
| 토글 함수 | toggleTopFixed() → _proxy.php → customer_handler.php (set_notice) |
| 정렬 | 고정된 항목이 목록 최상단에 표시 |
| 상태 | 구현완료 |
재고 매핑 — gnaharmony DB + rx_kimgabal_inventory 연동
| 항목 | 상세 |
|---|---|
| 차량 DB | gnaharmony (115.71.19.111) — nTreeCarMaker/Name/Model/Grade/Trim 읽기전용 |
| 재고 테이블 | rx_kimgabal_inventory — car_model, trim, quantity, colors, price, promotion, capital |
| 재고 확인 | nTreeCarMark — markStock > 0 AND statCode='normal' |
| 팝업 | popFindStock.php — 차량 검색/재고 확인 팝업 |
| API | CarApi.php → api.gnacorp.co.kr + gnaharmony 직접 조회 |
| 이미지 | data-gnacar.com CDN (외장/내장 컬러 이미지) |
| 다타랩 | 미연동 — 문서에만 언급, 코드 없음 |
고객 문의 차량 재고 확인 (더미)
| 고객 | 문의차량 | 재고 | 외장색 | 가격 | 상태 |
|---|---|---|---|---|---|
| 김** | 투싼 NX4 프리미엄 | 3대 | 어비스블랙, 쉬머링실버 | ₩35,200,000 | ✓ 진행가능 |
| 박** | BMW 520d M Sport | 0대 | - | ₩65,800,000 | ✕ 재고없음 |
| 이** | 기아 EV6 스탠다드 | 1대 | 런웨이레드 | ₩52,480,000 | △ 한정재고 |
* DB 등록 시 nTreeCarMark 재고 조회 → 진행가능/재고없음/한정재고 자동 표시
카카오 알림톡 / 비즈니스 채널 — 현재 상태 분석
| 항목 | 현재 상태 | 상세 |
|---|---|---|
| 인프라 (구축됨) | ||
| SMS DB | 구축완료 | smtnt_gnacar.Msg_Tran — Msg_Type=4(SMS)/6(LMS)/71(카카오) |
| Sender Key | 보유 | 368834e2f466869198c9cedbf0b5a089359f3abb |
| 채팅 수집 | 구현완료 | /kakaotalk/collect_chat.php — 카카오 비즈채널 채팅 DB 저장 |
| 소셜 로그인 | 구현완료 | plugin/social/Hybrid/Providers/Kakao.php (OAuth2) |
| 미구현 (필요 개발) | ||
| 알림톡 발송 | 미구현 | SMSService에 Msg_Type=71 발송 로직 없음. 템플릿 등록 필요 |
| 상담동의 발송 | 미구현 | 담당자정보+상담동의 메시지 → 채널가입 유도 |
| 채널 구독 추적 | 미구현 | 고객의 카카오 채널 구독 여부 확인 로직 없음 |
카카오 푸시알림 구현 시나리오 (제안)
1. DB 배정→
2. 상담동의 알림톡 발송→
3. 담당자 정보 포함→
4. 채널 가입 유도→
5. 채널 구독 시 알림 활성
| 구현 항목 | 방법 | 난이도 |
|---|---|---|
| 알림톡 템플릿 등록 | 카카오 비즈메시지센터에서 템플릿 심사/등록 | 중 |
| SMSService 확장 | sendKakao() 메서드 추가 (Msg_Type=71 INSERT) | 하 |
| 배정 시 자동발송 | db_bunbae_process.php에서 배정 완료 후 알림톡 트리거 | 하 |
| 담당자 정보 포함 | 템플릿 변수: #{담당자명}, #{전화번호}, #{회사명} | 하 |
| 채널가입 링크 | 카카오 채널 URL 포함 (프로필+@채널명) | 하 |
| 구독 여부 추적 | 카카오 API로 구독 상태 확인 (친구톡 API) | 상 |
S1계약관리
Settlement → Pending — 계약/인도/지출 승인 관리 ★ S4 지출관리 연동지출승인은 S4 지출관리에서 처리
계약 24
인도 12
지출 8
반려 5
삭제 3
| 등록일 | 상태 | 계약일 | 고객명 | 담당자 | 부서/팀 | 캐피탈 | 제조사/모델 | 수수료 | 지출합계 | 최종정산 | 관리 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 03-17 | 계약승인대기 | 03-15 | 김** | 이동현 | 서울/1팀 | 현대캐피탈 | 현대 투싼 NX4 | ₩850,000 | ₩120,000 | ₩730,000 | ||
| 03-16 | 계약승인대기 | 03-14 | 박** | 김수민 | 경기/2팀 | KB캐피탈 | 기아 쏘렌토 MQ4 | ₩920,000 | ₩95,000 | ₩825,000 | ||
| 03-16 | 계약완료 | 03-13 | 최** | 박지훈 | 서울/3팀 | 하나캐피탈 | BMW X5 xDrive | ₩1,450,000 | ₩210,000 | ₩1,240,000 | ||
| 03-15 | 인도완료 | 03-10 | 정** | 최서윤 | 부산/1팀 | 현대캐피탈 | 제네시스 GV70 | ₩1,120,000 | ₩180,000 | ₩940,000 | 정산확정 | |
| 03-15 | 인도승인대기 | 03-12 | 강** | 이동현 | 서울/1팀 | KB캐피탈 | 쉐보레 트레일블레이저 | ₩680,000 | ₩80,000 | ₩600,000 | ||
| 03-14 | 계약반려 | 03-11 | 윤** | 김수민 | 경기/2팀 | 하나캐피탈 | 르노 QM6 | ₩560,000 | ₩70,000 | ₩490,000 |
총 24건 중 1-6
1234
| 등록일 | 계약번호 | 상태 | 지출유형 | 내용 | 금액 | 지출일 | 수취인 | 고객명 | 담당자 | 관리 |
|---|---|---|---|---|---|---|---|---|---|---|
| 03-17 | C2026-0342 | 승인대기 | 카드 | 보험료 선납 | ₩450,000 | 03-16 | 현대해상 | 김** | 이동현 | |
| 03-16 | C2026-0338 | 승인완료 | 이체 | 탁송비 | ₩120,000 | 03-15 | GNA탁송 | 박** | 김수민 | |
| 03-15 | C2026-0331 | 반려 | 카드 | 주차비 | ₩35,000 | 03-14 | - | 최** | 박지훈 |
| 등록일 | 상태 | 계약일 | 고객명 | 담당자 | 캐피탈 | 반려사유 | 반려일 | 관리 |
|---|---|---|---|---|---|---|---|---|
| 03-14 | 계약반려 | 03-11 | 윤** | 김수민 | 하나캐피탈 | 서류 미비 (차량등록증 누락) | 03-15 | |
| 03-12 | 인도반려 | 03-08 | 한** | 최서윤 | 현대캐피탈 | 인도일자 불일치 | 03-14 |
인도승인대기 12건 (계약 탭과 동일 구조)
삭제된 매출 3건 (복원 버튼 포함)
S2정산요약
Settlement → Summary — 매출/건수 종합 현황 (2026년 3월) ★ S3 급여/정산인센티브 상세 계산 ★ S16 매출관리매출 상세 분석
₩3.2억
인도 매출 (89건)
▲ 12.5% 전월비
₩1.8억
계약 매출 (54건)
▲ 8.2%
₩2,400만
취소 (7건)
▼ 3.1%
3건
위험판매
금액초과 2 / 비율초과 1
12/20일
영업일
서울본부 18명
인도 42건 ₩1.5억
인센티브 ₩3,200만
환수 ₩180만
▼
1팀 6명
인도 18건 ₩6,800만
| 직원명 | 직급 | 인도건수 | 인도금액 | 인센티브율 | 인센티브 | 기본급 | 환수 | 급여합계 |
|---|---|---|---|---|---|---|---|---|
| 이동현 | 대리 | 8 | ₩28,500,000 | 12% | ₩3,420,000 | ₩2,500,000 | -₩180,000 | ₩5,740,000 |
| 장민호 | 사원 | 5 | ₩18,200,000 | 10% | ₩1,820,000 | ₩2,200,000 | - | ₩4,020,000 |
| 한소영 | 인턴 | 3 | ₩9,800,000 | 8% | ₩784,000 | ₩1,800,000 | - | ₩2,584,000 |
| 소계 (6명) | 18 | ₩68,000,000 | ₩7,280,000 | ₩15,000,000 | -₩180,000 | ₩22,100,000 | ||
3팀 5명
인도 14건 ₩4,900만
3팀 상세 (동일 구조)
경기본부 12명
인도 28건 ₩1.0억
인센티브 ₩2,100만
▼
경기본부 팀별 상세 (동일 구조)
부산본부 8명
인도 19건 ₩7,200만
인센티브 ₩1,500만
▼
부산본부 팀별 상세 (동일 구조)
S3급여/정산
SalaryCalculationService — 기본급 + 6종 수당 + 환수차감 ★ S1 계약관리인도완료 건수 기반 인센티브
38명
직원수
89건
총 인도건수 (₩3.2억)
₩6,800만
총 인센티브
-₩320만
총 환수액 (4건)
₩1.42억
총 급여합계
급여 계산 상세 — 이동현 (서울/1팀, 대리)
| 항목 | 계산 기준 | 금액 |
|---|---|---|
| 기본급 | 대리 직급 (ci_ranks) | ₩2,500,000 |
| 본인 인센티브 | 인도완료 8건 × settlement_amount ₩28.5M × 12% | ₩3,420,000 |
| 인턴리더 수당 | 팀원(한소영) settlement ₩9.8M × 5% | ₩490,000 |
| 이사/부장 수당 | - | ₩0 |
| A팀 수당 | - | ₩0 |
| 매니저 수당 | - | ₩0 |
| 환수 차감 | 2월 환수 확정 1건 | -₩180,000 |
| 급여 합계 | ₩6,230,000 | |
S4지출관리
지출 등록/승인/송금 요청 워크플로우 ★ S1 계약관리계약번호 기반 지출 연동
156건
전체 지출
18건
승인대기
124건
승인완료
₩4,280만
총 지출액
14건
송금대기
| 등록일 | 계약번호 | 지출상태 | 유형 | 내용 | 금액 | 지출일 | 수취인 | 담당자 | 송금상태 | 관리 |
|---|---|---|---|---|---|---|---|---|---|---|
| 03-17 | C2026-0342 | 승인대기 | 카드 | 보험료 선납 | ₩450,000 | 03-16 | 현대해상 | 이동현 | - | |
| 03-16 | C2026-0338 | 승인완료 | 이체 | 탁송비 | ₩120,000 | 03-15 | GNA탁송 | 김수민 | 대기 | |
| 03-15 | C2026-0335 | 승인완료 | 카드 | 차량정비비 | ₩280,000 | 03-14 | GNA정비 | 박지훈 | 완료 | - |
S5DB배분 (배정)
web/db_bunbae.php — 미배정 고객 → 사원 배정 ★ S8 자격관리배정 전 모집인 자격검증 필수 ★ S7 회원관리사원 재직상태/계정상태 확인 ★ S12 매체관리유입 매체별 DB 자동등록
일반배정 847
회수배정 124
만기배정 56
847
미배정 전체
523
금융상품
324
일반상품
12
적격 사원
3
자격 미달
| 번호 | 매체 | 렌트|리스 | 상태 | 고객명 | 국산|수입 | 차종 | 메모 | 등록일 | |
|---|---|---|---|---|---|---|---|---|---|
| 734521 | 차봇 | 리스 | 신규 | 김** | 국산 | 현대 투싼 NX4 | 월 납입 45만 희망 | 03-17 09:23 | |
| 734520 | 카카오 | 렌트 | 신규 | 박** | 수입 | BMW 520d | 법인 리스 전환 문의 | 03-17 09:15 | |
| 734518 | 네이버 | 렌트 | 부재 | 이** | 국산 | 기아 EV6 | - | 03-17 08:50 | |
| 734515 | KB다이렉트 | 할부 | 신규 | 최** | 국산 | 쉐보레 트랙스 크로스오버 | 24개월 할부 원함 | 03-17 08:42 | |
| 734512 | 차봇 | 리스 | 중복 | 정** | 수입 | 벤츠 E300 | 기존 고객 재문의 | 03-17 08:30 |
선택: 0건
회수배정 124건 — WHERE db_return='회수' AND db_car_state='회수'
만기배정 56건 — WHERE db_agent_code != ''
S6회수/재배정
web/db_return_ok.php — 2단계 처리 (회수 → 재배정) ★ S5 DB배분회수된 DB는 재배정 대기열로 ★ S13 양도관리양도는 별도 워크플로우
1단계: 회수처리→
db_return='회수' + 배정정보 초기화→
2단계: 재배정→
새 사원 지정 + db_car_state='신규'
124
재배정 대기
38
금주 재배정 완료
2.1회
평균 회수횟수
| 번호 | 고객명 | 차종 | 이전 사원 | 이전 팀 | 회수일 | 회수횟수 | 재배정 | 처리 | |
|---|---|---|---|---|---|---|---|---|---|
| 720145 | 이** | 기아 쏘렌토 | 김수민 | 서울/1팀 | 03-10 | 1회 | |||
| 720089 | 김** | 현대 투싼 | 박지훈 | 서울/3팀 | 03-08 | 1회 | |||
| 719902 | 최** | BMW X5 | 최서윤 | 부산/1팀 | 03-05 | 2회 |
S7회원관리
Users — 회원 CRUD + 보안 대시보드 ★ S8 자격관리모집인 자격/서류 관리 ★ S15 로그관리접속/활동 로그 조회
3
승인대기
2
잠금계정
5
비번만료임박
8
경고계정
12
로그인실패
1
비인가IP
| 이름 | ID | 부서 | 팀 | 직급 | 계정상태 | 재직상태 | 모집인 | 담당금융사 | 최근로그인 | 비번변경일 | 관리 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 이동현 | ldh2026 | 서울본부 | 1팀 | 대리 | 정상 | 재직 | 보유 | 현대캐피탈 | 03-17 09:15 | 03-01 | |
| 김수민 | ksm2026 | 경기본부 | 2팀 | 사원 | 정상 | 재직 | 보유 | KB캐피탈 | 03-17 08:50 | 02-15 | |
| 박지훈 | pjh2025 | 서울본부 | 3팀 | 팀장 | 정상 | 재직 | 보유 | 하나캐피탈 | 03-16 18:20 | 01-20 | |
| 장민호 | jmh2026 | 서울본부 | 1팀 | 인턴 | 임시비번 | 재직 | 미보유 | - | 03-15 10:00 | - | |
| 한소영 | hsy2026 | 서울본부 | 1팀 | 인턴 | 잠금 | 재직 | 미보유 | - | 03-10 14:30 | - |
S8자격관리
Operations → Credentials — 모집인 자격/서류 + 335일 만료 추적 ★ S9 교육관리교육이수→자격 자동반영 (mb_12/mb_13) ★ S5 DB배분자격 미달 시 배정 차단
38
전체 회원
28
개인정보교육 완료
25
모집인교육 완료
5
만료 예정 (30일내)
전체 자격 현황
개인정보보호
모집인교육
만료 예정
| No | 본부 | 팀 | 이름 | 직급 | 보안서약서 | 업무위탁계약서 | 개인정보보호 | 모집인교육 | 관리 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 서울 | 1팀 | 이동현 | 대리 | 2026-01-15 | 2026-01-15 | 2025-12-20 | 2025-11-10 | |
| 2 | 경기 | 2팀 | 김수민 | 사원 | 2026-02-01 | 2025-04-20 D-3 | 2026-01-05 | 2025-12-15 | |
| 3 | 서울 | 3팀 | 박지훈 | 팀장 | 2025-12-10 | 2025-12-10 | 2025-04-15 D-8 | 2025-10-20 | |
| 4 | 서울 | 1팀 | 장민호 | 인턴 | 미등록 | 미등록 | 미이수 | 미이수 | |
| 5 | 서울 | 1팀 | 한소영 | 인턴 | 2026-03-01 | 2026-03-01 | 2025-03-10 만료 | 미이수 |
개인정보보호교육 현황 필터 (동일 구조)
모집인교육 현황 필터 (동일 구조)
만료 예정 서류 목록 (DATEDIFF ≥ 335)
S9교육관리
Education — 교육일정/공지/출석/수료 관리 ★ S8 자격관리수료→자격 자동 연동
교육일정 12
공지사항 5
내 교육현황
12
전체 교육
3
진행중
8
완료
1
취소
| No | 교육유형 | 제목 | 교육일 | 장소 | 강사 | 상태 | 대상자 | 출석 | 관리 |
|---|---|---|---|---|---|---|---|---|---|
| 12 | 개인정보보호 | 2026년 1분기 개인정보보호교육 | 2026-03-20 | 본사 교육실 | 김교육 | 진행중 | 28명 | 22/28 | |
| 11 | 금소법 | 2026년 모집인 정기교육 | 2026-03-15 | 온라인 | 박강사 | 완료 | 25명 | 25/25 | |
| 10 | 개인정보보호 | 신입사원 개인정보보호교육 | 2026-03-05 | 본사 교육실 | 이교수 | 완료 | 8명 | 8/8 |
교육 공지사항 (중요/고정 뱃지 포함)
내 교육 이수 현황 + 수료증 업로드
S10광고매체 관리
AdMediaController — 매체 등록/ROI 분석 ★ S12 매체관리매체 마스터 + DB자동등록 상세 ★ S5 DB배분매체별 유입 DB 배정
매체 리스트
그룹 통계
영역별 통계
| No | 광고영역 | 매체명 | 브랜드 | 광고타입 | 일예산 | 광고비 | 사용 | 수익쉐어 | 관리 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 서울 | 차봇 | GNA | CPC | ₩500,000 | ₩12,500,000 | Y | 15% | |
| 2 | 경기 | 카카오모빌리티 | 카카오 | CPA | ₩300,000 | ₩8,200,000 | Y | 12% | |
| 3 | 서울 | 네이버 검색 | 네이버 | CPC | ₩400,000 | ₩9,800,000 | Y | N |
| 매체 | 지역 | 방문수 | 광고비 | 계약건 | 인도건 | 인도매출 | CPA | 전환율 | ROI |
|---|---|---|---|---|---|---|---|---|---|
| 차봇 | 서울 | 4,520 | ₩12.5M | 89 | 67 | ₩2.8억 | ₩186,567 | 1.48% | 22.4x |
| 카카오 | 경기 | 3,100 | ₩8.2M | 52 | 41 | ₩1.6억 | ₩200,000 | 1.32% | 19.5x |
| 네이버 | 서울 | 2,890 | ₩9.8M | 48 | 35 | ₩1.5억 | ₩280,000 | 1.21% | 15.3x |
영역(지역)별 매체 통계 (동일 구조)
S11캐피탈 관리
Settlement → Capitals — 캐피탈사 마스터 + 수익배분/부가세 ★ S3 급여/정산수익배분율 → 정산금액 계산
| 캐피탈명 | 별칭 | 담당자 | 취급상품 | 대행사 | 부가세 | 부가세율 | 수익배분 | 배분율 | 상태 | 관리 |
|---|---|---|---|---|---|---|---|---|---|---|
| 현대캐피탈 | 현캐, HMC | 김담당 | 렌트, 리스, 할부 | - | 공제 | 10% | Y | 15% | 활성 | |
| KB캐피탈 | KB, 국민 | 이담당 | 렌트, 리스 | - | 공제 | 10% | Y | 12% | 활성 | |
| 하나캐피탈 | 하나 | 박담당 | 렌트, 할부 | 대행 | 미공제 | - | Y | 10% | 활성 | |
| BNK캐피탈 | BNK, 부산 | 최담당 | 리스 | - | 공제 | 10% | N | - | 비활성 |
S12매체관리
ci_ad_media + ci_ad_sales — 매체 마스터/DB 자동등록 필드/광고수신동의/렌트리스 상태값 ★ S10 광고매체ROI 분석/그룹통계 ★ S5 DB배분매체→유입DB→배정 연동
매체 마스터
DB 자동등록 필드
상태값 분류
ci_ad_media 테이블 — 매체 마스터 필드
| 필드 | 설명 | 값 예시 | 비고 |
|---|---|---|---|
| media_name | 매체명 (필수) | 차봇, 카카오모빌리티 | ci_ad_sales.domain_name과 조인키 |
| ad_domain | 광고매체 | 네이버, 카카오, 구글 | - |
| ad_brand | 브랜드 | GNA, KB | - |
| ad_area | 광고영역 | 서울, 경기, 부산 | - |
| ad_type | 광고타입 | CPC, CPM, CPA | 과금 방식 |
| contact_type | 연락방식 | 웹전환, 잠재양식, 전화, 채팅 | 유입 경로 |
| ad_material | 광고소재 | 키워드, 이미지_가격형, 동영상_홍보형 | - |
| ad_pay | 결제방법 | 자동결제(카드), 충전(계좌입금), 구매 | - |
| revenue_share | 수익분배 여부 | 0 / 1 | - |
| revenue_share_percent | 수익분배율 | 10%, 12%, 15% | 캐피탈 정산 연동 |
| ad_use_yn | 광고 사용여부 | Y / N | - |
ci_ad_sales — DB 자동등록 시 가져오는 필드
| 필드 | 설명 | 값 예시 |
|---|---|---|
| date | 날짜 | 2026-03-17 |
| ad_inflow_cnt_total | 총 유입 건수 | 125 |
| ad_inflow_cnt_you | 유입 유형A 건수 | 42 |
| ad_inflow_cnt_dan | 유입 유형B 건수 | 38 |
| ad_inflow_cnt_bu | 유입 유형C 건수 | 25 |
| ad_inflow_cnt_bul | 유입 유형D 건수 | 15 |
| ad_inflow_cnt_new | 신규 유입 건수 | 5 |
| domain_name | 매체명 | 차봇 |
| ad_cost | 광고 결제액 | ₩500,000 |
| ad_price_promo | 프로모션 | ₩50,000 |
| ad_price_agency | 대리점 | ₩30,000 |
| ad_price_fee | 수수료 | ₩20,000 |
g5_dbmaster 상태값 — DB 분류 기준
| 분류 | 필드 | 값 | 설명 |
|---|---|---|---|
| 광고수신동의 (db_agree) | |||
| 동의 | db_agree | '예스', 'Y', '예', '1' | 동의함 → 배정 가능 |
| 미동의 | db_agree | '없음', '', '0', NULL | 미동의 → 170일 보유 후 자동 폐기 대상 |
| 렌트/리스 (db_car_type / db_car_type2) | |||
| 렌트 | db_car_type2 | '렌트' | 장기렌트 상품 |
| 리스 | db_car_type2 | '리스' | 금융리스 상품 |
| 할부 | db_car_type | '신차' | 할부(신차) 상품 |
| DB 상태 (db_car_state) | |||
| 신규 | db_car_state | '신규' | 미접촉 신규 DB |
| 부재 | db_car_state | '부재' | 전화 부재 |
| 상담 | db_car_state | '상담' | 상담중 |
| 회수 | db_car_state | '회수' | 회수 처리됨 |
| 중복 | db_car_state | '중복' | 중복 DB |
| 국산/수입 (db_domestic) | |||
| 국산 | db_domestic | '국산' | - |
| 수입 | db_domestic | '수입' | - |
S13양도관리
web/popCustomerTransfer.php — 고객 DB 담당자 양도 ★ S6 회수/재배정회수와 양도는 별도 워크플로우 ★ S5 DB배분양도 후 새 담당자 배정
양도 요청→
관리회사/본부/팀/사원 선택→
양도 실행→
g5_dbmaster 업데이트
양도 DB 필드 (g5_dbmaster)
| 필드 | 설명 | 값 예시 |
|---|---|---|
| db_transfer_date | 양도일자 | 2026-03-17 14:30:00 |
| db_transfer_id | 양도 실행자 | admin, 김태용 |
| db_agent | 새 담당자 ID | ldh2026 |
| db_agent_name | 새 담당자명 | 이동현 |
| db_agent_team | 새 담당팀 | 1팀 |
| db_head | 새 본부명 | 서울본부 |
양도 대상 목록 (더미)
| 번호 | 고객명 | 차종 | 현재 담당자 | 현재 팀 | 양도 대상 | 처리 | |
|---|---|---|---|---|---|---|---|
| 734200 | 김** | 현대 투싼 | 김수민 | 경기/2팀 | |||
| 733890 | 박** | 기아 K5 | 박지훈 | 서울/3팀 |
⚠ 양도 권한: 관리자(김태용)만 실행 가능 | 백엔드 핸들러(db_transfer_ok.php) 미구현 상태
S14일정관리
캘린더 + 목록 뷰 — 교육/회의/마감 등 전체 일정 ★ S9 교육관리교육일정 자동 연동
캘린더
목록
설정
일
월
화
수
목
금
토
23
24
25
26
27
28
1
삼일절
2
3
주간회의
4
5
신입 교육
6
7
8
9
10
주간회의
11
12
13
14
15
모집인 교육
16
17
주간회의
2월 정산마감
18
19
20
개인정보교육
영업일 종료
21
22
23
24
주간회의
25
26
27
28
29
30
31
3월 마감
1
2
3
4
5
| 날짜 | 유형 | 제목 | 시간 | 장소 | 담당자 | 관리 |
|---|---|---|---|---|---|---|
| 03-17 | 회의 | 주간회의 | 10:00~11:00 | 본사 회의실 | 전체 | |
| 03-17 | 마감 | 2월 정산마감 | 18:00 | - | 정산팀 | - |
| 03-20 | 교육 | 2026년 1분기 개인정보보호교육 | 14:00~16:00 | 본사 교육실 | 김교육 | |
| 03-20 | 마감 | 영업일 종료 (3월) | - | - | - | - |
| 03-24 | 회의 | 주간회의 | 10:00~11:00 | 본사 회의실 | 전체 | |
| 03-31 | 마감 | 3월 마감 | - | - | - | - |
일정 카테고리/반복/알림 설정
S15통계
매출/배정/계약 종합 통계 대시보드 ★ S2 정산요약정산 데이터 기반 통계
매출 통계
배정 통계
사원별 실적
매체별 효율
₩3.2억
인도 매출
₩1.8억
계약 매출
89건
인도 건수
54건
계약 건수
월별 매출 추이 (최근 6개월)
본부별 매출 비교
| 본부 | 인도건 | 인도매출 | 계약건 | 계약매출 | 취소 | 전환율 |
|---|---|---|---|---|---|---|
| 서울본부 | 42 | ₩1.52억 | 26 | ₩8,400만 | 3 | 18.5% |
| 경기본부 | 28 | ₩1.02억 | 18 | ₩5,800만 | 2 | 16.2% |
| 부산본부 | 19 | ₩7,200만 | 10 | ₩3,600만 | 2 | 14.8% |
| 합계 | 89 | ₩3.26억 | 54 | ₩1.78억 | 7 | 16.8% |
2,847
총 유입 DB
2,103
배정 완료
342
회수
189
중복
213
미배정
매체별 유입 현황
팀별 배정/회수 현황
| 팀 | 배정 | 회수 | 회수율 | 계약전환 | 전환율 |
|---|---|---|---|---|---|
| 서울/1팀 | 380 | 42 | 11.1% | 68 | 17.9% |
| 서울/3팀 | 320 | 38 | 11.9% | 52 | 16.3% |
| 경기/2팀 | 290 | 55 | 19.0% | 41 | 14.1% |
| 부산/1팀 | 250 | 30 | 12.0% | 35 | 14.0% |
| 순위 | 사원 | 팀 | 인도건 | 인도매출 | 계약건 | 전환율 | 활동스코어 | DB보유 |
|---|---|---|---|---|---|---|---|---|
| 1 | 이동현 | 서울/1팀 | 8 | ₩28.5M | 12 | 22.1% | 92점 | 42건 |
| 2 | 박지훈 | 서울/3팀 | 7 | ₩24.8M | 10 | 20.5% | 88점 | 55건 |
| 3 | 김수민 | 경기/2팀 | 6 | ₩21.2M | 9 | 18.5% | 81점 | 38건 |
| 4 | 최서윤 | 부산/1팀 | 5 | ₩18.9M | 8 | 15.3% | 75점 | 50건 |
| 5 | 장민호 | 서울/1팀 | 5 | ₩16.5M | 7 | 14.8% | 70점 | 35건 |
| 매체 | 유입DB | 광고비 | 계약건 | 인도건 | 인도매출 | CPA | 전환율 | ROI |
|---|---|---|---|---|---|---|---|---|
| 차봇 | 1,205 | ₩12.5M | 89 | 67 | ₩2.8억 | ₩186K | 5.56% | 22.4x |
| 카카오 | 680 | ₩8.2M | 52 | 41 | ₩1.6억 | ₩200K | 6.03% | 19.5x |
| 네이버 | 512 | ₩9.8M | 48 | 35 | ₩1.5억 | ₩280K | 6.84% | 15.3x |
| KB다이렉트 | 245 | ₩5.1M | 22 | 15 | ₩6,200만 | ₩340K | 6.12% | 12.2x |
S16로그관리
ActivityLogService — 접속/활동/보안 로그 통합 관리 ★ S7 회원관리회원별 활동 추적
접속 로그
활동 로그
보안 로그
| 시간 | 사용자 | ID | 액션 | IP주소 | 기기 | 결과 |
|---|---|---|---|---|---|---|
| 09:15:23 | 이동현 | ldh2026 | 로그인 | 211.234.56.78 | Chrome/Windows | 성공 |
| 08:50:12 | 김수민 | ksm2026 | 로그인 | 125.178.90.12 | Chrome/Windows | 성공 |
| 08:42:05 | 한소영 | hsy2026 | 로그인 | 59.12.34.56 | Safari/Mac | 실패 (비밀번호 오류 3/5) |
| 08:30:00 | 시스템 | - | 세션만료 | - | - | 장민호(jmh2026) 세션 정리 |
총 38건
12
| 시간 | 사용자 | 모듈 | 액션 | 대상 | 상세 | IP |
|---|---|---|---|---|---|---|
| 09:20 | 이동현 | 정산 | 수정 | C2026-0342 | 지출금액 450,000→430,000 | 211.234.56.78 |
| 09:18 | admin | 회원 | 승인 | jmh2026 | 계정 승인 처리 | 10.0.0.1 |
| 09:05 | 김수민 | DB배분 | 배정 | #734521 | 김** → 김수민 배정 | 125.178.90.12 |
12
로그인 실패
2
계정 잠금
1
비인가 IP
133
총 보안 이벤트
| 시간 | 이벤트 | 사용자 | IP | 상세 |
|---|---|---|---|---|
| 08:42 | 비밀번호 오류 | hsy2026 | 59.12.34.56 | 3회 연속 실패 |
| 08:10 | 비인가 IP | unknown | 185.220.101.5 | 화이트리스트 미등록 IP 접근 시도 |
S17매출관리
PersonalSalesModel — 매출 상세 분석 + 목표 관리 ★ S2 정산요약매출 집계 현황 ★ S1 계약관리계약→인도 진행 추적
매출 현황
목표 관리
매출 업로드
₩3.2억
인도매출 (89건)
₩1.8억
계약매출 (54건)
₩4.5억
목표 매출
71%
목표 달성률
7건
취소
| 계약번호 | 날짜 | 상태 | 고객 | 담당자 | 캐피탈 | 차종 | 수수료 | 지출 | 정산액 |
|---|---|---|---|---|---|---|---|---|---|
| C2026-0342 | 03-15 | 계약승인대기 | 김** | 이동현 | 현대캐피탈 | 투싼 NX4 | ₩850,000 | ₩120,000 | ₩730,000 |
| C2026-0338 | 03-13 | 인도완료 | 최** | 박지훈 | 하나캐피탈 | BMW X5 | ₩1,450,000 | ₩210,000 | ₩1,240,000 |
| C2026-0331 | 03-10 | 인도완료 | 정** | 최서윤 | 현대캐피탈 | GV70 | ₩1,120,000 | ₩180,000 | ₩940,000 |
2026년 3월 매출 목표 (ci_sales_targets)
| 본부 | 목표 | 실적 | 달성률 | 진행 |
|---|---|---|---|---|
| 서울본부 | ₩2.0억 | ₩1.52억 | 76% | |
| 경기본부 | ₩1.3억 | ₩1.02억 | 78% | |
| 부산본부 | ₩1.2억 | ₩7,200만 | 60% |
매출 데이터 일괄 업로드 (Excel/CSV → ci_personal_sales)
S18보고서관리
Security Reports + Settlement Reports — 보안/정산 보고서 생성 ★ S16 로그관리보안 이벤트 기반 보고서
보안 보고서
정산 보고서
자동생성 (Cron)
| 날짜 | 유형 | 제목 | 생성일 | 관리 |
|---|---|---|---|---|
| 03-17 | 일일 | 2026-03-17 보안 일일보고서 | 03-17 00:05 | |
| 03-10~16 | 주간 | 2026년 11주차 보안 주간보고서 | 03-17 00:10 | |
| 02월 | 월간 | 2026년 2월 보안 월간보고서 | 03-01 00:15 |
정산 보고서 — 준비중 (settlement/report.php placeholder 존재)
자동생성 스케줄 (레거시 Cron)
| 스케줄 | 파일 | 설명 | 상태 |
|---|---|---|---|
| 매일 00:05 | cron/auto_generate_daily_report.php | 일일 보안 보고서 | 활성 |
| 매주 월 00:10 | cron/auto_generate_weekly_report.php | 주간 보안 보고서 | 활성 |
| 매월 1일 00:15 | cron/auto_generate_monthly_report.php | 월간 보안 보고서 | 활성 |
S19녹취관리
/home/call/ — 통화녹취 + AI 전사/요약 (Flutter앱 → Studio API → Gemini) ★ S7 회원관리직원 SMS 인증 후 기기등록 ★ S20 앱녹취앱 = Flutter Android
녹취 목록
분석/통계
DB 스키마
API 엔드포인트
| 업로드 | 직원 | 전화번호 | 유형 | 통화시간 | 통화일시 | 전사 | 요약 | 파일 | 관리 |
|---|---|---|---|---|---|---|---|---|---|
| 09:25 | 이동현 | 010-****-5678 | 발신 | 12분 34초 | 03-17 09:10 | 완료 | 완료 | 1.2MB | |
| 09:18 | 김수민 | 010-****-1234 | 수신 | 5분 12초 | 03-17 09:05 | 대기 | - | 0.6MB | |
| 08:55 | 박지훈 | 010-****-9012 | 부재 | 0초 | 03-17 08:50 | - | - | - | - |
1,284
총 녹취
892
전사 완료
458
요약 완료
12.4GB
저장 용량
8분 32초
평균 통화시간
일별 통화량 차트 / 직원별 통화 분석 / 시간대별 분포
call DB — 핵심 테이블
| 테이블 | 설명 | 주요 필드 |
|---|---|---|
| call_recordings | 녹취 메타데이터 | file_name, phone_number, call_type, duration, employee_id, transcription, summary |
| call_verified_devices | 인증된 기기 | device_id, employee_id, phone, verified_at, is_active |
| call_auth_codes | SMS 인증 코드 | employee_id, code(6자리), expires_at(5분), verified |
| device_commands | 서버→기기 명령 | device_id, command_type, status, result |
| device_locations | GPS 위치 기록 | latitude, longitude, battery_level, timestamp |
| call_settings | 설정 (API키 등) | setting_key, setting_value |
Studio API (/studio/api/v1/call-recording/)
| 엔드포인트 | 메서드 | 설명 |
|---|---|---|
| /upload.php | POST | 녹취 파일 업로드 (m4a, 최대 500MB) |
| /transcribe.php | POST | Google Gemini 전사 요청 |
| /summarize.php | POST | AI 요약 생성 |
| /data_recordings.php | GET | 녹취 목록 조회 (페이징) |
| /data_stats.php | GET | 통계 (일별, 시간별, 직원별) |
| /download.php | GET | 녹취 파일 다운로드 |
S20앱 (Android)
Flutter Android — 통화녹취앱 (녹취 캡처 → 업로드 → 통계) ★ S19 녹취관리녹취 데이터 서버 연동
화면 구성
인증 플로우
기능 목록
현재 상태
Flutter 앱 화면 구성 (/home/call/app/lib/screens/)
| 화면 | 파일 | 설명 |
|---|---|---|
| 인증 화면 | verification_screen.dart | 직원ID + 전화번호 → SMS 인증코드 입력 |
| 홈 화면 | home_screen.dart | 녹취 상태, 업로드 현황, 서버 연결 상태 |
| 녹취 목록 | recording_list_screen.dart | 기기 내 녹취 파일 + 업로드 상태 |
| 서버 녹취 | server_recordings_screen.dart | 서버에 업로드된 녹취 탐색 |
| 내 통계 | my_stats_screen.dart | 개인별 통화량, 통화시간 통계 |
| 설정 | settings_screen.dart | API 서버 주소, 기기 정보 |
1. 직원ID+전화 입력→
2. /api/auth.php?action=verify→
3. SMS 6자리 코드→
4. /api/auth.php?action=confirm→
5. 기기 등록 완료
인증 프로세스 상세
| 단계 | 처리 | DB |
|---|---|---|
| verify | gnamaster.ci_members에서 직원 확인 → 6자리 코드 생성 → SMS 발송 | call_auth_codes INSERT |
| confirm | 코드 검증 (5분 만료) → 기기 등록 | call_verified_devices INSERT |
| upload | 인증된 device_id로 녹취 업로드 | call_recordings INSERT |
앱 기능 목록
| 기능 | 설명 | 상태 |
|---|---|---|
| 녹취 캡처 | Android MediaRecorder로 통화 녹취 자동 캡처 | 구현완료 |
| 자동 업로드 | 녹취 완료 시 서버 자동 업로드 (재시도 큐) | 구현완료 |
| 연락처 연동 | 기기 연락처/통화기록 읽기 | 구현완료 |
| GPS 추적 | 위치 로깅 (선택적) | 구현완료 |
| 서버 명령 | 서버→기기 원격 명령 (일시중지 등) | 구현완료 |
| iOS 지원 | iOS 앱 | 미지원 |
| CRM 연동 | GNA-BIZ CRM과 직접 연동 | 미구현 |
Android
플랫폼 (Flutter)
6개
화면 구성
분리
서버 위치 (/home/call/)
참고: GNA-BIZ CRM (PC 전용)과 통화녹취앱(Android)은 별도 시스템.
CRM은 모바일 접근 차단 (보안 정책). 앱은 녹취 전용으로 /home/call/ 에서 독립 운영.
S23구현완료 기능
현재 운영 중이거나 개발 완료된 모듈/기능 목록
정산 시스템 CI4 완료
급여 시스템 CI4 완료
| 기능 | 설명 |
|---|---|
| 급여 현황 | 사원별 급여 현황 조회·필터 |
| 급여 명세서 | 개인별 급여 명세서 생성·출력 |
| 수당 4종 | 직책수당·근속수당·특별수당·인센티브 설정 |
| 신입 지원금 | 신입 사원 지원금 지급 관리 |
| DA 설정 | DA(성과급) 기준·계산 설정 |
| 급여 설정 | 기본급·세율·공제 항목 설정 |
팀 매핑 시스템 CI4 완료
| 기능 | 설명 |
|---|---|
| 인턴 매핑 | 인턴 사원 ↔ 팀 배정 관리 |
| 매니저 매핑 | 매니저 ↔ 팀 배정 관리 |
| A팀 매핑 | A팀 사원 매핑 관리 |
| 본부·팀 구성 | 본부·팀 CRUD 및 구성원 관리 |
계약 관리 CI4 완료
코드 모듈화 완료
| 모듈 | 설명 |
|---|---|
| SettlementQueryService | 정산 쿼리 서비스 분리 (컨트롤러 ↔ 모델 중간 계층) |
| SalaryCalculation | 급여 계산 로직 서비스 분리 |
| PersonalSalesModel | 개인영업 매출 모델 통합 |
| SalesStatus 정규화 | 영업 상태코드 통일 (상수 기반) |
컴포넌트화 완료
| 컴포넌트 | 설명 |
|---|---|
| 권한 매트릭스 | 직무·메뉴·기능별 권한 매트릭스 UI 컴포넌트 |
| 은행 목록 | 은행 선택 공통 드롭다운 컴포넌트 |
| 탭 서브메뉴 | 정산 탭 메뉴 공통 컴포넌트 |
차량 선택 API 완료
| 기능 | 설명 |
|---|---|
| API + DB 연동 | api.gnacorp.co.kr API + gnaharmony DB 직접 조회 하이브리드 |
| 제조사→모델→등급→트림 | 단계별 선택 (nTreeCarMaker/Name/Model/Grade/Trim) |
| 차량 가격 조회 | nTreeCarPrice에서 선택 트림 가격 조회 |
| 옵션 조회 | nTreeCarOption에서 옵션 목록 표시 |
인프라 · 보안 완료
| 기능 | 설명 |
|---|---|
| DB 인덱스 최적화 | 주요 테이블 복합 인덱스 추가 |
| CSRF 보호 | CI4 CSRF 토큰 적용 (전체 폼 + AJAX) |
| 세션 타임아웃 | 서버+클라이언트 이중 세션 만료 관리 (기본 60분) |
| WebSocket | 실시간 알림 WebSocket 기반 구현 |
| 보안 감사 로그 | 로그인·권한변경·데이터접근 감사 로그 |
| Rate Limiting | SMS·API 발송 60초 제한 |
| ufw 방화벽 | ufw 방화벽 + IP 화이트리스트 |
| 파일 업로드 검증 | MIME·확장자·크기 3중 검증 |
S24일부구현 / 진행중
개발 진행 중이거나 일부 기능만 완료된 모듈
정산 시스템 고도화 (CI4 전환) 진행중
| 기능 | 현재 상태 | 남은 작업 |
|---|---|---|
| DB마스터 연동 | 일부 | 레거시 g5_dbmaster → CI4 전환 진행중 |
| 통계 모듈 | 일부 | 기본 집계 완료, 시각화·다운로드 미완 |
| DB 배분 시스템 | 일부 | 배분 로직 CI4 전환 진행중 |
| DB 중복 관리 | 일부 | 중복 검출 로직 CI4 전환 필요 |
| 스케줄 관리 | 일부 | CI4 전환 필요 |
PII 암호화 Phase 1 롤백
| 대상 | 현재 상태 | 비고 |
|---|---|---|
| ci_members (mb_name, mb_hp) | 롤백 | Phase 1 완료 후 롤백 → Model 자동화 방식으로 재설계 예정 |
| ci_personal_sales | 대기 | 재구현 후 적용 예정 |
| ci_expenses / ci_remittances | 대기 | 재구현 후 적용 예정 |
| ci_dbmaster (734K건) | Phase 2 | LIKE 검색용 해시 인덱스 설계 필요 |
프론트엔드 전환 Phase 0 진행중
| Phase | 내용 | 상태 |
|---|---|---|
| Phase 0 | 컴포넌트 라이브러리 완성 (gna-tokens.css) | 진행중 |
| Phase 1 | gna-tokens.css 프로덕션 배포 | 대기 |
| Phase 2 | PHP 뷰 파셜 모듈화 | 대기 |
| Phase 3 | 인라인 JS 외부 파일 분리 | 대기 |
| Phase 4 | 페이지별 순차 전환 | 대기 |
| Phase 5 | CSP nonce + unsafe-inline 제거 | 대기 |
컴포넌트화 로드맵 Phase 5 대기
| Phase | 내용 | 상태 |
|---|---|---|
| Phase 1-4 | 기본 컴포넌트 (뱃지, 입력, 버튼, 테이블 등) | 완료 |
| Phase 5 | 어셈블리 컴포넌트 (모달, 테이블 섹션 조합) | 대기 |
광고 관리 목업 완료
| 항목 | 현재 상태 | 비고 |
|---|---|---|
| 목업 v3 | 완료 | UI 디자인 확정 |
| 네이버 API | 조사 완료 | 연동 가능 확인 |
| 카카오 API | 조사 완료 | 연동 가능 확인 |
| 구글 Ads API | 미조사 | API 조사 필요 |
| 메타 API | 미조사 | API 조사 필요 |
| 백엔드 구현 | 미착수 | API 조사 후 구현 |
V2 페이지 전환 구조개선 Phase A 진행
| Phase | 내용 | 상태 |
|---|---|---|
| Phase A | 즉시 안전장치 (PHP-FPM, include 전환, LIMIT) | 진행중 |
| Phase B | 구조 분리 (컨트롤러 분할, AJAX 분리, saveData=false) | 대기 |
| Phase C | 장기 최적화 (서비스 강화, Slow Query, PHP 통일) | 대기 |
S25구현예정 (로드맵)
향후 개발 예정인 신규 모듈 로드맵
신규 모듈 로드맵 (13개)
| 모듈 | 설명 | 우선순위 |
|---|---|---|
| 문서 관리 | 사내 문서 등록·검색·공유·버전관리 시스템 | 높음 |
| 교육 관리 (CI4 전환) | 레거시 교육시스템 CI4 전환 — 교육일정·이수관리·콘텐츠 관리 | 높음 |
| 결재 시스템 | 전자결재 (기안·승인·합의·반려) 워크플로우 엔진 | 높음 |
| 인사 관리 | 인사정보·발령·근태·휴가·퇴직 통합 관리 | 높음 |
| 자산 관리 | IT 장비·차량·비품 등 회사 자산 등록·추적·폐기 | 중간 |
| 모집인 관리 | 모집인 등록·자격·실적·수수료 관리 | 중간 |
| 거래처 관리 | 캐피탈·매체사·협력사 등 거래처 정보 통합 관리 | 중간 |
| 워크 매니저 | 업무 할당·진행상황·완료 추적 (칸반/리스트 뷰) | 중간 |
| 통합 운영 대시보드 | 영업·정산·인사·교육 핵심 지표 통합 대시보드 | 중간 |
| 인트라 채팅 | 사내 메신저 (1:1 / 그룹 / 파일공유) | 낮음 |
| 외부 API 연동 | 전자계약 (모두싸인 등)·금융API·관공서 연동 | 낮음 |
| IT 운영 관리 | 서버모니터링·배포·장애대응 관리 도구 | 낮음 |
| 모바일 앱 | CRM 모바일 접근 (현재 PC전용 정책 → 향후 검토) | 검토 |
교육 관리 상세 (CI4 전환 대상)
| 기능 | 현재 | 전환 후 |
|---|---|---|
| 교육 일정 | 레거시 (web/help/) | CI4 캘린더 + CRUD |
| 이수 관리 | 수동 관리 | 자동 이수 추적·인증 |
| 교육 콘텐츠 | 파일 기반 | LMS 스타일 콘텐츠 관리 |
| 시험/평가 | 없음 | 온라인 시험·자동 채점 |
결재 시스템 상세
| 기능 | 설명 |
|---|---|
| 결재선 설정 | 직급·직무별 결재 경로 설정 |
| 기안 작성 | 양식 기반 기안 작성 (지출품의·휴가·업무보고 등) |
| 승인/합의/반려 | 다단계 승인 워크플로우 |
| 대결/위임 | 부재 시 대결·위임 처리 |
| 알림 연동 | 결재 요청·완료 알림 (WebSocket/SMS) |
외부 API 연동 상세
| 연동 대상 | 용도 | 우선순위 |
|---|---|---|
| 전자 계약 | 모두싸인 등 전자계약 서비스 연동 | 중간 |
| 금융 API | 은행 계좌 확인·이체 연동 | 낮음 |
| 관공서 연동 | 국토교통부 차량등록·보험 조회 | 낮음 |