package com.snack.server.module.dashboard.service;

import com.snack.server.module.dashboard.vo.DashboardStatsVO;
import com.snack.server.module.dashboard.vo.NameValueVO;
import com.snack.server.module.dashboard.vo.SalesTrendVO;

import java.util.List;

/**
 * 仪表盘统计业务接口
 */
public interface DashboardService {

    /**
     * 统计卡片：今日订单 / 今日销售额 / 总用户 / 上架商品
     */
    DashboardStatsVO stats();

    /**
     * 近 N 天销售趋势（按支付时间聚合）
     *
     * @param days 天数（7 / 30）
     */
    List<SalesTrendVO> salesTrend(int days);

    /**
     * 订单状态分布
     */
    List<NameValueVO> orderStatus();

    /**
     * 热销商品 Top10（按累计销量）
     */
    List<NameValueVO> hotProducts();
}
