public PageOfList <LogActionInfo> GetPage(int pageIndex, int?pageSize, SearchCriteria criteria) { IQueryable <LogActionInfo> query = _repository.GetAll(); query = ApplyCriteria(query, criteria); var result = query.GetPage(pageIndex, pageSize ?? PageSize); result.ForEach(FillDiffrences); return(result); }
public LogActionView GetAll(string _keyWords, string _userName, DateTime?_fromDate, DateTime?_toDate, int?_pageIndex, int?_pageSize) { var entitys = _Repository.GetAll(); if (!string.IsNullOrEmpty(_keyWords)) { entitys = entitys.Where(x => x.userAction.ToLower().Contains(_keyWords.ToLower().Trim()) || x.action.Contains(_keyWords.ToLower().Trim())); } if (!string.IsNullOrEmpty(_userName)) { entitys = entitys.Where(x => x.userAction == _userName); } if (_fromDate.HasValue) { entitys = entitys.Where(x => x.createTime >= _fromDate.Value.Date); } if (_toDate.HasValue) { entitys = entitys.Where(x => x.createTime <= _toDate.Value.Date); } entitys = entitys.OrderByDescending(x => x.createTime); int totalRecord = entitys.Count(); if (_pageIndex != null && _pageSize != null) { entitys = entitys.Skip((_pageIndex.Value - 1) * _pageSize.Value); } var totalPage = 0; if (_pageSize != null) { totalPage = (int)Math.Ceiling(1.0 * totalRecord / _pageSize.Value); entitys = entitys.Take(_pageSize.Value); } return(new LogActionView { ViewLogActions = entitys, Total = totalPage }); }