/// <summary> /// Post Method to Load Dashboard grid /// </summary> /// <param name="sidx">the index id to be used in sorting</param> /// <param name="sord"> the sort order either ASC or DESC</param> /// <param name="page">the current page number</param> /// <param name="rows">the number of rows expected in the </param> /// <returns>as defined by the rowNum option or as selected by the user</returns> public JsonResult GetCampaignDashboardData(string sidx, string sord, int page, int rows, bool _search, string searchField, string searchOper, string searchString) { List <ACM.Model.Campaign> AcmCampaigns = new List <ACM.Model.Campaign>(); string loginId = Utility.LoginId(User.Identity.Name); AcmCampaigns = campaignServiceClient.GetCampaignDashboard(loginId, "Active"); if (_search) { if (searchField == "CampaignId") { int field = 0; if (int.TryParse(searchString, out field)) { AcmCampaigns = AcmCampaigns.Where(x => x.CampaignId.Equals(field)).ToList(); } } else if ("CampaignName" == searchField) { AcmCampaigns = AcmCampaigns.Where(x => x.CampaignName.Contains(searchString)).ToList(); } } switch (sidx.Trim()) { case "CampaignId": AcmCampaigns = (sord == "asc") ? AcmCampaigns.OrderBy(i => i.CampaignId).ToList() : AcmCampaigns.OrderByDescending(i => i.CampaignId).ToList(); break; case "CampaignName": AcmCampaigns = (sord == "asc") ? AcmCampaigns.OrderBy(i => i.CampaignName).ToList() : AcmCampaigns.OrderByDescending(i => i.CampaignName).ToList(); break; default: AcmCampaigns = (sord == "asc") ? AcmCampaigns.OrderBy(i => i.CampaignName).ToList() : AcmCampaigns.OrderByDescending(i => i.CampaignName).ToList(); break; } var totalRecords = AcmCampaigns.Count(); var assets = from a in AcmCampaigns select new { CampaignId = a.CampaignId, CampaignName = a.CampaignName, PendingTasks = "", PriorityList = "", Regions = "", States = "" }; var result = new { total = (totalRecords + rows - 1) / rows, //number of pages page = page, //current page records = totalRecords, //total items rows = assets.AsEnumerable().Skip((page - 1) * rows).Take(rows) }; return(Json(result, JsonRequestBehavior.AllowGet)); }
public ActionResult CampaignDashboard() { List <ACM.Model.Campaign> AcmCampaigns = new List <ACM.Model.Campaign>(); string loginId = Utility.LoginId(User.Identity.Name); AcmCampaigns = clientBO.GetCampaignDashboard(loginId, "Active"); return(View(AcmCampaigns)); }