package com.ruoyi.web.modules.screen.service;

import java.util.List;
import com.ruoyi.web.modules.screen.domain.vo.CommonProsperityProjectTypeDetailVo;
import com.ruoyi.web.modules.screen.domain.vo.CommonProsperityScreenDashboardVo;
import com.ruoyi.web.modules.screen.domain.vo.ScreenProjectListItemVo;

/**
 * 大屏共同富裕统计服务（只读）。
 * <p>
 * 成果组装复用 {@link com.ruoyi.web.modules.prosperity.support.AchievementReportAggregator}，
 * 与管理端年度报告口径一致。
 * </p>
 */
public interface ICommonProsperityScreenService
{
    /**
     * 加载看板：成果（总览 + 1～最大月序列）+ 项目类型占比 + 可选年份。
     *
     * @param statYear 统计年份（四位），非法时抛业务异常
     */
    CommonProsperityScreenDashboardVo loadDashboard(String statYear);

    /**
     * 已发布且实施周期与统计年有交集的项目列表（含运营图片）。
     *
     * @param statYear 统计年份（四位）
     */
    List<ScreenProjectListItemVo> listPublishedProjects(String statYear);

    /**
     * 共富项目分类情况明细（按实施年限聚合各类型数量；分页由 Controller 启 PageHelper）。
     *
     * @param statYear 所属年份；{@code null} 时不过滤（跨年按实施年限倒序）
     */
    List<CommonProsperityProjectTypeDetailVo> listProjectTypeDetails(Integer statYear);
}
