package com.pj.project.sta_data;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import com.pj.utils.so.SoMap;

/**
 * 统计数据 
 * @author kong 
 */
@Mapper
public interface StaDataMapper {

	/**
	 * 返回统计数据 
	 * 	{
			sys_user_count: 0,				// 用户数量 
			sys_user_today_count: 0,		// 今日注册数量 
			sys_login_log_count: 0,			// 登录次数 
			sys_login_log_today_count: 0,	// 今日登录次数 
			sys_client_count: 0,			// 应用数量 
			sp_apilog_count: 0,					// 系统总数 
		}
	 * @return
	 */
	public SoMap getStaData();
	

	// 获取指定年份每月登录数据  
	public List<SoMap> getUserLoginSta(String year);

	// 指定月份每日用户登录量
	public List<SoMap> getUserLoginStaByMonth(String yearMonth);

	// 查询总登录数据，按照url分组 
	public List<SoMap> getUserLoginStaByUrlGroup();

	// 查询总登录数据，按照client分组 
	public List<SoMap> getUserLoginStaByClientGroup();

	// 获取指定年份每月注册量 
	public List<SoMap> getUserRegSta(String year);

	// 指定时间段的用户登录数据 
	public List<SoMap> getLoginData(
			@Param("startTime")String startTime, 
			@Param("endTime")String endTime, 
			@Param("dateFormat")String dateFormat
			);

	// 指定时间段的用户注册数据 
	public List<SoMap> getRegData(
			@Param("startTime")String startTime, 
			@Param("endTime")String endTime, 
			@Param("dateFormat")String dateFormat
			);

}
