public JsonResult GetMasterCampaignListByPage([ModelBinder(typeof(DataTablesBinder))] IDataTablesRequest requestmodel) { var masterList = _masterCampaignServices.GetOrderedMasterCampaign().Where(x => x.IsActive == true); //var filteredData = masterList.Where(_item => _item.Name.ToLower().StartsWith(requestmodel.Search.Value.ToLower())); //var result = masterList.Skip(requestmodel.Start).Take(requestmodel.Length); Util util = new Util(); var data = !String.IsNullOrEmpty(requestmodel.Search.Value) ? masterList.Where(_item => _item.Name.ToLower().StartsWith(requestmodel.Search.Value.ToLower())) : masterList.Skip(requestmodel.Start).Take(requestmodel.Length); List <MasterCampaignViewModelListing> masterCampaignList = (from campaign in data.ToList() where campaign.IsActive == true select new MasterCampaignViewModelListing { DigitalID = string.Format("M{0}", util.DigitalId(campaign.Id).PadLeft(5, '0')), Id = string.Format("M{0}", campaign.Id.ToString("0000000")), Name = campaign.Name, CampaignManager = campaign.CampaignManager, CreatedBy = campaign.CreatedBy, InheritStatus = campaign.InheritStatus, CampaignDescription = campaign.CampaignDescription, Status = campaign.Status, StartDate = String.Format("{0:dd MMM yyyy}", campaign.StartDate), EndDate = String.Format("{0:dd MMM yyyy}", campaign.EndDate) } ).ToList(); return(Json(new DataTablesResponse(requestmodel.Draw, masterCampaignList, !String.IsNullOrEmpty(requestmodel.Search.Value) ? data.Count() : masterList.Count(), !String.IsNullOrEmpty(requestmodel.Search.Value) ? data.Count() : masterList.Count()), JsonRequestBehavior.AllowGet)); }
public ActionResult ChildCampaign(int Id = 0) { ChildCampaignViewModel Childvm = new ChildCampaignViewModel(); Childvm.MasterViewModels = _masterCampaignServices.GetOrderedMasterCampaign().Where(t => t.Status == Status.Complete.ToString()).ToList(); if (Id != 0) { ChildCampaign childCampaign = _childCampaignServices.GetChildCampaignById(new ChildCampaignViewModel { Id = Id }).First(); Childvm.SubCampaignBudgetingDetailViewModels = _childCampaignServices.GetSubCampaignBudgetingDetails(Id).ToList(); //List<TacticCampaign> tacticList = _tacticCampaignServices.GetTacticCampaignByChildId(Id).ToList(); //var Inheritanceflag=0; //foreach (var itemtacticList in tacticList) //{ // if (itemtacticList.Status != Status.Complete.ToString() && (itemtacticList.EndDate>DateTime.Now)) // Inheritanceflag = 1; //} //if (tacticList.Count == 0) //{ // Childvm.InheritanceStatus = childCampaign.InheritStatus; //} //else if (Inheritanceflag== 0) { Childvm.InheritanceStatus = InheritStatus.Complete.ToString(); } //else { Childvm.InheritanceStatus = InheritStatus.Active.ToString(); } if (childCampaign.MasterCampaigns.Id != 0) { List <MasterCampaign> masterChild = _masterCampaignServices.GetMasterCampaignById(childCampaign.MasterCampaigns.Id); foreach (var item in masterChild) { if (Childvm.CampaignTypes == 0) { Childvm.BusinessGroupViewModels = Childvm.BusinessGroupViewModels.Concat(item.BusinessGroups).ToList(); Childvm.SegmentViewModels = item.Segments.ToList(); } else { Childvm.BusinessGroupViewModels = item.BusinessGroups.ToList(); Childvm.SegmentViewModels = Childvm.SegmentViewModels.Concat(item.Segments).ToList(); } Childvm.GeographyViewModels = item.Geographys.ToList(); Childvm.ThemeViewModels = item.Themes.ToList(); Childvm.BusinessLineViewModels = item.BusinessLines.ToList(); Childvm.IndustryViewModels = item.Industries.ToList(); Childvm.MCStartDate = item.StartDate; Childvm.MCEndDate = item.EndDate; } } if (childCampaign.MasterCampaigns != null && childCampaign.MasterCampaigns.Id != 0) { Childvm.MasterCampaignId = childCampaign.MasterCampaigns.Id; } if (childCampaign.Themes != null && childCampaign.Themes.Count > 0) { Childvm.Themes_Id = childCampaign.Themes.Select(t => t.Id).ToArray();; } if (childCampaign.BusinessGroups != null && childCampaign.BusinessGroups.Count > 0) { Childvm.BusinessGroups_Id = childCampaign.BusinessGroups.Select(t => t.Id).ToArray();; } if (childCampaign.BusinessLines != null && childCampaign.BusinessLines.Count > 0) { Childvm.BusinessLines_Id = childCampaign.BusinessLines.Select(t => t.Id).ToArray();; } if (childCampaign.Segments != null && childCampaign.Segments.Count > 0) { Childvm.Segments_Id = childCampaign.Segments.Select(t => t.Id).ToArray();; } if (childCampaign.Geographys != null && childCampaign.Geographys.Count > 0) { Childvm.Geographys_Id = childCampaign.Geographys.Select(t => t.Id).ToArray();; } if (childCampaign.Industries != null && childCampaign.Industries.Count > 0) { Childvm.Industries_Id = childCampaign.Industries.Select(t => t.Id).ToArray();; } Childvm.Name = childCampaign.Name; Childvm.CampaignDescription = childCampaign.CampaignDescription; Childvm.CampaignManager = childCampaign.CampaignManager; Childvm.Budget = childCampaign.Budget; Childvm.StartDate = childCampaign.StartDate; Childvm.EndDate = childCampaign.EndDate; Childvm.Spend = childCampaign.Spend; Childvm.Id = childCampaign.Id; Childvm.Status = childCampaign.Status; Childvm.MILGoal = childCampaign.MILGoal; Childvm.MILLow = childCampaign.MILLow; Childvm.MILHigh = childCampaign.MILHigh; Childvm.MGLGoal = childCampaign.MGLGoal; Childvm.MGLLow = childCampaign.MGLLow; Childvm.MGLHigh = childCampaign.MGLHigh; Childvm.MIOGoal = childCampaign.MIOGoal; Childvm.MIOLow = childCampaign.MIOLow; Childvm.MIOHigh = childCampaign.MIOHigh; Childvm.MGOGoal = childCampaign.MGOGoal; Childvm.MGOLow = childCampaign.MGOLow; Childvm.MGOHigh = childCampaign.MGOHigh; Childvm.MILSource = childCampaign.MILSource; Childvm.MGLSource = childCampaign.MGLSource; Childvm.MIOSource = childCampaign.MIOSource; Childvm.MGOSource = childCampaign.MGOSource; Childvm.CampaignTypes = (childCampaign.CampaignType == 0 ? CampaignType.BG_Led : CampaignType.GEPS); Childvm.BusinessLineId = childCampaign.BusinessLineId; var MasterCampaignName = string.Empty; foreach (var val in Childvm.MasterViewModels) { if (val.Id == childCampaign.MasterCampaigns.Id) { MasterCampaignName = val.Name; } } Childvm.InheritanceStatus = childCampaign.InheritStatus; Childvm.StatusInheritaceStamp = String.Format("{0:yy}", childCampaign.UpdatedDate) + "." + MasterCampaignName + "." + Childvm.Name + " //" + (Childvm.Status == Status.Draft.ToString()?Status.Draft.ToString():Childvm.InheritanceStatus) + " // " + String.Format("{0:ddMMyy HH:MM}", childCampaign.UpdatedDate); ManageSelectUnselect(Childvm); //Update visited date if (Childvm.Status == Status.Draft.ToString()) { childCampaign.VisitedDate = DateTime.Now; _childCampaignServices.Update(childCampaign); } } return(View(Childvm)); }
public ActionResult TacticCampaign(int Id = 0) { TacticCampaignViewModel tacticvm = new TacticCampaignViewModel(); tacticvm.JourneyStageViewModels = _journeyStageServices.GetJourneyStage().ToList(); var ttList = _tacticCampaignServices.GetTacticType().ToList(); tacticvm.TacticTypeViewModels = tacticvm.TacticTypeViewModels.Concat(ttList).ToList(); tacticvm.MasterViewModels = _masterCampaignServices.GetOrderedMasterCampaign().Where(t => t.Status == Status.Complete.ToString() && t.ChildCampaigns.Where(r => r.Status != Status.Draft.ToString()).ToList().Count != 0).ToList(); tacticvm.Medium = _digitalTouchpoint.GetMedium(); tacticvm.Source = _digitalTouchpoint.GetSource(); if (Id == 0) { tacticvm.BusinessGroupViewModels = (new[] { new BusinessGroup() }); tacticvm.SegmentViewModels = (new[] { new Segment() }); tacticvm.MetricReachViewModels = _metricReachServices.GetAllMetricReach().ToList(); tacticvm.MetricResponseViewModels = _metricResponseServices.GetAllMetricResponse().ToList(); return(View(tacticvm)); } if (Id != 0) { TacticCampaign tacticCampaign = _tacticCampaignServices.GetTacticCampaignById(new TacticCampaignViewModel { Id = Id }).First(); tacticvm.ChildCampaignViewModels = _childCampaignServices.GetChildCampaignByMasterId(tacticCampaign.ChildCampaigns.MasterCampaigns.Id).Where(t => t.Status == Status.Complete.ToString()).ToList(); if (tacticCampaign.ChildCampaigns.Id != 0) { List <ChildCampaign> childCampaign = _childCampaignServices.GetDDLValuesByChildId(tacticCampaign.ChildCampaigns.Id); foreach (var item in childCampaign) { if (item.CampaignType == 0) { tacticvm.BusinessGroupViewModels = tacticvm.BusinessGroupViewModels.Concat(item.BusinessGroups).ToList(); tacticvm.SegmentViewModels = item.Segments.ToList(); } else { tacticvm.BusinessGroupViewModels = item.BusinessGroups.ToList(); tacticvm.SegmentViewModels = tacticvm.SegmentViewModels.Concat(item.Segments).ToList(); } tacticvm.ThemeViewModels = item.Themes.ToList(); tacticvm.GeographyViewModels = item.Geographys.ToList(); tacticvm.BusinessLineViewModels = item.BusinessLines.ToList(); tacticvm.IndustryViewModels = item.Industries.ToList(); tacticvm.MCStartDate = item.StartDate; tacticvm.MCEndDate = item.EndDate; } } else { tacticvm.IndustryViewModels = _industryService.GetIndustry().ToList(); tacticvm.BusinessGroupViewModels = _businessgroupService.GetBG().ToList(); tacticvm.BusinessLineViewModels = _businesslineService.GetBusinessLine().ToList(); tacticvm.SegmentViewModels = _segmentService.GetSegment().ToList(); tacticvm.ThemeViewModels = _themeService.GetTheme().ToList(); tacticvm.GeographyViewModels = _geographyService.GetGeography().ToList(); } if (tacticCampaign.ChildCampaigns.MasterCampaigns != null && tacticCampaign.ChildCampaigns.MasterCampaigns.Id != 0) { tacticvm.MasterCampaign_Id = tacticCampaign.ChildCampaigns.MasterCampaigns.Id; } if (tacticCampaign.ChildCampaigns != null && tacticCampaign.ChildCampaigns.Id != 0) { tacticvm.ChildCampaign_Id = tacticCampaign.ChildCampaigns.Id; } if (tacticCampaign.Themes != null && tacticCampaign.Themes.Count > 0) { tacticvm.Themes_Id = tacticCampaign.Themes.Select(t => t.Id).ToArray();; } if (tacticCampaign.BusinessGroups != null && tacticCampaign.BusinessGroups.Count > 0) { tacticvm.BusinessGroups_Id = tacticCampaign.BusinessGroups.Select(t => t.Id).ToArray();; } if (tacticCampaign.BusinessLines != null && tacticCampaign.BusinessLines.Count > 0) { tacticvm.BusinessLines_Id = tacticCampaign.BusinessLines.Select(t => t.Id).ToArray();; } if (tacticCampaign.Segments != null && tacticCampaign.Segments.Count > 0) { tacticvm.Segments_Id = tacticCampaign.Segments.Select(t => t.Id).ToArray();; } if (tacticCampaign.Industries != null && tacticCampaign.Industries.Count > 0) { tacticvm.Industries_Id = tacticCampaign.Industries.Select(t => t.Id).ToArray();; } if (tacticCampaign.Geographys != null && tacticCampaign.Geographys.Count > 0) { tacticvm.Geographys_Id = tacticCampaign.Geographys.Select(t => t.Id).ToArray();; } if (tacticCampaign.TacticTypes != null && tacticCampaign.TacticTypes.Count > 0) { tacticvm.TacticType_Id = tacticCampaign.TacticTypes.Select(t => t.Id).ToArray();; } tacticvm.TacticType = tacticCampaign.TacticType; tacticvm.JournetStage_Id = tacticCampaign.JourneyStage_Id; tacticvm.Id = tacticCampaign.Id; tacticvm.Name = tacticCampaign.Name; tacticvm.TacticDescription = tacticCampaign.TacticDescription; tacticvm.StartDate = tacticCampaign.StartDate; tacticvm.EndDate = tacticCampaign.EndDate; tacticvm.Status = tacticCampaign.Status; tacticvm.Vendor = tacticCampaign.Vendor; tacticvm.Year = tacticCampaign.Year; tacticvm.Status = tacticCampaign.Status; tacticvm.MasterCampaign_Id = tacticCampaign.MasterCampaign_Id; var MasterCampaignName = string.Empty; var ChildCampaignName = string.Empty; foreach (var val in tacticvm.MasterViewModels) { if (val.Id == tacticCampaign.MasterCampaign_Id) { MasterCampaignName = val.Name; } } foreach (var val in tacticvm.ChildCampaignViewModels) { if (val.Id == tacticCampaign.ChildCampaigns.Id) { ChildCampaignName = val.Name; } } if (Tacticvm.EndDate < DateTime.Now) { tacticCampaign.InheritStatus = Status.Complete.ToString(); } tacticvm.StatusInheritaceStamp = String.Format("{0:yy}", tacticCampaign.UpdatedDate) + "." + MasterCampaignName + "." + ChildCampaignName + " //" + ((tacticvm.Status == Status.Complete.ToString() && (tacticvm.EndDate < DateTime.Now)) ? Status.Complete.ToString() : tacticvm.Status) + " // " + String.Format("{0:ddMMyy HH:MM}", tacticCampaign.UpdatedDate); tacticvm.MetricReachViewModels = _metricReachServices.GetAllMetricReach().ToList(); tacticvm.MetricResponseViewModels = _metricResponseServices.GetAllMetricResponse().ToList(); tacticvm.TacticCampaignReachResponseViewModels = tacticCampaign.TacticCampaignReachResponses.ToList(); //Update visited date if (tacticvm.Status == Status.Draft.ToString()) { tacticCampaign.VisitedDate = DateTime.Now; _tacticCampaignServices.Update(tacticCampaign); } } return(View(tacticvm)); }