Exemplo n.º 1
0
    //每月统计人数
    public int MonthCount(int i)
    {
        int P_Int_count = 0;

        P_Int_count = new BCW.BLL.Statinfo().GetCount("Year(AddTime)=" + DateTime.Now.Year + "and Month(AddTime)=" + (i + 1) + " Group By Month(AddTime)");

        return(P_Int_count);
    }
Exemplo n.º 2
0
    //每日统计人数
    public int DayCount(int i)
    {
        int P_Int_count = 0;

        P_Int_count = new BCW.BLL.Statinfo().GetCount("AddTime<'" + M_Str_maxdate + "' and DATEPART(dd,AddTime)=" + (i + 1) + " GROUP BY DATEPART(dd, AddTime)");

        return(P_Int_count);
    }
Exemplo n.º 3
0
    //各时间段的统计人数
    private int HourCount(int i)
    {
        int P_Int_count = 0;

        P_Int_count = new BCW.BLL.Statinfo().GetCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "' and DATEPART(hh,AddTime)=" + i + " GROUP BY DATEPART(hh, AddTime)");

        return(P_Int_count);
    }
Exemplo n.º 4
0
    protected void statFulx()
    {
        //编写SQL语句,查询日网站的访问量的总人数(PV)
        M_Str_mindate = DateTime.Now.ToShortDateString() + " 0:00:00";
        M_Str_maxdate = DateTime.Now.AddDays(1).ToShortDateString() + " 0:00:00";
        int sumFlux = new BCW.BLL.Statinfo().GetCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'");

        //调用自定义方法绘制柱子形图,表示日时段的流量
        CreateImage(sumFlux, DateTime.Now.Year + "年" + DateTime.Now.Month + "月" + DateTime.Now.Day + "日网站24小时流量分析图");
    }
Exemplo n.º 5
0
    /// <summary>
    /// 本月统计
    /// </summary>
    private void MonthPage()
    {
        int    P_Int_DaysInMonth = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);//指定年和月中的天数
        string MonthText         = DateTime.Now.Year + "-" + DateTime.Now.Month;

        M_Str_mindate = MonthText + "-1 0:00:00";
        M_Str_maxdate = MonthText + "-" + P_Int_DaysInMonth + " 23:59:59";
        //计算总量
        int total = new BCW.BLL.Statinfo().GetCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'");

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("月份:" + MonthText + " 累计流量" + total + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("日期|访问量|比例");
        builder.Append(Out.Tab("</div>", ""));


        int[] P_Int_Day = new int[P_Int_DaysInMonth];
        for (int i = 0; i < P_Int_DaysInMonth; i++)
        {
            if (i % 2 == 0)
            {
                builder.Append(Out.Tab("<div>", "<br />"));
            }
            else
            {
                builder.Append(Out.Tab("<div>", "<br />"));
            }

            if (!Utils.Isie())
            {
                builder.Append(Day(i) + "—" + DayCount(i) + "—" + (Convert.ToInt32(Percent(DayCount(i), total) * 100)) + "%");
            }
            else
            {
                builder.Append(Day(i) + "—" + DayCount(i) + "—<img src=\"/Files/sys/bar.gif\" height=\"10\" width=\"" + Percent(DayCount(i), total) * 100 + "\" />" + Convert.ToInt32(Percent(DayCount(i), total) * 100) + "%");
            }

            builder.Append(Out.Tab("</div>", ""));
        }
    }
