package com.sundot.airport.exam.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

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

    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 部门ID
     */
    private Long deptId;

    /**
     * 时间范围（TODAY/WEEK/MONTH/YEAR）
     */
    private String timeRange;

    /**
     * 开始日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startDate;

    /**
     * 结束日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endDate;

    /**
     * 统计维度（USER/DEPT）
     */
    private String dimension;

    /**
     * 部门类型（STATION/BRIGADE/MANAGER/TEAMS）
     */
    private String deptType;

    /**
     * 数据来源（仅班组长角色生效）
     * individual：返回班组长个人数据
     * team或不传：返回班组数据（默认）
     */
    private String dataSource;
}
