package com.ruoyi.project.mapper;

import com.ruoyi.project.domain.DeptProofreadStatsVo;

import java.util.List;
import java.util.Map;

/**
 * 审校统计Mapper接口（简化版）
 * 
 * @author ruoyi
 */
public interface TrsResultsLogStatsSimpleMapper {
    
    /**
     * 查询内蒙古自治区所有下级部门（递归）
     * @param params 参数
     * @return 部门列表
     */
    List<Map<String, Object>> selectInnerMongoliaDepts(Map<String, Object> params);
    
    /**
     * 查询总体活跃程度
     * @param params 参数（包含beginTime, endTime）
     * @return 统计结果
     */
    Map<String, Object> selectTotalStats(Map<String, Object> params);
    
    /**
     * 按内蒙古自治区直接下级部门统计（包含所有子孙部门的数据）
     * @param params 参数（包含beginTime, endTime）
     * @return 部门统计列表
     */
    List<Map<String, Object>> selectDeptStats(Map<String, Object> params);
    
    /**
     * 查询指定直接下级部门下的活跃用户详情
     * @param params 参数（包含rootDeptId, beginTime, endTime）
     * @return 用户列表
     */
    List<Map<String, Object>> selectDeptActiveUsers(Map<String, Object> params);
    
    /**
     * 查询自定义词增加排行
     * @param params 参数（包含beginTime, endTime）
     * @return 排行列表
     */
    List<Map<String, Object>> selectCustomWordRank(Map<String, Object> params);
    
    /**
     * 查询内容审校统计
     * @param params 参数（包含beginTime, endTime）
     * @return 统计结果
     */
    Map<String, Object> selectContentStats(Map<String, Object> params);
    
    /**
     * 查询错误类型占比
     * @param params 参数（包含beginTime, endTime）
     * @return 错误类型列表
     */
    List<Map<String, Object>> selectErrorTypeRatio(Map<String, Object> params);
    
    /**
     * 查询趋势数据（按天统计）
     * @param params 参数（包含beginTime, endTime）
     * @return 趋势数据列表
     */
    List<Map<String, Object>> selectTrendData(Map<String, Object> params);

    /**
     * 查询部门校对次数统计
     * @param params 包含beginTime和endTime参数
     * @return 部门校对次数列表
     */
    List<DeptProofreadStatsVo> selectDeptProofreadStats(Map<String, Object> params);

}