public virtual PageDataOutputDto <RoleDto> GetPage(RolePageInputDto vm) { PageDataOutputDto <RoleDto> pageData = null; using (var db = this.GetContext()) { var query = from q in db.Role where q.IsDelete == false select new RoleDto { Id = q.Id, IsSystem = q.IsSystem, Name = q.Name, CreateTime = q.CreateTime, UpdateTime = q.UpdateTime }; if (!string.IsNullOrEmpty(vm.Id)) { query = query.Where(q => q.Id == vm.Id); } if (!string.IsNullOrEmpty(vm.Keyword)) { var value = vm.Keyword.DbLike(DbLikeType.All); query = query.Where(q => EF.Functions.Like(q.Name, value)); } pageData = query.ToPage(vm); } return(pageData); }
public static PageDataOutputDto <T> ToPage <T>(this IQueryable <T> query, PageDataInputDto param, string defaultOrderby = "Id") { if (param == null) { throw new ArgumentNullException(nameof(param)); } if (param.PageIndex < 1) { throw new ArgumentException(nameof(param.PageIndex)); } if (param.PageSize < 1) { throw new ArgumentException(nameof(param.PageSize)); } var orderby = GetOrderby <T>(param.Orderby, defaultOrderby); var vm = new PageDataOutputDto <T>(); vm.TotalCount = query.Count(); query = query.OrderBy(orderby); if (param.PageIndex > 1) { query = query.Skip((param.PageIndex - 1) * param.PageSize); } vm.Data = query.Take(param.PageSize).ToList(); return(vm); }
public virtual PageDataOutputDto <UserDto> GetPageData(UserPageInputDto vm) { PageDataOutputDto <UserDto> pageData = null; using (var db = this.GetContext()) { var query = from q in db.User where q.IsDelete == false select new UserDto { Id = q.Id, Account = q.Account, Name = q.Name, //Password = q.Password, RoleId = q.RoleId, Mail = q.Mail, Mobile = q.Mobile, Status = q.Status, IsSystem = q.IsSystem, UpdateTime = q.UpdateTime, CreateTime = q.CreateTime }; if (!string.IsNullOrEmpty(vm.RoleId)) { query = query.Where(q => q.RoleId == vm.RoleId); } if (vm.Status.HasValue) { var status = vm.Status.Value; query = query.Where(q => q.Status == status); } if (!string.IsNullOrEmpty(vm.Keyword)) { var value = vm.Keyword.DbLike(DbLikeType.All); query = query.Where(q => EF.Functions.Like(q.Account, value) || EF.Functions.Like(q.Name, value) || EF.Functions.Like(q.Mobile, value) || EF.Functions.Like(q.Mail, value)); } pageData = query.ToPage(vm); } return(pageData); }
public ActionResult GetPageList(LogPageInputDto vm) { if (vm != null && this.ModelState.IsValid) { PageDataOutputDto <LogFileOutputDto> pageData = new PageDataOutputDto <LogFileOutputDto>(); var path = LogUtils.GetLogDir(vm.Name); if (!string.IsNullOrEmpty(path) && System.IO.Directory.Exists(path)) { var dir = new System.IO.DirectoryInfo(path); var files = dir.EnumerateFiles(); if (vm.BeginTime.HasValue) { files = files.Where(q => q.CreationTime >= vm.BeginTime.Value); } if (vm.EndTime.HasValue) { files = files.Where(q => q.CreationTime <= vm.EndTime.Value); } pageData.TotalCount = files.Count(); files = files.OrderByDescending(q => q.CreationTime); if (vm.PageIndex > 1) { files = files.Skip(vm.PageSize * (vm.PageIndex - 1)); } pageData.Data = files.Take(vm.PageSize).Select(q => new LogFileOutputDto { Name = q.Name, Size = GetSize(q.Length), CreateTime = q.CreationTime.ToString("yyyy-MM-dd HH:mm:ss"), UpdateTime = q.LastWriteTime.ToString("yyyy-MM-dd HH:mm:ss") }).ToList(); } return(Success(pageData)); } return(Error("请求参数不正确!")); }