/// <summary> /// 用户流失分析报表 /// </summary> /// <param name="filter">条件</param> /// <returns></returns> public StatementResult <ArrayList> CustomersLoseAnalyze(CustomersLoseAnalyzeFilter filter) { if (filter.Day <= 0) { throw new BusinessException("请输入正确的天数!"); } return(StatementDA.CustomersLoseAnalyze(filter)); }
public void TestMethodCustomersLoseAnalyze() { CustomersLoseAnalyzeFilter filter = new CustomersLoseAnalyzeFilter() { PageIndex = 1, PageSize = 10, Day = 90 }; var data = StatementService.Instance.CustomersLoseAnalyze(filter); }
/// <summary> /// 用户流失分析报表 /// </summary> /// <param name="filter">条件</param> /// <returns></returns> public static StatementResult <ArrayList> CustomersLoseAnalyze(CustomersLoseAnalyzeFilter filter) { StatementResult <ArrayList> result = new StatementResult <ArrayList>(); result.ServicePageIndex = filter.ServicePageIndex; result.PageSize = filter.PageSize; PagingInfoEntity page = DataAccessUtil.ToPagingInfo(filter); CustomDataCommand cmd = DataCommandManager.CreateCustomDataCommandFromConfig("CustomersLoseAnalyze"); using (var sqlBuilder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, page, "LogDate ASC")) { sqlBuilder.ConditionConstructor.AddCondition(QueryConditionRelationType.AND, "LogDate", DbType.DateTime, "@LogDate", QueryConditionOperatorType.LessThan, DateTime.Parse(DateTime.Now.AddDays(-1 * filter.Day).ToShortDateString())); cmd.CommandText = sqlBuilder.BuildQuerySql(); result.Result = DbHelper.DatatableConvertArrayList(cmd.ExecuteDataTable()); result.TotalCount = Convert.ToInt32(cmd.GetParameterValue("@TotalCount")); return(result); } }