// GET: Campaigns/Campaigns public ActionResult Index(CampaignSearchHelper model) { var campaigns = _db.Campaigns.Include(c => c.RelatedCompany); //Search Engine if (!String.IsNullOrEmpty(model.Organization)) { campaigns = campaigns.Where(x => x.RelatedCompany.SubjectName.Contains(model.Organization)); } if (!String.IsNullOrEmpty(model.CampaignName)) { campaigns = campaigns.Where(x => x.CampaignName.Contains(model.CampaignName)); } if (model.CampaignType != null) { var tempType = (Campaign.CampaignTypeEnum)model.CampaignType; campaigns = campaigns.Where(x => x.CampaignType == tempType); } if (model.CampaignStatus != null) { var tempStatus = (Campaign.CampaignStatusEnum)model.CampaignStatus; campaigns = campaigns.Where(x => x.CampaignStatus == tempStatus); } return(View(campaigns.OrderByDescending(c => c.InsertDate))); }
/// <summary> /// Index method where we have all of the campaigns listed /// </summary> /// <param name="model">Search parameters</param> /// <returns>List of campaigns matching search criteria</returns> // GET: Campaigns/Campaigns public ActionResult Index(CampaignSearchHelper model) { var campaigns = _db.Campaigns.Include(c => c.RelatedCompany); //Search Engine if (!String.IsNullOrEmpty(model.Organization)) { campaigns = campaigns.Where(x => x.RelatedCompany.SubjectName.Contains(model.Organization) || x.RelatedCompany.VAT.Contains(model.Organization)); } if (!String.IsNullOrEmpty(model.CampaignName)) { campaigns = campaigns.Where(x => x.CampaignName.Contains(model.CampaignName)); } if (!String.IsNullOrEmpty(model.CampaignInitiator)) { campaigns = campaigns.Where(x => x.CampaignInitiatior.StartsWith(model.CampaignInitiator)); } if (!string.IsNullOrEmpty(model.CampaignStartDate)) { var dateTemp = Convert.ToDateTime(model.CampaignStartDate); campaigns = campaigns.Where(c => c.CampaignStartDate == dateTemp); } if (!string.IsNullOrEmpty(model.ContractStartDate)) { var dateTemp = Convert.ToDateTime(model.ContractStartDate); campaigns = campaigns.Where(c => c.ContractStartDate == dateTemp); } if (model.CampaignType != null) { var tempType = (Campaign.CampaignTypeEnum)model.CampaignType; campaigns = campaigns.Where(x => x.CampaignType == tempType); } if (model.CampaignStatus != null) { if (model.CampaignStatus == 99) { campaigns = campaigns.Where(x => x.CampaignStatus == Campaign.CampaignStatusEnum.Start || x.CampaignStatus == Campaign.CampaignStatusEnum.InProgress); } if (model.CampaignStatus == 98) { campaigns = campaigns.Where(x => x.CampaignStatus == Campaign.CampaignStatusEnum.ReadyForEmailNotification || x.CampaignStatus == Campaign.CampaignStatusEnum.ReadyForEmailNotificationCross || x.CampaignStatus == Campaign.CampaignStatusEnum.CompletedCross); } else { var tempStatus = (Campaign.CampaignStatusEnum)model.CampaignStatus; campaigns = campaigns.Where(x => x.CampaignStatus == tempStatus); } } if (model.CampaignPriority != null) { var priorityTemp = (PriorityEnum)model.CampaignPriority; campaigns = campaigns.Where(x => x.Priority == priorityTemp); } return(View(campaigns.OrderByDescending(c => c.InsertDate))); }