public override DbQueryResult GetBalanceDrawRequests(BalanceDrawRequestQuery query) { DbQueryResult result; if (null == query) { result = null; } else { DbQueryResult dbQueryResult = new DbQueryResult(); StringBuilder stringBuilder = new StringBuilder(); string text = UnderlingData.BuildBalanceDrawRequestQuery(query); stringBuilder.AppendFormat("SELECT Top {0} * FROM distro_BalanceDrawRequest B WHERE 0=0", query.PageSize); if (query.PageIndex == 1) { stringBuilder.AppendFormat("{0} ORDER BY RequestTime DESC;", text); } else { stringBuilder.AppendFormat(" AND RequestTime < (SELECT MIN(RequestTime) FROM (SELECT TOP {0} RequestTime FROM distro_BalanceDrawRequest WHERE 0=0 {1} ORDER BY RequestTime DESC ) as T) {1} ORDER BY RequestTime DESC;", (query.PageIndex - 1) * query.PageSize, text); } if (query.IsCount) { stringBuilder.AppendFormat("SELECT COUNT(*) AS Total from distro_BalanceDrawRequest WHERE 0=0 {0}", text); } System.Data.Common.DbCommand sqlStringCommand = this.database.GetSqlStringCommand(stringBuilder.ToString()); using (System.Data.IDataReader dataReader = this.database.ExecuteReader(sqlStringCommand)) { dbQueryResult.Data = DataHelper.ConverDataReaderToDataTable(dataReader); if (query.IsCount && dataReader.NextResult()) { dataReader.Read(); dbQueryResult.TotalRecords = dataReader.GetInt32(0); } } result = dbQueryResult; } return(result); }
public override System.Data.DataTable GetUnderlingStatisticsNoPage(SaleStatisticsQuery query) { System.Data.Common.DbCommand sqlStringCommand = this.database.GetSqlStringCommand(UnderlingData.BuildUnderlingStatisticsQuery(query)); System.Data.DataTable result = null; using (System.Data.IDataReader dataReader = this.database.ExecuteReader(sqlStringCommand)) { result = DataHelper.ConverDataReaderToDataTable(dataReader); } return(result); }
public override System.Data.DataTable GetUnderlingStatistics(SaleStatisticsQuery query, out int total) { System.Data.Common.DbCommand storedProcCommand = this.database.GetStoredProcCommand("cp_MemberStatistics_Get"); this.database.AddInParameter(storedProcCommand, "PageIndex", System.Data.DbType.Int32, query.PageIndex); this.database.AddInParameter(storedProcCommand, "PageSize", System.Data.DbType.Int32, query.PageSize); this.database.AddInParameter(storedProcCommand, "IsCount", System.Data.DbType.Boolean, query.IsCount); this.database.AddInParameter(storedProcCommand, "sqlPopulate", System.Data.DbType.String, UnderlingData.BuildUnderlingStatisticsQuery(query)); this.database.AddOutParameter(storedProcCommand, "TotalProductSales", System.Data.DbType.Int32, 4); System.Data.DataTable result = null; using (System.Data.IDataReader dataReader = this.database.ExecuteReader(storedProcCommand)) { result = DataHelper.ConverDataReaderToDataTable(dataReader); } total = (int)this.database.GetParameterValue(storedProcCommand, "TotalProductSales"); return(result); }