public JsonResult Datatable(DatatableParam param) { var people = _people.All().Include(p => p.Address); var sessionObject = Session.GetDatatableProperties <Person>(param.DatatableId); var parser = new DatatableParser <Person>(people, sessionObject); return(parser.Parse(param).ToJson()); }
public void SetUp() { _param = new DatatableParam { ColumnsCount = 2, DataProperties = new[] { "Id", "Name" }, DatatableId = "PeopleDatatable", DisplayLength = 10, DisplayStart = 0, Echo = "abc", GlobalRegex = false, GlobalSearch = "", Regex = new[] { false, false }, Search = new string[] { null, null }, Searchable = new[] { false, true }, }; _properties = new IDatatableProperty <Person>[] { new DatatableProperty <Person, string>("Id", person => person.Id), new DatatableProperty <Person, int>("Name", person => person.Name), new DatatableProperty <Person, DateTime>("Birthday", person => person.Birthday, "yyyy-MM-dd") }; }
public JsonResult GetConfirmationMembers(DatatableParam param) { var members = _sacramentRepository.GetConfirmedMembers(); var allItems = new List <ConfirmationTableModel>(); //Apply Searching if (!string.IsNullOrEmpty(param.search.value)) { var searchTerm = param.search.value; members = members.Where(m => m.ConfirmationName.Contains(searchTerm) || m.Number.Contains(searchTerm) || m.Surname.Contains(searchTerm)); } var totalcount = members.Count(); members = members.OrderBy(m => m.DateReceived); //Apply Sorting/Ordering //IEnumerable<UserTableModel> entryTables = allItems; var orderColumnIndex = Convert.ToInt32(param.order[0].column); var orderDir = param.order[0].dir; if (orderDir.Equals("asc")) { if (orderColumnIndex == 1) { members = members.OrderBy(m => m.Number); } if (orderColumnIndex == 2) { members = members.OrderBy(m => m.Surname); } if (orderColumnIndex == 3) { members = members.OrderBy(m => m.ConfirmationName); } } else { if (orderColumnIndex == 1) { members = members.OrderByDescending(m => m.Number); } if (orderColumnIndex == 2) { members = members.OrderByDescending(m => m.Surname); } if (orderColumnIndex == 3) { members = members.OrderByDescending(m => m.ConfirmationName); } } //Apply Pagination //int.TryParse(param., out start); members = members.Skip(param.start).Take(param.length); var count = 0; foreach (var e in members) { count++; allItems.Add(new ConfirmationTableModel() { Id = e.Id, Serial = count, Number = e.Number, Surname = e.Surname, ConfirmationName = e.ConfirmationName, DateReceived = e.DateReceived.ToString("d") }); } return(Json(new { param.draw, recordsFiltered = totalcount, recordsTotal = totalcount, data = allItems, }, JsonRequestBehavior.AllowGet)); }
public JsonResult GetMatrimonyMembers(DatatableParam param) { var members = _sacramentRepository.GetMatrimonyMembers(); var allItems = new List <MatrimonyTableModel>(); //Apply Searching if (!string.IsNullOrEmpty(param.search.value)) { var searchTerm = param.search.value; members = members.Where(m => m.BrideFullName.Contains(searchTerm) || m.GroomFullName.Contains(searchTerm)); } var totalcount = members.Count(); members = members.OrderBy(m => m.Id); //Apply Sorting/Ordering //IEnumerable<UserTableModel> entryTables = allItems; var orderColumnIndex = Convert.ToInt32(param.order[0].column); var orderDir = param.order[0].dir; if (orderDir.Equals("asc")) { /*if (orderColumnIndex == 1) * { * members = members.OrderBy(m => m.BaptismName); * } * if (orderColumnIndex == 2) * { * members = members.OrderBy(m => m.Surname); * } * if (orderColumnIndex == 3) * { * members = members.OrderBy(m => m.Othername); * }*/ } else { /*if (orderColumnIndex == 1) * { * members = members.OrderByDescending(m => m.BaptismName); * } * if (orderColumnIndex == 2) * { * members = members.OrderByDescending(m => m.Surname); * } * if (orderColumnIndex == 3) * { * members = members.OrderByDescending(m => m.Othername); * }*/ } //Apply Pagination //int.TryParse(param., out start); members = members.Skip(param.start).Take(param.length); var count = 0; foreach (var e in members) { count++; allItems.Add(new MatrimonyTableModel { Id = e.Id, Serial = count, BrideFullName = e.BrideFullName, GroomFullName = e.GroomFullName, DateOfMarriage = e.DateOfMarriage, PlaceOfMarriage = e.PlaceOfMarriage }); } return(Json(new { param.draw, recordsFiltered = totalcount, recordsTotal = totalcount, data = allItems, }, JsonRequestBehavior.AllowGet)); }
public JsonResult GetRecentEvents(DatatableParam param) { var events = _eventRepository.GetRecentEvents(); var allItems = new List <EventTableModel>(); //Apply Searching if (!string.IsNullOrEmpty(param.search.value)) { var searchTerm = param.search.value; events = events.Where(m => m.EventName.Contains(searchTerm)); } var totalcount = events.Count(); events = events.OrderBy(m => m.CreateDate); //Apply Sorting/Ordering //IEnumerable<UserTableModel> entryTables = allItems; var orderColumnIndex = Convert.ToInt32(param.order[0].column); var orderDir = param.order[0].dir; if (orderDir.Equals("asc")) { if (orderColumnIndex == 1) { events = events.OrderBy(m => m.EventName); } if (orderColumnIndex == 2) { events = events.OrderBy(m => m.EventDescription); } if (orderColumnIndex == 3) { events = events.OrderBy(m => m.CreateDate); } } else { if (orderColumnIndex == 1) { events = events.OrderByDescending(m => m.EventName); } if (orderColumnIndex == 2) { events = events.OrderByDescending(m => m.EventDescription); } if (orderColumnIndex == 3) { events = events.OrderByDescending(m => m.CreateDate); } } //Apply Pagination //int.TryParse(param., out start); events = events.Skip(param.start).Take(param.length); int count = 0; foreach (var e in events) { count++; allItems.Add(new EventTableModel { Id = count, Name = e.EventName, Description = e.EventDescription.Substring(0, 50) + "...", CreateDate = e.CreateDate.ToString("d") }); } return(Json(new { param.draw, recordsFiltered = totalcount, recordsTotal = totalcount, data = allItems, }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// Initializes a new instance of the <see cref="DatatableSorter{TEntity}" /> class. /// </summary> /// <param name="param"> /// The param. /// </param> /// <param name="properties"> /// The properties. /// </param> public DatatableSorter(DatatableParam param, IDatatableProperty <TEntity>[] properties) { _param = param; _properties = properties; }
public JsonResult GetPosition(DatatableParam param) { var members = _societyRepository.GetPositions(); var allItems = new List <PositionTableModel>(); //Apply Searching if (!string.IsNullOrEmpty(param.search.value)) { var searchTerm = param.search.value; members = members.Where(m => m.PositionName.Contains(searchTerm) || m.PositionDescription.Contains(searchTerm)); } var totalcount = members.Count(); members = members.OrderBy(m => m.PositionName); //Apply Sorting/Ordering //IEnumerable<UserTableModel> entryTables = allItems; var orderColumnIndex = Convert.ToInt32(param.order[0].column); var orderDir = param.order[0].dir; if (orderDir.Equals("asc")) { if (orderColumnIndex == 1) { members = members.OrderBy(m => m.PositionName); } if (orderColumnIndex == 2) { members = members.OrderBy(m => m.PositionDescription); } } else { if (orderColumnIndex == 1) { members = members.OrderByDescending(m => m.PositionName); } if (orderColumnIndex == 2) { members = members.OrderByDescending(m => m.PositionDescription); } } //Apply Pagination //int.TryParse(param., out start); members = members.Skip(param.start).Take(param.length); var count = 0; foreach (var e in members) { count++; allItems.Add(new PositionTableModel { Serial = count, PositionName = e.PositionName, PositionDescription = e.PositionDescription }); } return(Json(new { param.draw, recordsFiltered = totalcount, recordsTotal = totalcount, data = allItems, }, JsonRequestBehavior.AllowGet)); }