/// <summary> /// 分辨率每天分布 /// </summary> public void GetResolutionDetailLine() { string resolutionname = GetQueryString("resolutionname"); DateTime begintime = Convert.ToDateTime(GetQueryString("sdate")); DateTime endtime = Convert.ToDateTime(GetQueryString("edate")); if (begintime <= endtime.AddDays(-90)) { begintime = endtime.AddDays(-90); } MobileOption plat = (MobileOption)Convert.ToInt32(GetQueryString("plat")); int soft = Convert.ToInt32(GetQueryString("soft")); List <Resolution> list = TerminalService.GetInstance().GetResolutionsByDates (begintime, endtime, soft, (int)plat, resolutionname); List <DateTime> datelist = list.Select(p => p.StatDate).ToList(); string AxisJsonStr1 = string.Empty; string SeriesJsonStr1 = string.Empty; if (list.Count != 0) { SetxAxisJson(datelist, ref AxisJsonStr1); SeriesJsonStr1 = JsonConvert.SerializeObject(GetDataJsonListByResolution(datelist, list)); } else { AxisJsonStr1 = "{}"; SeriesJsonStr1 = "[]"; } string result = "{ x:" + AxisJsonStr1 + "," + "y:" + SeriesJsonStr1 + "}"; HttpContext.Current.Response.Write(result); }
private void Bind() { int[] arr = new int[] { 68, 69, -9, 58, 9, 57, 60, 61 }; if (arr.Contains <int>(softsid)) { string otherKeyString = softsid == 51 ? "SoftID51_" : ""; maxTime = UtilityService.GetInstance().GetMaxTimeCache(Period, ReportType.StatTerminationDistributionForPC, CacheTimeOption.TenMinutes, otherKeyString); } else { string otherKeyString = softsid == 51 ? "SoftID51_" : ""; maxTime = UtilityService.GetInstance().GetMaxTimeCache(Period, ReportType.StatTerminationDistribution, CacheTimeOption.TenMinutes, otherKeyString); } startTime = DateTime.Now; switch (MyPeriod) { case net91com.Stat.Core.PeriodOptions.LatestOneMonth: startTime = maxTime.AddMonths(-1).AddDays(1); break; case net91com.Stat.Core.PeriodOptions.LatestOneWeek: startTime = maxTime.AddDays(-6); break; case net91com.Stat.Core.PeriodOptions.LatestThreeMonths: startTime = maxTime.AddMonths(-3).AddDays(1); break; case net91com.Stat.Core.PeriodOptions.LatestTwoWeeks: startTime = maxTime.AddDays(-13); break; case net91com.Stat.Core.PeriodOptions.All: startTime = DateTime.MinValue; break; } reportTitle = MyPeriod == net91com.Stat.Core.PeriodOptions.All ? "分辨率分布(" + maxTime.ToString("yyyy-MM-dd") + "之前)" : "分辨率分布(" + startTime.ToString("yyyy-MM-dd") + "至" + maxTime.ToString("yyyy-MM-dd") + ")"; list = TerminalService.GetInstance().GetResolutions(softsid, platformsid, (int)MyPeriod, Convert.ToInt32(maxTime.ToString("yyyyMMdd"))); if (list.Count == 0) { SeriesJsonStr = "[]"; reportTitle = "无数据"; } else { SeriesJsonStr = GetYlineJson(list); } tableStr = GetTableString(); }
private void DownResolution() { net91com.Stat.Core.PeriodOptions Period = GetQueryString("zhouqi").ToEnum <net91com.Stat.Core.PeriodOptions>(net91com.Stat.Core.PeriodOptions.LatestOneWeek); int excelsoft = Convert.ToInt32(GetQueryString("soft")); int excelplatform = Convert.ToInt32(GetQueryString("platform")); CheckHasRight(excelsoft, "Reports/TransverseReports/ResolutionReport.aspx"); List <Resolution> list = TerminalService.GetInstance().GetResolutions(excelsoft, excelplatform, (int)Period, Convert.ToInt32(UtilityService.GetInstance().GetMaxTimeCache(Period, ReportType.StatTerminationDistribution, CacheTimeOption.TenMinutes).ToString("yyyyMMdd")) ); ThisResponse.ContentEncoding = System.Text.Encoding.GetEncoding("GBK"); AddHead("分辨率分布.xls"); ThisResponse.Write("分辨率\t用户数\t百分比\t\n"); string temp = string.Empty; int allcount = list.Sum(p => p.UseCount); list.ForEach(resol => { ThisResponse.Write((string.IsNullOrEmpty(resol.ResolutionStr) ? "未知分辨率" : resol.ResolutionStr) + "\t" + string.Format("{0:N0}", (resol.UseCount)) + "\t" + (Convert.ToDecimal(resol.UseCount) / allcount * 100).ToString("0.00") + "\t\n"); }); ThisResponse.End(); }