public List <DailyAlertEntity> SearchDailyAlerts(DailyAlertSearchCriteria searchCriteria) { List <DailyAlertEntity> alertsList = new List <DailyAlertEntity>(); string sqlCommand = "dbo.pSearchDailyAlerts"; try { Database db = DatabaseFactory.CreateDatabase("HilltopDatabase"); using (DbCommand cmd = db.GetStoredProcCommand(sqlCommand)) { AddSearchParametersToCommand(db, cmd, searchCriteria); using (IDataReader dataReader = db.ExecuteReader(cmd)) { while (dataReader.Read()) { alertsList.Add(PopulateAlertFromDataReader(dataReader)); } } } } catch (Exception ex) { string exceptionMessages = string.Empty; ExceptionHelper.GetInnerExceptions(ex, out exceptionMessages); string message = "Search Daily Alerts failed at the data access layer" + Environment.NewLine + exceptionMessages; throw new Exception(message); } return(alertsList); }
public List <DailyAlertEntity> SearchDailyAlerts(DailyAlertSearchCriteria searchCriteria) { List <DailyAlertEntity> list = new DailyAlertsDAL().SearchDailyAlerts(searchCriteria); if (list != null && list.Count > 0) { return(list.OrderByDescending(a => a.SortIndex).ThenByDescending(a => a.MaxUseNumeric).ToList()); } return(list); }
private DailyAlertSearchCriteria GetRmoaAlertsSearchCriteria() { DateTime startDate = GetStartDate(txtRmoaStartDate.Text); DailyAlertSearchCriteria searchCriteria = new DailyAlertSearchCriteria(); searchCriteria.StartDate = startDate; if (string.IsNullOrEmpty(txtRmoaStartDate.Text)) { txtRmoaStartDate.Text = String.Format("{0:dd/M/yyyy}", startDate); } else if (!startDate.Equals(DateTime.Parse(txtRmoaStartDate.Text))) { txtRmoaStartDate.Text = String.Format("{0:dd/M/yyyy}", startDate); } searchCriteria.EndDate = ((DateTime)searchCriteria.StartDate).AddDays(6); if (cbxMyAlerts.Checked) { searchCriteria.Username = HttpContext.Current.User.Identity.Name; } return(searchCriteria); }
private void AddSearchParametersToCommand(Database db, DbCommand cmd, DailyAlertSearchCriteria searchCriteria) { AddStringValueAsParameter(db, cmd, "@IncludeAll", searchCriteria.IgnoreAll); if (searchCriteria.StartDate != null && searchCriteria.StartDate.HasValue) { db.AddInParameter(cmd, "@StartDate", DbType.DateTime, searchCriteria.StartDate.Value); } if (searchCriteria.EndDate != null && searchCriteria.EndDate.HasValue) { db.AddInParameter(cmd, "@EndDate", DbType.DateTime, searchCriteria.EndDate.Value); } AddStringValueAsParameter(db, cmd, "@ConsentID", searchCriteria.ConsentID); AddStringValueAsParameter(db, cmd, "@Username", searchCriteria.Username); AddStringValueAsParameter(db, cmd, "@Type", searchCriteria.Type); AddStringValueAsParameter(db, cmd, "@ActivityNumber", searchCriteria.ActivityNumber); }
private DailyAlertSearchCriteria GetAllAlertsSearchCriteria() { DailyAlertSearchCriteria searchCriteria = new DailyAlertSearchCriteria(); if (!string.IsNullOrEmpty(txtStartDate.Text)) { searchCriteria.StartDate = DateTime.Parse(txtStartDate.Text); } else { searchCriteria.StartDate = DateTime.Today.AddDays(-7 - (int)DateTime.Today.DayOfWeek + (int)DayOfWeek.Monday); txtStartDate.Text = string.Format("{0:dd/M/yyyy}", searchCriteria.StartDate); txtRmoaStartDate.Text = String.Format("{0:dd/M/yyyy}", searchCriteria.StartDate); } if (!string.IsNullOrEmpty(txtEndDate.Text)) { searchCriteria.EndDate = DateTime.Parse(txtEndDate.Text); } else { searchCriteria.EndDate = DateTime.Today.AddDays(-(int)DateTime.Today.DayOfWeek + (int)DayOfWeek.Sunday); txtEndDate.Text = String.Format("{0:dd/M/yyyy}", searchCriteria.EndDate); } if (cbxIncludeIgnored.Checked) { searchCriteria.IgnoreAll = "Yes"; } if (cbkMyAllAlerts.Checked) { searchCriteria.Username = HttpContext.Current.User.Identity.Name; } if (!string.IsNullOrEmpty(ddlAllConsents.Text)) { searchCriteria.ConsentID = ddlAllConsents.Text; } return(searchCriteria); }
public DailyAlertEntity CreateFromCSV(DailyAlertEntity alert) { // First check to see if record already exists DailyAlertSearchCriteria searchCriteria = new DailyAlertSearchCriteria(); searchCriteria.ConsentID = alert.ConsentID; searchCriteria.Type = alert.Type; searchCriteria.ActivityNumber = alert.ActivityNumber; searchCriteria.StartDate = alert.RunDate.Date; searchCriteria.EndDate = alert.RunDate.Date; searchCriteria.IgnoreAll = "es"; List <DailyAlertEntity> alerts = SearchDailyAlerts(searchCriteria); if (alerts == null || alerts.Count == 0) { alert = new DailyAlertsDAL().CreateFromCSV(alert); } else { Log.Warn("Alert already exists for ConsentID:[" + alert.ConsentID + "] Type:[" + alert.Type + "] Activity Number:[" + alert.ActivityNumber + "] RunDate:[" + alert.RunDate.ToShortDateString() + "]"); } return(alert); }