public IEnumerable <Audit.UserCareers> GetUserCareerList(Audit.UserCareers.Criteria criteria) { var userCareerList = (from career in _zdDBContext.UserCareer.Include(c => c.User).FilterBy(criteria, false) join record in _zdDBContext.AuditRecord.Include(a => a.Operator) on new { CareerId = career.Id.ToString(), AuditType = AuditType.Career.ToValue(), UserIdNotEqualsNull = career.UserId != null } equals new { CareerId = record.AuditId, record.AuditType, UserIdNotEqualsNull = true } into cr from a in cr.DefaultIfEmpty() where string.IsNullOrEmpty(criteria.Auditor) || a.Operator.Name == criteria.Auditor orderby career.UpdateDate descending select new Audit.UserCareers { Id = career.Id, RowId = Guid.NewGuid(), UserID = career.UserId, UserName = career.User.UserName, NickName = career.User.NickName, CareerType = (int)career.CareerType, Status = career.Status, CreateDate = career.CreateDate, UpdateDate = career.UpdateDate ?? null, Company = career.Company, Position = career.Position, CompanyTel = career.CompanyTel, Telphone = career.User.Telphone, CardUrl = career.CardUrl, Auditor = a.Operator.Name, AuditDate = a.AuditDate, ConfirmCareerType = career.User.CareerType, Count = (from p in _zdDBContext.UserCareer where p.UserId == career.UserId select p).Count() }); return(userCareerList .Sort(criteria.SortField, criteria.IsOrderByDesc) .PaginationBy(criteria) .AsNoTracking() .ToList()); }
public IActionResult UserCareerToExcel([FromBody] Audit.UserCareers.Criteria criteria) => File(_userCareerRepo.GetUserCareerList(criteria.SetMaxPagSize()).ToExcel(ExportMappings.UserCareerExportConfig), "application/vnd.ms-excel");
public IActionResult GetCareerList(Audit.UserCareers.Criteria criteria) => TryCatch(() => criteria.PageOf(x => _userCareerRepo.GetUserCareerList(x)));