고객관리 상세 (환자별 큐 처리 + 문자/통화/차트 이력)¶
라우트:
/popup/customer-management/:patientUid(팝업 새 창, 전체 화면) 진입: - 고객관리 페이지 → 행 [상세보기] - 고객관리 리스트(/crm/tasks) → 행 [상세보기] 권한: 전 직원 (level 1~5)
한 줄 요약
환자 한 명의 해피콜 처리 큐 카드 + 문자/통화 이력 + 차트(Progress Notes) 전체 이력을 한 화면에서 처리. 2026-05-19 WI#100 통합으로 옛 통화 결과 모달은 폐기되고 이 팝업에서 직접 큐 처리합니다.
화면 구성¶
[고객관리 상세 — 김보혜 (44/여)] [X]
┌─────────────┬───────────────────────────────────────────────────────┐
│ │ ┌─ 큐 카드 (오늘 처리 대상 1건) ────────────────────┐ │
│ 환자 정보 │ │ 해피콜 처리│진행사항│상담내용/증상경과│남은 해피콜 │ │
│ 👍 아바타 │ │ (320 고정)│ 40% │ 20% │ 20% │ 20% │ │
│ ────── │ └──────────────────────────────────────────────────┘ │
│ 이름 │ ┌─ [문자 (8)] [통화 (3)] [차트] 탭 ───────────────┐ │
│ 차트번호 │ │ │ │
│ 생년월일 │ │ 탭 컨텐츠 │ │
│ 성별 │ │ │ │
│ 전화 │ │ │ │
│ patient_uid │ │ │ │
└─────────────┴────────────────────────────────────────────────────────┘
좌측 사이드바: 환자 정보 + 아바타 (👍 ThumbsUp 아이콘, 브랜드 색상) 우측 상단: 오늘의 큐 카드 4영역 (큐 진입 시에만 노출) 우측 하단: 문자 / 통화 / 차트 탭
큐 카드 (4영역)¶
큐 진입 (예: 해피콜 [상세보기] 클릭)으로 들어왔을 때 상단에 펼쳐지는 처리 카드입니다.
컬럼 구성 (Phase 5/5.1/6)¶
| 컬럼 | 비율 | 내용 |
|---|---|---|
| 해피콜 처리 | 320px 고정 | 통화 결과 입력 폼: 결과(성공/부재중/거절/재시도) + 메모 + [저장] |
| 진행사항 | 40% | 부재중/재시도 누적 메모 (error_message 누적 — 시도별로 줄바꿈) |
| 상담내용/증상경과 | 20% | 환자 차트(Progress Notes) 인라인 표시 — PN 선택 시 연동 |
| 남은 해피콜/문자 대기 | 20% | 같은 환자의 다른 큐 — 클릭 시 같은 창에서 환자 전환 (Phase 5.3) |
결과별 분기 (큐 카드 [저장] 클릭)¶
| 결과 | 처리 | 큐 카드 |
|---|---|---|
| 성공 / 거절 | action='completed' + patient_calls 자동 INSERT |
카드 닫힘 + 다음 큐로 이동 (없으면 일반 모드) |
| 부재중 / 재시도 | action='queued' 유지, error_message 메모 누적 |
카드 그대로 (재시도 버튼 클릭 가능) |
진행사항 (부재중 누적)¶
미시도 '대기' 행은 숨김 (Phase 5.2) — 실제 메모 누적된 시도만 표시.
차트 탭 (Phase 3/7)¶
표시 항목¶
환자의 전체 Progress Notes 이력 (가장 최근 순):
| 컬럼 | 의미 |
|---|---|
| 진료일 | note_date |
| 진료의 / 실장 | |
| 청구액 | total_amount |
| 오더 항목 | 한약/시술명 인라인 (펼치기 없음) — Phase 7 평탄화 |
| 메모 | emr_memo 등 |
평탄화 UX (Phase 7)¶
이전에는 "▶ 펼치기" 클릭으로 오더 항목을 보여줬지만, 이제는 한 행에 모든 오더가 인라인으로 표시됩니다. 빠른 스캔 가능.
차트 ↔ 큐 카드 연동 (Phase 6)¶
차트 행 클릭 → 우측 상단의 큐 카드 「상담내용/증상경과」 컬럼이 해당 PN의 내용으로 갱신. → 통화 중에 어떤 차트를 보고 안내하는지 명확.
문자 탭¶
필터¶
| 필터 | 값 |
|---|---|
| 기간 | 전체 / 최근 7일 / 30일 / 90일 |
| 유형 | 전체 / SMS / LMS / MMS / 카카오 (준비중) |
| 템플릿명 검색 | 포함 매치 (예: "오시는") |
표 컬럼¶
| 컬럼 | 설명 |
|---|---|
| 발송 시각 | sent_at (없으면 scheduled_at) |
| 템플릿 | 호버 시 발송설정 / 담당자 tooltip |
| 유형 | SMS/LMS/MMS / 카카오 row 는 "준비중" 노란 배경 |
| 수신인 | WI#19 메타 (환자/예약담당자 등) |
| 상태 | sent (초록) / failed (빨강) / pending (회색) |
| 내용 | 본문 100자 미리보기 |
| 출처 | 환자 (patient_uid 직접) / 리드 (리드 시절 발송) |
새 문자 보내기¶
[새 문자 보내기] 버튼 → SmsMessagePopup 모달 (현재 환자 자동 입력)
통화 탭¶
작성 폼¶
| 필드 | 설명 |
|---|---|
| 통화 일시 | datetime-local (기본 = 현재) |
| 통화 종류 | 해피콜 / 리콜 / 일반상담 / 환불상담 / 예약확인 / 기타 |
| 방향 | 아웃바운드 (병원→환자) / 인바운드 |
| 다음 액션 일자 | date (재통화 등) |
| 다음 액션 종류 | 자유 텍스트 |
| 메모 | 자유 텍스트 |
필터¶
| 필터 | 값 |
|---|---|
| 종류 | 전체 / CALL_TYPES 6종 |
| 방향 | 전체 / 아웃바운드 / 인바운드 |
자동 INSERT (큐 카드 완료 시)¶
큐 카드 [저장] → 결과 성공/거절 시 patient_calls 자동 INSERT (Phase 2).
- call_type = 큐의 채널 (대부분 '해피콜')
- direction = 'outbound'
- memo = 큐 카드에서 입력한 메모
도메인 분리 원칙¶
patient_calls= patients 기반 (이 팝업 대상)lead_calls= CS 인바운드 별도 — 완전 분리- 같은 사람이 lead → patient 전환이어도 양쪽 별도 보관
운영 가이드¶
팝업 크기 (Phase 1.1)¶
전체 화면(availWidth x availHeight, left=0, top=0) — 모니터 가용 영역 최대로 사용.
→ 큐 카드 + 차트 + 이력 한 화면에 모두 표시.
같은 환자의 다른 큐로 전환 (Phase 5.3)¶
「남은 해피콜/문자 대기」 컬럼에서 클릭 → 같은 창에서 환자/큐 전환 (새 창 안 띄움). URL만 ?queueId=... 로 갱신.
카카오 알림톡¶
- 현재 백엔드 미구현 (WI#19 진행 중)
- 발송 내역에 카카오 row 가 나타나면 노란 배경 + "준비중" 표시
자주 묻는 질문 / FAQ¶
Q. 옛날의 '통화 결과 모달'은 어디 갔어요?
WI#100 Phase 1 통합으로 폐기되었습니다. [상세보기] 버튼 클릭 시 이 팝업이 전체 화면으로 열리고, 큐 카드의 「해피콜 처리」 영역(좌측 320px)에서 직접 결과 입력합니다.
Q. 큐 카드의 [저장] 버튼이 안 보여요
「해피콜 처리」 컬럼에 결과(성공/부재중/거절/재시도)를 먼저 선택해야 [저장] 버튼이 활성화됩니다. 라벨은 「완료 처리」가 아닌 「저장」 입니다 (라벨 변경, Phase 4).
Q. 「남은 해피콜/문자 대기」 컬럼 클릭이 새 창을 안 띄워요
의도된 동작입니다 (Phase 5.3). 같은 환자/같은 팝업 컨텍스트에서 큐만 전환되도록 URL만 갱신합니다.
Q. 차트 탭에 펼치기 버튼이 안 보여요
Phase 7 평탄화로 모든 오더가 인라인 표시됩니다. 펼치기 없이 한 행에서 모두 확인.
Q. 상담내용/증상경과 컬럼이 빈 채로 있어요
환자의 Progress Note를 차트 탭에서 클릭해야 그 PN의 내용이 컬럼에 표시됩니다 (Phase 6 PN 선택 연동).
Q. 큐 카드 처리 후 메인 고객관리 페이지에 갱신이 안 돼요
팝업에서 [저장] → 메인 창에 postMessage({type:'cm-queue-completed', ...}) 전송 → 메인 창이 큐 갱신. 만약 안 되면 메인 새로고침.
Q. 카카오 알림톡이 "준비중"으로 뜨는데 언제 정식 도입되나요?
WI#19 (CRM 문자/카카오톡 템플릿) 작업이 천재호님 담당으로 진행 중입니다.
Q. 통화 기록 수정/삭제는 누가 할 수 있나요?
작성한 본인 + admin. 삭제는 audit_logs에 기록되어 사후 추적 가능.
Q. 자동 INSERT된 patient_calls를 또 수동으로 입력했어요
큐 처리로 자동 INSERT된 통화 기록과 수동 입력은 같은 표에 표시됩니다. created_by 와 memo 패턴으로 구분 가능. 중복은 수동 [🗑] 삭제.
관련 페이지¶
- 고객관리 (메인) — 진입 페이지 + 룰/템플릿
- 고객관리 리스트 — 발송/처리 이력 통합 검색
- 통화내역 — 전사 통화 이력
- WI#19 (천재호 담당) — 카카오 알림톡 정식 도입
- D-N/D+N 자동 룰 (별도 WI 예정) —
next_action_date연계