HBMD000_경영 대시보드 (앱 개요)
(Hereby) 경영 대시보드 > 앱 개요
| 앱 | 경영 대시보드 (HBMD) |
| 대상 사용자 | 조건1 [경영 대시보드 조회 권한] |
| 프로토타입 | TBU |
| 관련 정책 | [[POL_급여정본경계]] |
| Status | review |
| Owner | 카나 (PM) |
개요
- 경영 대시보드(/management-dashboard)는 병원 경영진이 청구액 · 인건비 · 차액 · 인센티브 · 병동 인력 상태를 한 화면에서 보는 경영 운영현황 앱이다.
- 라이브 앱명 "경영 대시보드", 단일 메뉴 "운영현황" 아래 여러 섹션(연간 흐름 / 월간 비교 / 월별 현황 selector / 선택 월 상세 / 팀별 인건비 / 인센티브 / 병동 인력 / 청구 금액 내역)으로 구성된다.
- 강하게 연결되는 실원천은 HR 급여(팀별 인건비), Team Manager 인센티브, Nurse Scheduler/병동 인력, 수동 청구 금액이다. Admin은 팀·병동 master를 제공한다. General Affairs(HBGA)·Inventory(HBIV)의 재고비용·컴플라이언스 리스크 KPI는 아직 live에 붙어 있지 않아 Donue 확장 후보로 둔다.
- margin(차액) 정의 3종 분리: (a) 월간 비교 카드 차액 = momMetrics 데모셋(front 하드코딩, live 원천 아님), (b) 기본 월별 차액 = ClaimAmount − grossPay, (c) 선택월·상세·AI verdict 차액 = ClaimAmount − grossPay − incentiveTotalAmount(인센티브 포함). Donue 정본 마진 산식은 실원천 기준으로 확정 필요.
- 라이브 숫자는 선택 월과 집계 scope에 따라 바뀌므로, 본 문서의 모든 금액/인원 수치는 **예시값(월 선택 종속)**이며 구조 검증용으로만 취급한다.
문서 히스토리
| 날짜 | 작성자 | 팀 | 변경 내용 |
|---|---|---|---|
| 2026-07-06 | 카나 | PM | 최초 작성 |
| 2026-07-10 | 카나 | PM | 라이브 기능 검토 반영 |
| 2026-07-21 | 카나 | PM | GC700 깊이 재작성 + 확정 스타일 |
Data I/O
Server → Client
| 변수 | 엔티티.컬럼 | 값 없을 때 | 비고 |
|---|---|---|---|
| $ | 경영 대시보드 조회 권한 세션 (병원장·사무국장·경영진·운영 리드·SUPER_ADMIN, 추정) | 접근 거부 | 내부 key TBU |
| ${selectedYear} / $ | 조회 연/월 (예 "2026년" / "2026년 6월") | current year/month | 월 선택 종속 |
| $ | 청구/인건비/차액 월별 trend (MonthlyKpi[], 추정) | empty | HBMD200 연간 흐름 |
| $ | momMetrics 데모셋 (front 하드코딩, 확인) | 데모 카드 | live ClaimAmount와 원천 다름 |
| $ | hereby_revenue_entries/ClaimAmount (수동 입력) | "미지정" | HBMD260 |
| $ | payroll_records by Team (grossPay/totalDeductions/netPay) | empty | HBMD230 |
| $ | fixed_incentives 요약 (status/category/amount) | empty | HBMD240 |
| $ | 병동 인력 현황 (NursingStaffingSnapshot[], 추정) | empty | HBMD250 |
Client → Server
| 액션 | 전달 값 | tRPC procedure | 권한 토큰 |
|---|---|---|---|
| 청구 금액 추가 | yearMonth·amount | sdk.managementDashboard.claimAmount.create() (추정) | claim:create (추정) |
| 청구 금액 수정 | claimAmountId·amount | sdk.managementDashboard.claimAmount.update() (추정) | claim:update (추정) |
외부 통합 (cross-app)
| 원천 앱 | 데이터 | 동기/비동기 | 소비 섹션 |
|---|---|---|---|
| HR 급여 (강함) | payroll_records(grossPay/totalDeductions/netPay) by Team | 확정 급여 정본 집계 | 팀별 인건비 · 인건비 포함 차액 — [[HBHR240_병동 일별 환자수 시트]] |
| Team Manager (강함) | fixed_incentives(status/category/amount) | 승인·지급 상태 | 인센티브 현황 — [[HBTM230_인센티브 (치료 인센티브 등록)]] |
| Nurse Scheduler (강함) | 병동·환자 수·간호 인력 수 | 스냅샷 | 병동별 인력 현황·준수율 — [[HBNS230_환자수 관리]] |
| Admin | 팀·병동·직원 master | master 참조 | 팀·병동 집계 기준 |
| General Affairs(HBGA)·Inventory(HBIV) | 재고비용·만료·과태료·컴플라이언스 리스크 KPI | 미연결 | 확장 후보 |
화면 플로우
앱 개요 사양표
| 번호 | 항목/기능명 | 타입 | 사양 및 기능 설명 | 연관/영향 범위 | 비고 |
|---|---|---|---|---|---|
| 00 | 화면 진입 조건 | - | • 조건1 [경영 대시보드 조회 권한] 인증 시 "운영현황" 노출• 진입 시: 인증 검사 - CASE01 [권한 인증]: "운영현황" 노출 - CASE02 [무권한]: 접근 거부 (내부 key TBU) | 인증 세션 | |
| 01 | 초기 상태 | - | • 진입 시 "운영현황" 화면(/management-dashboard)으로 이동 • selectedMonth default = current month (예 7/1 재진입 시 7월) | 월 선택 종속 | |
| 10 | 정체성 | - | • 청구액·인건비·차액·인센티브·병동인력을 한 화면에 통합한 경영 운영현황 앱 • 결정론 metric/calculator 결과를 조회하는 read-heavy 대시보드 + 청구 금액 수동 입력만 mutation | management scope | |
| 20 | 원천 앱 연결 | - | • HR 급여·Team Manager 인센티브·Nurse Scheduler 병동인력·Admin master(강함), 수동 청구 금액(ClaimAmount) • GA·Inventory KPI 미연결 | HBHR·HBTM·HBNS·HBAD | GA/IV = 확장 후보 |
| 30 | margin 정의 3종 | - | • (a) 월간 비교 카드 = momMetrics 데모셋 • (b) 기본 월별 = ClaimAmount − grossPay • (c) 선택월·상세·AI = ClaimAmount − grossPay − incentiveTotalAmount • 정본 산식 확정 필요 | momMetrics · ClaimAmount · Payroll · Incentive | scope 불일치 = 정본화 대상 |
| 40 | 청구 금액 원천 | - | • front 기준 localStorage.hereby_revenue_entries 수동 입력/수정 • 외부 청구/보험 시스템 연동은 live 미확인 | ClaimAmount | 외부 연동 없음 |
| 50 | 화면 목록 (I.A.) | - | • [[HBMD100]] Shell·사이드바 / [[HBMD200]] 연간 흐름 / [[HBMD210]] 월간 비교 / [[HBMD220]] 월별 현황·월 상세 / [[HBMD230]] 팀별 인건비 / [[HBMD240]] 인센티브 현황 / [[HBMD250]] 병동별 인력 현황 / [[HBMD260]] 청구 금액 내역 | 앱 하위 화면 | |
| 60 | 안전 경계 | - | • 숫자 산출은 deterministic query/calculator가 수행. AI는 설명·비교·예측·요약만 • 청구입력/예산확정/수동 입력값 변경은 사람 확정 + audit | [[POL_급여정본경계]] |
AI 접점 요약
경영 대시보드 AI는 숫자를 생성하는 엔진이 아니라, 결정론 metric/calculator 결과를 설명·비교·이상탐지·what-if로 해석하는 경영 보조자다. 아래 skill은 모두 실원천 전제(ClaimAmount/hereby_revenue_entries + Payroll + Incentive)이며, momMetrics 데모 카드가 아니다. 현재 live surface 없음 = greenfield.
| AI Skill | 트리거 위치 | 동작 | 안전 경계 | 우선도 |
|---|---|---|---|---|
| kpiBrief | KPI 카드 / drill 진입점 | "지난달 대비 인건비 왜 늘었어?" 등 자연어 질의를 결정론 쿼리로 조회 후 자연어 답변 | read-only, 실원천 | ★★★★★ |
| marginWhy | 차액 카드 (HBMD220) | "차액 -1,698만"을 청구 감소·연장수당·인센티브·팀별 인건비 변화로 분해 설명 | read-only, momMetrics 아닌 실원천 | ★★★★★ |
| departmentAnomaly | 팀별 인건비 (HBMD230) | 부서별 인건비/차액/과부족 전월 대비 이상치 강조 + drill 후보 제시 | read-only | ★★★★☆ |
| staffingSummary | 병동 인력 (HBMD250) | 병동별 과부족·간호등급 위험·다음 근무표 영향 요약 | read-only | ★★★★☆ |
| whatIfLaborCost | KPI 카드 what-if | "환자 10% 증가 시 추가 인력?" 등 인력/인건비 변화 시뮬레이션 | mutation 금지 | ★★★★☆ |
권한·상태 분기 요약
| 시나리오 | 트리거 | 결과 | 비고 |
|---|---|---|---|
CASE01 [권한 진입] | 경영 대시보드 조회 권한 | "운영현황" 노출 | 내부 key TBU |
CASE02 [무권한 진입] | /management-dashboard 직접 | 접근 거부 (AccessDenied/TBU) | |
CASE03 [청구 금액 추가] | "+ 청구 금액 추가" → 저장 | ClaimAmount 생성 | 사람 저장, audit 필요 |
Open Question
- 경영 대시보드 조회 권한 내부 key = TBU
- margin 정본 산식(momMetrics 데모 vs 실원천 3종) 확정 + momMetrics 실원천(ClaimAmount + Payroll + Incentive) 재배선 = TBU
- 인센티브 taxonomy 정렬: MD live enum(surgery/night_shift/emergency/special_care/education) ↔ HBMM fixed_incentive output keys 상이 = TBU
- GA/Inventory KPI(재고비용·만료·과태료·컴플라이언스 리스크)를 경영 대시보드에 붙일지 여부 = TBU
- AI 자연어 질의 live surface 없음(greenfield), drill-down live 부재 = TBU