using System;
using System.Collections.Generic;
using System.Web;
using MySQL;
using System.Data;
using System.Web.Configuration;
using System.Web.UI.WebControls;
namespace SiteECom
{
///
/// Gestão de Estatisticas
///
public class Estatisticas
{
public Estatisticas()
{
//
// TODO: Add constructor logic here
//
}
///
/// Estatísticas anuais
///
public class Anuais
{
///
/// Mostra estatísticas de determinado ano por meses
///
/// Ano a mostrar
/// DataTable
public static DataTable Visitas(int Ano)
{
DataTable dtListagem = new DataTable();
sql sqlInfo = new sql(WebConfigurationManager.ConnectionStrings["Site"].ConnectionString);
if (Ano == 0)
{
Ano = DateTime.Now.Year;
}
sqlInfo.Query = "SELECT DATE_FORMAT(data, '%m') AS mes, "
+ " COUNT(DISTINCT(ip)) AS visitantes, "
+ " COUNT(DISTINCT(uid)) AS visitas, "
+ " COUNT(link) AS paginas "
+ "FROM visitas "
+ "WHERE DATE_FORMAT(data, '%Y')='" + Ano + "' "
+ "GROUP BY DATE_FORMAT(data, '%m') DESC "
+ "ORDER BY data";
dtListagem = sqlInfo.Read();
sqlInfo.closeConnection();
return dtListagem;
}
}
///
/// Estatísticas mensais
///
public class Mensais
{
///
/// Mostra estatísticas de determinado mês
///
/// Ano a mostrar
/// Mês a mostrar
/// DataTable
public static DataTable Visitas(int Ano, int Mes)
{
DataTable dtListagem = new DataTable();
sql sqlInfo = new sql(WebConfigurationManager.ConnectionStrings["Site"].ConnectionString);
if (Ano == 0)
{
Ano = DateTime.Now.Year;
}
if (Mes == 0)
{
Mes = DateTime.Now.Month;
}
DateTime data = new DateTime(Ano, Mes, 1);
TimeSpan umDia = new TimeSpan(24, 0, 0);
TimeSpan umMes = new TimeSpan(744, 0, 0);
DateTime ontem = data.Subtract(umDia);
DateTime proximoMes = data.Add(umMes);
string _ontem = ontem.Year + "." + ontem.Month + "." + ontem.Day;
string _proximoMes = proximoMes.Year + "." + proximoMes.Month + "." + proximoMes.Day;
sqlInfo.Query = "SELECT DATE_FORMAT(data, '%d') AS dia, "
+ " COUNT(DISTINCT(ip)) AS visitantes, "
+ " COUNT(DISTINCT(uid)) AS visitas, "
+ " COUNT(link) AS paginas "
+ "FROM visitas "
+ "WHERE DATE_FORMAT(data, '%Y.%m.%d')>=DATE_FORMAT('" + _ontem + "', '%Y.%m.%d') "
+ " AND DATE_FORMAT(data, '%Y.%m.%d')
/// Estatísticas diárias
///
public class Diarias
{ }
}
}