package com.jeesharp.business.modules.setting.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.ArrayList;
import java.util.List;

/**
 * 小程序首页壳层数据聚合：天气文案、公告跑马灯、轮播、宫格与快捷入口等，供联调一次性拉取。
 *
 * @author jeesharp
 * @since 2026-05-13
 */
@Data
@Schema(description = "小程序首页-壳层聚合")
public class MiniHomeShellVO {

    @Schema(description = "天气展示文案")
    private MiniHomeWeatherVO weather = new MiniHomeWeatherVO();

    @Schema(description = "公告跑马灯整行文案（已拼接最新通知标题与后缀）")
    private String noticeMarquee;

    @Schema(description = "轮播图列表（启用中的小程序端配置）")
    private List<MiniHomeBannerItemVO> banners = new ArrayList<>();

    @Schema(description = "预订宫格")
    private List<MiniHomeBookingCellVO> bookingGrid = new ArrayList<>();

    @Schema(description = "快捷入口")
    private List<MiniHomeQuickNavItemVO> quickNav = new ArrayList<>();

    @Schema(description = "首页站点图标（category=HOME 且启用），端上按 iconCode 解析")
    private List<MiniHomeSiteIconItemVO> homeIcons = new ArrayList<>();

    @Schema(description = "推荐榜 Tab 文案，顺序与端上 Tab 一致")
    private List<String> rankTabLabels = new ArrayList<>();
}
