Пример #1
0
        // 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)));
        }