package com.sundot.airport.exam.dto;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * <b>功能名：</b>AccuracyAggregateStatisticsDTO<br>
 * <b>说明：</b> 正确率聚合统计DTO <br>
 * <b>著作权：</b> Copyright (C) 2026 SUNDOT CORPORATION<br>
 *
 * @author Simon Lin
 */
@Data
public class AccuracyAggregateStatisticsDTO implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 总答题人数
     */
    private Integer totalUsers;

    /**
     * 总答题数
     */
    private Long totalAnswers;

    /**
     * 总正确数
     */
    private Long totalCorrect;

    /**
     * 整体正确率
     */
    private BigDecimal overallAccuracyRate;

    /**
     * 今日答题人数
     */
    private Integer todayUsers;

    /**
     * 今日答题数
     */
    private Long todayAnswers;

    /**
     * 今日正确数
     */
    private Long todayCorrect;

    /**
     * 今日正确率
     */
    private BigDecimal todayAccuracyRate;

    /**
     * 部门统计列表
     */
    private List<AccuracyStatisticsDTO> deptStatistics;

    /**
     * 用户排名列表（Top N）
     */
    private List<AccuracyStatisticsDTO> userRanking;
}
