Пример #1
0
        public IList <TrafficSourceScope> GetPageviewSource(TrafficQuery query)
        {
            StringBuilder stringBuilder  = new StringBuilder();
            StringBuilder stringBuilder2 = new StringBuilder(" PageType=" + 4);

            if (query.Type.ToLower() == "pv")
            {
                stringBuilder.Append("select SourceId,sum(pv) as scope from [Hishop_DailyAccessStatistics] where ");
            }
            else if (query.Type.ToLower() == "uv")
            {
                stringBuilder.Append("select SourceId,sum(uv) as scope from [Hishop_DailyAccessStatistics] where ");
            }
            stringBuilder2.AppendFormat(" AND StatisticalDate between '{0}' and '{1}'", query.CustomConsumeStartTime, query.CustomConsumeEndTime);
            stringBuilder.Append(stringBuilder2);
            stringBuilder.Append(" group by SourceId");
            DbCommand sqlStringCommand        = base.database.GetSqlStringCommand(stringBuilder.ToString());
            IList <TrafficSourceScope> result = new List <TrafficSourceScope>();

            using (IDataReader objReader = base.database.ExecuteReader(sqlStringCommand))
            {
                result = (DataHelper.ReaderToList <TrafficSourceScope>(objReader) as List <TrafficSourceScope>);
            }
            return(result);
        }
Пример #2
0
        public static IList <TrafficSourceScope> GetPageviewSource(TrafficQuery query)
        {
            DateTime dateTime;

            if (query.LastConsumeTime == EnumConsumeTime.custom)
            {
                if (query.CustomConsumeStartTime > query.CustomConsumeEndTime)
                {
                    return(null);
                }
            }
            else if (query.LastConsumeTime == EnumConsumeTime.inOneMonth)
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime = dateTime.AddDays(-1.0);
                dateTime = query.CustomConsumeEndTime;
                query.CustomConsumeStartTime = dateTime.AddDays(-29.0);
            }
            else if (query.LastConsumeTime == EnumConsumeTime.inOneWeek)
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime = dateTime.AddDays(-1.0);
                dateTime = query.CustomConsumeEndTime;
                query.CustomConsumeStartTime = dateTime.AddDays(-6.0);
            }
            else if (query.LastConsumeTime == EnumConsumeTime.preThreeMonth)
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime = dateTime.AddDays(-1.0);
                dateTime = query.CustomConsumeEndTime;
                query.CustomConsumeStartTime = dateTime.AddDays(-89.0);
            }
            else
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime   = dateTime.AddDays(-1.0);
                query.CustomConsumeStartTime = query.CustomConsumeEndTime;
            }
            return(new TrafficDao().GetPageviewSource(query));
        }
Пример #3
0
        public IList <Traffics> GetPageview(TrafficQuery query)
        {
            StringBuilder stringBuilder = new StringBuilder("  select sum(PV) PV,sum(UV) UV, StatisticalDate  from  [dbo].[Hishop_DailyAccessStatistics] where ");

            stringBuilder.AppendFormat(" StatisticalDate between '{0}' and '{1}'", query.CustomConsumeStartTime, query.CustomConsumeEndTime);
            if (query.PageType >= 0)
            {
                stringBuilder.Append("AND PageType=" + query.PageType);
            }
            if (query.PageType == 1)
            {
                stringBuilder.Append(" AND StoreId = 0");
            }
            stringBuilder.Append("  group by StatisticalDate");
            IList <Traffics> result           = new List <Traffics>();
            DbCommand        sqlStringCommand = base.database.GetSqlStringCommand(stringBuilder.ToString());

            using (IDataReader objReader = base.database.ExecuteReader(sqlStringCommand))
            {
                result = (DataHelper.ReaderToList <Traffics>(objReader) as List <Traffics>);
            }
            return(result);
        }
Пример #4
0
        public static IList <Traffics> GetPageview(TrafficQuery query)
        {
            DateTime dateTime;

            if (query.LastConsumeTime == EnumConsumeTime.custom)
            {
                if (query.CustomConsumeStartTime > query.CustomConsumeEndTime)
                {
                    return(null);
                }
            }
            else if (query.LastConsumeTime == EnumConsumeTime.inOneMonth)
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime = dateTime.AddDays(-1.0);
                dateTime = query.CustomConsumeEndTime;
                query.CustomConsumeStartTime = dateTime.AddDays(-29.0);
            }
            else if (query.LastConsumeTime == EnumConsumeTime.inOneWeek)
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime = dateTime.AddDays(-1.0);
                dateTime = query.CustomConsumeEndTime;
                query.CustomConsumeStartTime = dateTime.AddDays(-6.0);
            }
            else if (query.LastConsumeTime == EnumConsumeTime.preThreeMonth)
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime = dateTime.AddDays(-1.0);
                dateTime = query.CustomConsumeEndTime;
                query.CustomConsumeStartTime = dateTime.AddDays(-89.0);
            }
            else
            {
                dateTime = DateTime.Now;
                dateTime = dateTime.Date;
                query.CustomConsumeEndTime   = dateTime.AddDays(-1.0);
                query.CustomConsumeStartTime = query.CustomConsumeEndTime;
            }
            IList <Traffics> list = new TrafficDao().GetPageview(query);

            if (query.CustomConsumeStartTime < query.CustomConsumeEndTime)
            {
                DateTime dtDay = query.CustomConsumeStartTime;
                while (dtDay <= query.CustomConsumeEndTime)
                {
                    if (list.FirstOrDefault((Traffics c) => c.StatisticalDate == dtDay) == null)
                    {
                        Traffics traffics = new Traffics();
                        traffics.StatisticalDate = dtDay;
                        list.Add(traffics);
                    }
                    dtDay = dtDay.AddDays(1.0);
                }
                list = (from c in list
                        orderby c.StatisticalDate
                        select c).ToList();
            }
            return(list);
        }