package com.sundot.airport.exam.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sundot.airport.exam.domain.DailyTask;
import com.sundot.airport.exam.dto.DailyTaskAdminQueryDTO;
import com.sundot.airport.exam.dto.DailyTaskDeptStatisticsDTO;
import com.sundot.airport.exam.dto.DailyTaskUserStatisticsDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <b>功能名：</b>DailyTaskMapper<br>
 * <b>说明：</b> 每日答题任务Mapper <br>
 * <b>著作权：</b> Copyright (C) 2025 SUNDOT CORPORATION<br>
 * <b>修改履历：
 *
 * @author Simon Lin
 */
@Mapper
public interface DailyTaskMapper extends BaseMapper<DailyTask> {

    /**
     * 按部门统计任务完成情况
     *
     * @param queryDTO 查询条件
     * @return 部门统计列表
     */
    List<DailyTaskDeptStatisticsDTO> statisticsByDept(@Param("query") DailyTaskAdminQueryDTO queryDTO);

    /**
     * 按用户统计任务完成情况
     *
     * @param queryDTO 查询条件
     * @return 用户统计列表
     */
    List<DailyTaskUserStatisticsDTO> statisticsByUser(@Param("query") DailyTaskAdminQueryDTO queryDTO);
}