Exemplo n.º 6
0
    /// <summary>
    /// 本日统计
    /// </summary>
    private void DayPage()
    {
        string DayText = DateTime.Now.ToShortDateString();//当日日期

        M_Str_mindate = DateTime.Now.ToShortDateString() + " 0:00:00";
        M_Str_maxdate = DateTime.Now.AddDays(1).ToShortDateString() + " 0:00:00";
        //计算总量
        int total = new BCW.BLL.Statinfo().GetCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'");

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("日期:" + DayText + " 累计流量" + total + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("时间|访问量|比例");
        builder.Append(Out.Tab("</div>", ""));

        int[] P_Int_hour = new int[24];
        for (int i = 0; i < 24; i++)
        {
            if (i % 2 == 0)
            {
                builder.Append(Out.Tab("<div>", "<br />"));
            }
            else
            {
                builder.Append(Out.Tab("<div>", "<br />"));
            }

            if (!Utils.Isie())
            {
                builder.Append(Time(i) + "—" + HourCount(i) + "—" + (Convert.ToInt32(Percent(HourCount(i), total) * 100)) + "%");
            }
            else
            {
                builder.Append(Time(i) + "—" + HourCount(i) + "—<img src=\"/Files/sys/bar.gif\" height=\"10\" width=\"" + Percent(HourCount(i), total) * 100 + "\" />" + Convert.ToInt32(Percent(HourCount(i), total) * 100) + "%");
            }

            builder.Append(Out.Tab("</div>", ""));
        }
    }
Exemplo n.º 7
0
    /// <summary>
    /// 本年统计
    /// </summary>
    private void YearPage()
    {
        string YearText = DateTime.Now.Year + "年";

        //计算总量
        int total = new BCW.BLL.Statinfo().GetCount("Year(AddTime)=" + DateTime.Now.Year);

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("年份:" + YearText + " 累计流量" + total + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("月份|访问量|比例");
        builder.Append(Out.Tab("</div>", ""));

        int[] P_Int_month = new int[12];
        for (int i = 0; i < 12; i++)
        {
            if (i % 2 == 0)
            {
                builder.Append(Out.Tab("<div>", "<br />"));
            }
            else
            {
                builder.Append(Out.Tab("<div>", "<br />"));
            }

            if (!Utils.Isie())
            {
                builder.Append(Year(i) + "—" + MonthCount(i) + "—" + (Convert.ToInt32(Percent(MonthCount(i), total) * 100)) + "%");
            }
            else
            {
                builder.Append(Year(i) + "—" + MonthCount(i) + "—<img src=\"/Files/sys/bar.gif\" height=\"10\" width=\"" + Percent(MonthCount(i), total) * 100 + "\" />" + Convert.ToInt32(Percent(MonthCount(i), total) * 100) + "%");
            }

            builder.Append(Out.Tab("</div>", ""));
        }
    }
Exemplo n.º 8
0
    /// <summary>
    /// PUrl统计
    /// </summary>
    private void PUrlPage()
    {
        //计算总量
        int total = new BCW.BLL.Statinfo().GetCount("");

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("累计流量" + total + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("IP|访问量|比例");
        builder.Append(Out.Tab("</div>", "<br />"));

        int pageIndex;
        int recordCount;
        int pageSize = Convert.ToInt32(ub.Get("SiteListNo"));

        string[] pageValUrl = { "ptype" };
        pageIndex = Utils.ParseInt(Request.QueryString["page"]);
        if (pageIndex == 0)
        {
            pageIndex = 1;
        }

        // 开始读取列表
        IList <BCW.Model.Statinfo> listStatinfo = new BCW.BLL.Statinfo().GetPUrls(pageIndex, pageSize, out recordCount);

        if (listStatinfo.Count > 0)
        {
            int k = 1;
            foreach (BCW.Model.Statinfo n in listStatinfo)
            {
                if (k % 2 == 0)
                {
                    builder.Append(Out.Tab("<div>", "<br />"));
                }
                else
                {
                    if (k == 1)
                    {
                        builder.Append(Out.Tab("<div>", ""));
                    }
                    else
                    {
                        builder.Append(Out.Tab("<div>", "<br />"));
                    }
                }

                if (!Utils.Isie())
                {
                    builder.Append(Utils.Mid(n.PUrl, 1, n.PUrl.Length) + "—" + n.PUrlCount + "—" + (Convert.ToInt32(Percent(n.PUrlCount, total) * 100)) + "%");
                }
                else
                {
                    builder.Append(Utils.Mid(n.PUrl, 1, n.PUrl.Length) + "—" + n.PUrlCount + "—<img src=\"/Files/sys/bar.gif\" height=\"10\" width=\"" + Percent(n.PUrlCount, total) * 100 + "\" />" + Convert.ToInt32(Percent(n.PUrlCount, total) * 100) + "%");
                }

                k++;
                builder.Append(Out.Tab("</div>", ""));
            }

            // 分页
            builder.Append(BasePage.MultiPage(pageIndex, pageSize, recordCount, Utils.getPageUrl(), pageValUrl, "page", 0));
        }
        else
        {
            builder.Append(Out.Div("div", "没有相关记录.."));
        }
    }
Exemplo n.º 9
0
    /// <summary>
    /// IP统计
    /// </summary>
    private void IpPage()
    {
        //计算总量
        int total = new BCW.BLL.Statinfo().GetCount("");

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("累计流量" + total + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("IP|访问量|比例");
        builder.Append(Out.Tab("</div>", "<br />"));

        int pageIndex;
        int recordCount;
        int pageSize = Convert.ToInt32(ub.Get("SiteListNo"));

        string[] pageValUrl = { "ptype" };
        pageIndex = Utils.ParseInt(Request.QueryString["page"]);
        if (pageIndex == 0)
        {
            pageIndex = 1;
        }

        // 开始读取列表
        IList <BCW.Model.Statinfo> listStatinfo = new BCW.BLL.Statinfo().GetIPs(pageIndex, pageSize, out recordCount);

        if (listStatinfo.Count > 0)
        {
            int k = 1;
            foreach (BCW.Model.Statinfo n in listStatinfo)
            {
                if (k % 2 == 0)
                {
                    builder.Append(Out.Tab("<div>", "<br />"));
                }
                else
                {
                    if (k == 1)
                    {
                        builder.Append(Out.Tab("<div>", ""));
                    }
                    else
                    {
                        builder.Append(Out.Tab("<div>", "<br />"));
                    }
                }

                string ipCity = new IPSearch().GetAddressWithIP(n.IP);
                if (!string.IsNullOrEmpty(ipCity))
                {
                    ipCity = ipCity.Replace("IANA保留地址  CZ88.NET", "本机地址").Replace("CZ88.NET", "") + ":";
                }
                if (!Utils.Isie())
                {
                    builder.Append(ipCity + "" + n.IP + "—" + n.IpCount + "—" + (Convert.ToInt32(Percent(n.IpCount, total) * 100)) + "%");
                }
                else
                {
                    builder.Append(ipCity + "" + n.IP + "—" + n.IpCount + "—<img src=\"/Files/sys/bar.gif\" height=\"10\" width=\"" + Percent(n.IpCount, total) * 100 + "\" />" + Convert.ToInt32(Percent(n.IpCount, total) * 100) + "%");
                }

                k++;
                builder.Append(Out.Tab("</div>", ""));
            }

            // 分页
            builder.Append(BasePage.MultiPage(pageIndex, pageSize, recordCount, Utils.getPageUrl(), pageValUrl, "page", 0));
        }
        else
        {
            builder.Append(Out.Div("div", "没有相关记录.."));
        }
    }
Exemplo n.º 10
0
    private void ReloadPage()
    {
        string M_Str_mindate; //用于存储最小日期
        string M_Str_maxdate; //用于存储最大日期
        //显示统计时间
        string sCountDate = DateTime.Now.ToString();

        //本日访问人数的计算
        M_Str_mindate = DateTime.Now.ToShortDateString() + " 0:00:00";
        M_Str_maxdate = DateTime.Now.AddDays(1).ToShortDateString() + " 0:00:00";

        string sCountDay = new BCW.BLL.Statinfo().GetCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'").ToString();

        string sCountDayIP = new BCW.BLL.Statinfo().GetIPCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'").ToString();

        //本周访问人数
        switch (DateTime.Now.DayOfWeek)
        {
        case DayOfWeek.Monday:
            M_Str_mindate = DateTime.Now.AddDays(0).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(6).ToShortDateString() + " 0:00:00";
            break;

        case DayOfWeek.Tuesday:
            M_Str_mindate = DateTime.Now.AddDays(-1).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(5).ToShortDateString() + " 0:00:00";
            break;

        case DayOfWeek.Wednesday:
            M_Str_mindate = DateTime.Now.AddDays(-2).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(4).ToShortDateString() + " 0:00:00";
            break;

        case DayOfWeek.Thursday:
            M_Str_mindate = DateTime.Now.AddDays(-3).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(3).ToShortDateString() + " 0:00:00";
            break;

        case DayOfWeek.Friday:
            M_Str_mindate = DateTime.Now.AddDays(-4).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(2).ToShortDateString() + " 0:00:00";
            break;

        case DayOfWeek.Saturday:
            M_Str_mindate = DateTime.Now.AddDays(-5).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(1).ToShortDateString() + " 0:00:00";
            break;

        case DayOfWeek.Sunday:
            M_Str_mindate = DateTime.Now.AddDays(-6).ToShortDateString() + " 0:00:00";
            M_Str_maxdate = DateTime.Now.AddDays(0).ToShortDateString() + " 0:00:00";
            break;
        }
        string sCountWeek   = new BCW.BLL.Statinfo().GetCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'").ToString();
        string sCountWeekIP = new BCW.BLL.Statinfo().GetIPCount("AddTime>='" + M_Str_mindate + "'and AddTime<'" + M_Str_maxdate + "'").ToString();
        //本月访问人数
        string sCountMonth   = new BCW.BLL.Statinfo().GetCount("Year(AddTime)=" + DateTime.Now.Year + " and Month(AddTime)=" + DateTime.Now.Month.ToString()).ToString();
        string sCountMonthIP = new BCW.BLL.Statinfo().GetIPCount("Year(AddTime)=" + DateTime.Now.Year + " and Month(AddTime)=" + DateTime.Now.Month.ToString()).ToString();
        //最高日访问量
        DataSet ds         = new BCW.BLL.Statinfo().GetList("Select COUNT(ID) AS count, MAX(AddTime) AS date From tb_Statinfo GROUP BY YEAR(AddTime), MONTH(AddTime), DAY(AddTime)");
        int     P_Int_max  = 0;//最大值
        string  P_Str_date = "";

        foreach (DataRow dr in ds.Tables[0].Rows)
        {
            if (!dr.IsNull(0))
            {
                if (P_Int_max <= Convert.ToInt32(dr[0]))
                {
                    P_Int_max  = Convert.ToInt32(dr[0]);
                    P_Str_date = Convert.ToDateTime(dr[1]).ToShortDateString();
                }
            }
        }
        string sMaxCountDay = P_Int_max.ToString();
        //最高日访问日期
        string sMaxCountDayDate = "";

        if (P_Str_date != "")
        {
            DateTime P_Date_date = Convert.ToDateTime(P_Str_date);
            sMaxCountDayDate = P_Date_date.Year + "年" + P_Date_date.Month + "月" + P_Date_date.Day + "日";
        }

        //最高月访问量
        P_Int_max  = 0;//最大值
        P_Str_date = "";
        ds         = new BCW.BLL.Statinfo().GetList("SELECT YEAR(AddTime) FROM tb_Statinfo GROUP BY YEAR(AddTime)");
        foreach (DataRow drYear in ds.Tables[0].Rows)
        {
            drYear[0].ToString();
            DataSet dsMonth = new BCW.BLL.Statinfo().GetList("SELECT COUNT(*) as count, MAX(Month(AddTime)) as month FROM tb_Statinfo where YEAR(AddTime)=" + drYear[0].ToString() + " GROUP BY Month(AddTime)");
            foreach (DataRow drMonth in dsMonth.Tables[0].Rows)
            {
                if (!drMonth.IsNull(0))
                {
                    if (P_Int_max <= Convert.ToInt32(drMonth[0]))
                    {
                        P_Int_max  = Convert.ToInt32(drMonth[0]);
                        P_Str_date = drYear[0].ToString() + "年" + drMonth[1].ToString() + "月";
                    }
                }
            }
        }
        string sMaxCountMonth = P_Int_max.ToString();
        //最高月访问日期
        string sMaxCountMonthDate = P_Str_date;

        //最高年访问量
        ds         = new BCW.BLL.Statinfo().GetList("SELECT COUNT(ID), MAX(Year(AddTime)) FROM tb_Statinfo GROUP BY Year(AddTime)");
        P_Int_max  = 0;//最大值
        P_Str_date = "";
        foreach (DataRow dr in ds.Tables[0].Rows)
        {
            if (!dr.IsNull(0))
            {
                if (P_Int_max <= Convert.ToInt32(dr[0]))
                {
                    P_Int_max  = Convert.ToInt32(dr[0]);
                    P_Str_date = dr[1].ToString() + "年";
                }
            }
        }
        string sMaxCountYear = P_Int_max.ToString();
        //最高年访问日期
        string sMaxCountYearDate = P_Str_date;

        //总访问人数
        string sTotalCount   = new BCW.BLL.Statinfo().GetCount("").ToString();
        string sTotalCountIP = new BCW.BLL.Statinfo().GetIPCount("").ToString();

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("本日访问:" + sCountDay + " IP:" + sCountDayIP + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("本周访问:" + sCountWeek + " IP:" + sCountWeekIP + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("本月访问:" + sCountMonth + " IP:" + sCountMonthIP + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("总访问:" + sTotalCount + " IP:" + sTotalCountIP + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("最高日访问:" + sMaxCountDay + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("最高日访问日期:" + sMaxCountDayDate + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("最高月访问:" + sMaxCountMonth + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("最高月访问日期:" + sMaxCountMonthDate + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("最高年访问:" + sMaxCountYear + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div>", "<br />"));
        builder.Append("最高年访问日期:" + sMaxCountYearDate + "");
        builder.Append(Out.Tab("</div>", ""));

        builder.Append(Out.Tab("<div class=\"text\">", "<br />"));
        string VCountTypeName = string.Empty;

        if (ub.Get("SiteVCountType") == "0")
        {
            VCountTypeName = "按UV";
        }
        else if (ub.Get("SiteVCountType") == "1")
        {
            VCountTypeName = "按PV";
        }
        else
        {
            VCountTypeName = "已关闭";
        }

        builder.Append("温馨提示:统计按自然日、周、月等计算,当前" + VCountTypeName + "统计");
        builder.Append(Out.Tab("</div>", ""));
    }