public List <AlertStatsEntity> GetStatsForDateRange(AlertStatsCriteria criteria) { List <AlertStatsEntity> stats = new List <AlertStatsEntity>(); string sqlCommand = "dbo.pDailyAlertStats"; try { Database db = DatabaseFactory.CreateDatabase("HilltopDatabase"); using (DbCommand cmd = db.GetStoredProcCommand(sqlCommand)) { AddSearchParametersToCommand(db, cmd, criteria); using (IDataReader dataReader = db.ExecuteReader(cmd)) { while (dataReader.Read()) { stats.Add(PopulateAlertStatsFromDataReader(dataReader)); } } } } catch (Exception ex) { string exceptionMessages = string.Empty; ExceptionHelper.GetInnerExceptions(ex, out exceptionMessages); string message = "Alerts Stats retrieval failed at the data access layer" + Environment.NewLine + exceptionMessages; throw new Exception(message); } return(stats); }
private AlertStatsCriteria GetAlertStatsCriteria() { DateTime startDate = GetStartDate(txtStatsStartDate.Text); AlertStatsCriteria criteria = new AlertStatsCriteria(); criteria.StartDate = startDate; if (string.IsNullOrEmpty(txtStatsStartDate.Text)) { txtStatsStartDate.Text = String.Format("{0:dd/M/yyyy}", startDate); } else if (!startDate.Equals(DateTime.Parse(txtStatsStartDate.Text))) { txtStatsStartDate.Text = String.Format("{0:dd/M/yyyy}", startDate); } criteria.EndDate = ((DateTime)criteria.StartDate).AddDays(6); return(criteria); }
public List <AlertStatsEntity> GetStatsForDateRange(AlertStatsCriteria criteria) { return(new DailyAlertsDAL().GetStatsForDateRange(criteria)); }
private void AddSearchParametersToCommand(Database db, DbCommand cmd, AlertStatsCriteria criteria) { db.AddInParameter(cmd, "@StartDate", DbType.DateTime, criteria.StartDate); db.AddInParameter(cmd, "@EndDate", DbType.DateTime, criteria.EndDate); }