public IList <WXFansInteractStatisticsInfo> GetWxFansInteractListNoPage(WXFansStatisticsQuery query) { IList <WXFansInteractStatisticsInfo> result = new List <WXFansInteractStatisticsInfo>(); string format = "SELECT *,(MsgSendNumbers+MenuClickNumbers) as InteractNumbers,(MsgSendTimes+MenuClickTimes) as InteractTimes FROM Hishop_WXFansInteractStatistics WHERE {0} ORDER BY {1}"; StringBuilder stringBuilder = new StringBuilder(" 1 = 1 "); DateTime dateTime; switch (query.LastConsumeTime) { case EnumConsumeTime.yesterday: { StringBuilder stringBuilder6 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddDays(-1.0); stringBuilder6.AppendFormat(" AND DATEDIFF(dd,StatisticalDate,'{0}') = 0 ", dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.inOneWeek: { StringBuilder stringBuilder3 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddDays(-7.0); string arg2 = dateTime.ToString("yyyy-MM-dd"); dateTime = DateTime.Now; dateTime = dateTime.Date; stringBuilder3.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg2, dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.inTwoWeek: { StringBuilder stringBuilder4 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddDays(-14.0); string arg3 = dateTime.ToString("yyyy-MM-dd"); dateTime = DateTime.Now; dateTime = dateTime.Date; stringBuilder4.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg3, dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.inOneMonth: { StringBuilder stringBuilder5 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddMonths(-1); string arg4 = dateTime.ToString("yyyy-MM-dd"); dateTime = DateTime.Now; dateTime = dateTime.Date; stringBuilder5.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg4, dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.custom: if (query.CustomConsumeStartTime.HasValue && query.CustomConsumeEndTime.HasValue) { StringBuilder stringBuilder2 = stringBuilder; dateTime = query.CustomConsumeStartTime.Value; string arg = dateTime.ToString("yyyy-MM-dd"); dateTime = query.CustomConsumeEndTime.Value; stringBuilder2.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg, dateTime.ToString("yyyy-MM-dd")); } break; } SortAction sortOrder = query.SortOrder; string str = "StatisticalDate"; if (!string.IsNullOrEmpty(query.SortBy)) { str = query.SortBy; } string arg5 = str + " " + ((sortOrder == SortAction.Desc) ? "DESC" : "ASC"); format = string.Format(format, stringBuilder.ToString(), arg5); DbCommand sqlStringCommand = base.database.GetSqlStringCommand(format); using (IDataReader objReader = base.database.ExecuteReader(sqlStringCommand)) { result = DataHelper.ReaderToList <WXFansInteractStatisticsInfo>(objReader); } return(result); }
public PageModel <WXFansInteractStatisticsInfo> GetWxFansInteractList(WXFansStatisticsQuery query) { StringBuilder stringBuilder = new StringBuilder(" 1 = 1 "); DateTime dateTime; switch (query.LastConsumeTime) { case EnumConsumeTime.yesterday: { StringBuilder stringBuilder6 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddDays(-1.0); stringBuilder6.AppendFormat(" AND DATEDIFF(dd,StatisticalDate,'{0}') = 0 ", dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.inOneWeek: { StringBuilder stringBuilder3 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddDays(-7.0); string arg2 = dateTime.ToString("yyyy-MM-dd"); dateTime = DateTime.Now; dateTime = dateTime.Date; stringBuilder3.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg2, dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.inTwoWeek: { StringBuilder stringBuilder4 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddDays(-14.0); string arg3 = dateTime.ToString("yyyy-MM-dd"); dateTime = DateTime.Now; dateTime = dateTime.Date; stringBuilder4.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg3, dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.inOneMonth: { StringBuilder stringBuilder5 = stringBuilder; dateTime = DateTime.Now; dateTime = dateTime.AddMonths(-1); string arg4 = dateTime.ToString("yyyy-MM-dd"); dateTime = DateTime.Now; dateTime = dateTime.Date; stringBuilder5.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg4, dateTime.ToString("yyyy-MM-dd")); break; } case EnumConsumeTime.custom: if (query.CustomConsumeStartTime.HasValue && query.CustomConsumeEndTime.HasValue) { StringBuilder stringBuilder2 = stringBuilder; dateTime = query.CustomConsumeStartTime.Value; string arg = dateTime.ToString("yyyy-MM-dd"); dateTime = query.CustomConsumeEndTime.Value; stringBuilder2.AppendFormat(" AND (StatisticalDate BETWEEN '{0}' AND '{1}')", arg, dateTime.ToString("yyyy-MM-dd")); } break; } SortAction sortOrder = query.SortOrder; string sortBy = "StatisticalDate"; if (!string.IsNullOrEmpty(query.SortBy)) { sortBy = query.SortBy; } return(DataHelper.PagingByRownumber <WXFansInteractStatisticsInfo>(query.PageIndex, query.PageSize, sortBy, sortOrder, true, "Hishop_WXFansInteractStatistics", "Id", stringBuilder.ToString(), "*,(MsgSendNumbers+MenuClickNumbers) as InteractNumbers,(MsgSendTimes+MenuClickTimes) as InteractTimes")); }
public static IList <WXFansInteractStatisticsInfo> GetWxFansInteractListNoPage(WXFansStatisticsQuery query) { return(new WXFansInteractStatisticsDao().GetWxFansInteractListNoPage(query)); }
public void ExportToExcle(object sender, EventArgs e) { string text = "WXFansInteractReport.xls"; int num = this.hidLastConsumeTime.Value.ToInt(0); if (!Enum.IsDefined(typeof(EnumConsumeTime), num)) { num = 1; } DateTime dateTime = default(DateTime); DateTime dateTime2; if (!DateTime.TryParse(this.hidStartDate.Value, out dateTime)) { dateTime2 = DateTime.Now; dateTime = dateTime2.AddDays(-1.0); } DateTime dateTime3 = default(DateTime); if (!DateTime.TryParse(this.hidEndDate.Value, out dateTime3)) { dateTime2 = DateTime.Now; dateTime3 = dateTime2.AddDays(-1.0); } EnumConsumeTime lastConsumeTime; switch (num) { case 8: if (dateTime3 < dateTime) { this.ShowMsg("错误的时间范围", false); return; } lastConsumeTime = EnumConsumeTime.custom; text = "WXFansInteractReport" + dateTime.ToString("yyyyMMdd") + "-" + dateTime3.ToString("yyyyMMdd") + ".xls"; break; case 4: { dateTime2 = DateTime.Now; dateTime2 = dateTime2.Date; dateTime3 = dateTime2.AddDays(-1.0); dateTime = dateTime3.AddDays(-30.0); lastConsumeTime = EnumConsumeTime.inOneMonth; string[] obj2 = new string[5] { "WXFansInteractReport", dateTime.ToString("yyyyMMdd"), "-", null, null }; dateTime2 = dateTime3.AddDays(-1.0); obj2[3] = dateTime2.ToString("yyyyMMdd"); obj2[4] = ".xls"; text = string.Concat(obj2); break; } case 2: { dateTime2 = DateTime.Now; dateTime2 = dateTime2.Date; dateTime3 = dateTime2.AddDays(-1.0); dateTime = dateTime3.AddDays(-7.0); lastConsumeTime = EnumConsumeTime.inOneWeek; string[] obj = new string[5] { "WXFansInteractReport", dateTime.ToString("yyyyMMdd"), "-", null, null }; dateTime2 = dateTime3.AddDays(-1.0); obj[3] = dateTime2.ToString("yyyyMMdd"); obj[4] = ".xls"; text = string.Concat(obj); break; } default: dateTime2 = DateTime.Now; dateTime2 = dateTime2.Date; dateTime3 = dateTime2.AddDays(-1.0); dateTime2 = DateTime.Now; dateTime2 = dateTime2.Date; dateTime3 = dateTime2.AddDays(-1.0); lastConsumeTime = EnumConsumeTime.yesterday; text = "WXFansInteractReport" + dateTime.ToString("yyyyMMdd") + ".xls"; break; } WXFansStatisticsQuery wXFansStatisticsQuery = new WXFansStatisticsQuery(); wXFansStatisticsQuery.CustomConsumeEndTime = dateTime3; wXFansStatisticsQuery.CustomConsumeStartTime = dateTime; wXFansStatisticsQuery.LastConsumeTime = lastConsumeTime; IList <WXFansInteractStatisticsInfo> wxFansInteractListNoPage = WXFansHelper.GetWxFansInteractListNoPage(wXFansStatisticsQuery); StringBuilder stringBuilder = new StringBuilder(); stringBuilder.AppendLine("<table cellspacing=\"0\" cellpadding=\"5\" rules=\"all\" border=\"1\">"); stringBuilder.AppendLine("<tr style=\"font-weight: bold; white-space: nowrap;\">"); stringBuilder.AppendLine("<td>日期</td>"); stringBuilder.AppendLine("<td>互动人数</td>"); stringBuilder.AppendLine("<td>互动次数</td>"); stringBuilder.AppendLine("<td>菜单点击次数</td>"); stringBuilder.AppendLine("<td>消息发送次数</td>"); stringBuilder.AppendLine("</tr>"); foreach (WXFansInteractStatisticsInfo item in wxFansInteractListNoPage) { stringBuilder.AppendLine("<tr>"); StringBuilder stringBuilder2 = stringBuilder; dateTime2 = item.StatisticalDate; stringBuilder2.AppendLine("<td>" + dateTime2.ToString("yyyy-MM-dd") + "</td>"); stringBuilder.AppendLine("<td style=\"vnd.ms-excel.numberformat:@\">" + item.InteractNumbers + "</td>"); stringBuilder.AppendLine("<td style=\"vnd.ms-excel.numberformat:@\">" + item.InteractTimes + "</td>"); stringBuilder.AppendLine("<td style=\"vnd.ms-excel.numberformat:@\">" + item.MenuClickTimes + "</td>"); stringBuilder.AppendLine("<td style=\"vnd.ms-excel.numberformat:@\">" + item.MsgSendTimes + "</td>"); stringBuilder.AppendLine("</tr>"); } stringBuilder.AppendLine("</table>"); this.Page.Response.Clear(); this.Page.Response.Buffer = false; this.Page.Response.Charset = "UTF-8"; this.Page.Response.AppendHeader("Content-Disposition", ("attachment;filename=" + text) ?? ""); this.Page.Response.ContentEncoding = Encoding.GetEncoding("UTF-8"); this.Page.Response.ContentType = "application/ms-excel"; this.Page.EnableViewState = false; this.Page.Response.Write(stringBuilder.ToString()); this.Page.Response.End(); }
public static PageModel <WXFansInteractStatisticsInfo> GetWxFansInteractList(WXFansStatisticsQuery query) { return(new WXFansInteractStatisticsDao().GetWxFansInteractList(query)); }