/*
 * 홀 현장운영 대시보드 표시 데이터 (SCR-14 · M14).
 * ★ 경계면: CCTV·혼잡 센서·HVAC/전력계·iparking·조명 IoT는 미연동
 *   (PLANNING §5A M14 "센서·IoT 연동은 킨텍스 시설 인프라 의존").
 *   혼잡은 M10 체크인 파생, 전력은 M4 신청 부하 집계로 향후 실 데이터 가능하나 현 시점 전부 샘플.
 *   ※ 하드웨어 연동 코드 금지(§2.6). 본 화면은 표시 전용.
 */
export type HeatLevel = 'smooth' | 'moderate' | 'busy';

export interface HallCell {
  id: string;
  label: string;
  level: HeatLevel;
  estPeople: number;
}
export interface ParkingZone {
  id: string;
  label: string;
  occupied: number;
  total: number;
}
export interface LightingZone {
  label: string;
  pct: number;
}

export const HALL_GROUPS = [
  { id: 'ex1', label: '홀 1-5 (제1전시장)' },
  { id: 'ex2', label: '홀 6-10 (제2전시장)' },
];

export const HALL_CELLS: HallCell[] = [
  { id: 'h1', label: 'Hall 1', level: 'smooth', estPeople: 1820 },
  { id: 'h2', label: 'Hall 2', level: 'moderate', estPeople: 3240 },
  { id: 'h3', label: 'Hall 3', level: 'busy', estPeople: 4680 },
  { id: 'h4', label: 'Hall 4', level: 'moderate', estPeople: 2760 },
  { id: 'h5', label: 'Hall 5', level: 'smooth', estPeople: 1750 },
];

export const TOTAL_EST_PEOPLE = HALL_CELLS.reduce((s, c) => s + c.estPeople, 0);

export const HVAC = {
  avgTempC: 22.5,
  powerLoadMw: 4.2,
  powerCapacityMw: 6.0,
  status: '최적',
};

export const LIGHTING_ZONES: LightingZone[] = [
  { label: '전시홀', pct: 85 },
  { label: '공용부', pct: 100 },
];

export const PARKING_ZONES: ParkingZone[] = [
  { id: 'a', label: '존A (지하)', occupied: 1176, total: 1200 },
  { id: 'b', label: '존B (옥외남측)', occupied: 675, total: 900 },
  { id: 'c', label: '존C (옥외북측)', occupied: 336, total: 800 },
  { id: 'd', label: '하역장', occupied: 24, total: 120 },
];

export const HEAT_LABEL: Record<HeatLevel, string> = {
  smooth: '원활',
  moderate: '보통',
  busy: '혼잡',
};
