콘텐츠로 이동

고객관리 상세 (환자별 큐 처리 + 문자/통화/차트 이력)

라우트: /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 메모 누적 카드 그대로 (재시도 버튼 클릭 가능)

진행사항 (부재중 누적)

[15:30] 두 번 콜 부재 — 내일 오후 재시도
[14:00] (첫 시도, 부재중)

미시도 '대기' 행은 숨김 (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_bymemo 패턴으로 구분 가능. 중복은 수동 [🗑] 삭제.


관련 페이지