package com.zioinfo.kintex.dashboard.dto;

import java.util.List;

/**
 * 주최자 대시보드 집계 (SCR-02 / 06_backend_api_gaps §2).
 * 집계원: event·booth(layout)·design_plan·utility_order·render_job. 데이터 없으면 0/빈배열(정직 반환).
 */
public record DashboardDto(
        List<Milestone> milestones,
        List<Kpi> kpis,
        List<Exhibitor> exhibitors,
        List<Feed> feed
) {
    /** 마일스톤 — 행사 시작일 기준 파생 일정(state 는 오늘 기준 판정). */
    public record Milestone(String label, String date, String state) {
    }

    /** KPI — 이력 부재 시 delta=null·trend=flat. */
    public record Kpi(String label, String value, String delta, String trend) {
    }

    /** 참가업체 부스 현황(booth + 최신 설계안 상태). */
    public record Exhibitor(String companyName, String boothNo, String status) {
    }

    /** 활동 피드(렌더/승인/위반) — 현재 render_job 이력 원천. */
    public record Feed(String id, String kind, String message, String at) {
    }
}
