# KPI 모듈 엔티티 설계

## 1. KPI (핵심성과지표)

- **id**: string (PK)
- **name**: string (지표명)
- **code**: string (지표코드, unique)
- **description**: string (설명)
- **unit**: string (단위)
- **formula**: string (산식)
- **targetValue**: number (목표값)
- **direction**: enum('UP', 'DOWN', 'NONE') (목표 달성 방향)
- **frequency**: enum('MONTHLY', 'QUARTERLY', 'YEARLY', ...)
- **ownerId**: string (FK, 담당자)
- **createdAt**: datetime
- **updatedAt**: datetime

## 3. KPI_VALUE (지표 실적값)

- **id**: string (PK)
- **kpiId**: string (FK, KPI)
- **date**: date (실적 기준일)
- **value**: number (실적값)
- **inputType**: enum('MANUAL', 'AUTO')
- **source**: string (수집/입력 출처)
- **createdAt**: datetime

## 4. KPI_OWNER (담당자/조직)

- **id**: string (PK)
- **name**: string (이름/조직명)
- **type**: enum('USER', 'DEPT')
- **email**: string

## 5. KPI_HISTORY (변경이력)

- **id**: string (PK)
- **kpiId**: string (FK, KPI)
- **changedAt**: datetime
- **changedBy**: string (FK, 담당자)
- **field**: string (변경 필드)
- **oldValue**: string
- **newValue**: string

## 6. METRIC (측정지표)

- **id**: string (PK)
- **name**: string (지표명)
- **code**: string (지표코드, unique)
- **description**: string (설명)
- **unit**: string (단위)
- **source**: string (데이터 출처)
- **createdAt**: datetime
- **updatedAt**: datetime

## 7. KPI_METRIC_MAP (KPI-메트릭 매핑)

- **id**: string (PK)
- **kpiId**: string (FK, KPI)
- **metricId**: string (FK, METRIC)
- **order**: number (산식 내 사용 순서/우선순위)

## 8. KPI_GRADE (KPI별 등급/구간)

- **id**: string (PK)
- **kpiId**: string (FK, KPI)
- **grade**: string (등급명, 예: A, B, C, D)
- **minValue**: number (구간 최소값)
- **maxValue**: number (구간 최대값)
- **score**: number (점수, 선택)
- **color**: string (표시 색상, 선택)
- **description**: string (설명, 선택)

---

## 엔티티 간 릴레이션

- **KPI** 1 --- N **KPI_VALUE** (한 KPI에 여러 실적값)
- **KPI** N --- 1 **KPI_OWNER** (여러 KPI가 한 담당자/조직에 속함)
- **KPI** 1 --- N **KPI_HISTORY** (한 KPI에 여러 변경이력)
- **KPI** N --- M **METRIC** (KPI와 Metric은 N:M, KPI_METRIC_MAP으로 연결)

- **KPI** 1 --- N **KPI_GRADE** (한 KPI에 여러 등급/구간)

---

## 확장 고려사항

- KPI별 첨부파일, 알림설정, 외부연계정보 등은 추후 별도 엔티티로 확장 가능

---

> 본 설계는 KPI 관리, 실적 집계, 분석, 이력관리 등 KPI 모듈의 주요 기능을 지원하기 위한 기본 구조입니다.
