public async Task <PopularResult <PagedResultDto <UnitDto> > > GetListAsync(UnitQueryDto dto) { var result = new PopularResult <PagedResultDto <UnitDto> >(); var queryAble = _unitRepository.Where(x => x.IsDelete == 0) .WhereIf(!dto.Name.IsNullOrWhiteSpace(), unit => unit.Name.Contains(dto.Name)) .WhereIf(!dto.InteriorCode.IsNullOrWhiteSpace(), unit => unit.InteriorCode.Contains(dto.InteriorCode)); var units = await AsyncExecuter.ToListAsync(queryAble.PageBy(dto.SkipCount, dto.MaxResultCount)); var totalCount = await AsyncExecuter.CountAsync(queryAble); var dtos = ObjectMapper.Map <List <UnitEntity>, List <UnitDto> >(units); result.Success(new PagedResultDto <UnitDto>(totalCount, dtos)); return(result); }
public async Task <PopularResult <byte[]> > GetBytesAsync(UnitQueryDto dto) { var result = new PopularResult <byte[]>(); var queryAble = _unitRepository .WhereIf(!dto.Name.IsNullOrWhiteSpace(), unit => unit.Name.Contains(dto.Name)) .WhereIf(!dto.InteriorCode.IsNullOrWhiteSpace(), unit => unit.InteriorCode.Contains(dto.InteriorCode)); var units = await AsyncExecuter.ToListAsync(queryAble); //转换为导出对象 var dtos = ObjectMapper.Map <List <UnitEntity>, List <UnitDto> >(units); var stream = EPPlusHelper.GetMemoryStream(dtos); result.Success(stream.ToArray()); return(result); }