package com.ruoyi.web.modules.screen.domain.vo;

import java.util.List;
/**
 * 大屏畜牧资源（AI 问诊）看板（{@code GET /bigScreen/livestockResource/dashboard}）。
 */
public class LivestockResourceDashboardVo
{
    /** 统计年份 */
    private int statYear;
    /** 统计截止日 yyyy-MM-dd */
    private String statDate;
    /** 数据刷新时间 yyyy-MM-dd HH:mm:ss */
    private String statDateTime;
    /** 有会话数据的年份列表 */
    private List<Integer> availableYears;
    /** 年度/今日概览 */
    private LivestockResourceOverviewVo overview;
    /** 近 7 日活跃趋势 */
    private LivestockResourceActivityTrendVo activityTrend;
    /** 新老用户结构 */
    private LivestockResourceUserStructureVo userStructure;
    /** 提问分类占比 */
    private LivestockResourceCategoryShareVo categoryShare;
    /** 模型调用分类分析（同 categoryShare.items） */
    private List<LivestockResourceCategoryItemVo> modelCallAnalysis;
    /** statDate 当天 24 小时热力 */
    private LivestockResourceHourlyHeatVo hourlyHeat;
    /** 会话深度（回复条数）分布 */
    private List<LivestockResourceSessionBandVo> sessionReplyDistribution;
    /** AI 回复成功/失败占比 */
    private LivestockResourceReplyStatusVo replyStatusDistribution;
    /** 热门话题 Top5（按分类） */
    private List<LivestockResourceCategoryItemVo> hotTopics;
    /** 提问高频关键词 Top30（本地分词） */
    private List<LivestockResourceKeywordVo> topKeywords;

    public int getStatYear() { return statYear; }
    public void setStatYear(int statYear) { this.statYear = statYear; }
    public String getStatDate() { return statDate; }
    public void setStatDate(String statDate) { this.statDate = statDate; }
    public String getStatDateTime() { return statDateTime; }
    public void setStatDateTime(String statDateTime) { this.statDateTime = statDateTime; }
    public List<Integer> getAvailableYears() { return availableYears; }
    public void setAvailableYears(List<Integer> availableYears) { this.availableYears = availableYears; }
    public LivestockResourceOverviewVo getOverview() { return overview; }
    public void setOverview(LivestockResourceOverviewVo overview) { this.overview = overview; }
    public LivestockResourceActivityTrendVo getActivityTrend() { return activityTrend; }
    public void setActivityTrend(LivestockResourceActivityTrendVo activityTrend) { this.activityTrend = activityTrend; }
    public LivestockResourceUserStructureVo getUserStructure() { return userStructure; }
    public void setUserStructure(LivestockResourceUserStructureVo userStructure) { this.userStructure = userStructure; }
    public LivestockResourceCategoryShareVo getCategoryShare() { return categoryShare; }
    public void setCategoryShare(LivestockResourceCategoryShareVo categoryShare) { this.categoryShare = categoryShare; }
    public List<LivestockResourceCategoryItemVo> getModelCallAnalysis() { return modelCallAnalysis; }
    public void setModelCallAnalysis(List<LivestockResourceCategoryItemVo> modelCallAnalysis) { this.modelCallAnalysis = modelCallAnalysis; }
    public LivestockResourceHourlyHeatVo getHourlyHeat() { return hourlyHeat; }
    public void setHourlyHeat(LivestockResourceHourlyHeatVo hourlyHeat) { this.hourlyHeat = hourlyHeat; }
    public List<LivestockResourceSessionBandVo> getSessionReplyDistribution() { return sessionReplyDistribution; }
    public void setSessionReplyDistribution(List<LivestockResourceSessionBandVo> sessionReplyDistribution) { this.sessionReplyDistribution = sessionReplyDistribution; }
    public LivestockResourceReplyStatusVo getReplyStatusDistribution() { return replyStatusDistribution; }
    public void setReplyStatusDistribution(LivestockResourceReplyStatusVo replyStatusDistribution) { this.replyStatusDistribution = replyStatusDistribution; }
    public List<LivestockResourceCategoryItemVo> getHotTopics() { return hotTopics; }
    public void setHotTopics(List<LivestockResourceCategoryItemVo> hotTopics) { this.hotTopics = hotTopics; }
    public List<LivestockResourceKeywordVo> getTopKeywords() { return topKeywords; }
    public void setTopKeywords(List<LivestockResourceKeywordVo> topKeywords) { this.topKeywords = topKeywords; }
}
