public List <StaffDto> GetList(StaffPara para, out int count) { // var staffs = GetList().Where(a => a.Status < AccountStatus.Obsolete); var p = PredicateBuilder.False <StaffDto>(); if (!string.IsNullOrEmpty(para.Id)) { p = p.Or(s => s.Id.Contains(para.Id)); } if (!string.IsNullOrEmpty(para.RealName)) { p = p.Or(m => m.Name.Contains(para.RealName)); } if (p.Parameters[0].Name.IsNotNullOrEmpty()) { p = PredicateBuilder.True <StaffDto>(); } var staffs = GetList(para.RoleId, para.OrgId).Where(p.Compile()); count = staffs.Count(); var rlt = staffs.OrderByDescending(m => m.CreateDate).Skip(para.PageNumber * para.PageSize).Take(para.PageSize).ToList(); return(rlt); }
/// <summary> /// 获取全部数据 /// </summary> /// <param name="username">账号</param> /// <param name="staffname">用户名</param> /// <param name="page">页数</param> /// <param name="rows">条数</param> /// <returns></returns> public async Task <JsonResult> GetList(string username = "", string staffname = "", int page = 0, int rows = 20) { return(await Task.Run(() => { var para = new StaffPara { Id = username, RealName = staffname, PageNumber = page - 1, PageSize = rows, OrgId = LoginInfo.Org.Id, RoleId = LoginInfo.Role }; var rlt = _staffService.GetList(para, out var count).OrderBy(m => m.Name); var data = rlt.MapTo <IEnumerable <StaffModel> >().ToList(); data.ForEach(m => m.OrgIdDesc = _orgService.Get(m.OrgId)?.Name); var res = new JsonResult(new { total = count, rows = data }); return res; })); }