public async Task <DataResult <GroupDto> > GetDataAsync(GroupDataRequestDto groupDataRequest) { var predicate = PredicateBuilder.True <Group>(); if (groupDataRequest.IsActive.HasValue) { predicate = predicate.And(c => c.IsActive == groupDataRequest.IsActive.Value); } if (!string.IsNullOrWhiteSpace(groupDataRequest.Name)) { predicate = predicate.And(c => c.Name.Contains(groupDataRequest.Name)); } var data = await _unitOfWork.GroupRepository.GetWithRequestAsync(groupDataRequest, predicate); var result = new DataResult <GroupDto> { PageIndex = data.PageIndex, PageSize = data.PageSize, TotalCount = data.TotalCount, Result = data.Result.Select(c => new GroupDto { Id = c.Id, IsActive = c.IsActive, Name = c.Name, }).ToList(), }; return(result); }
public async Task <ActionResult <ViewPagingDataResult <GroupDataViewModel> > > GetData (GroupDataRequestDto groupDataRequest) { var data = await _groupService.GetDataAsync(groupDataRequest); var result = new ViewPagingDataResult <GroupDataViewModel> { PageIndex = data.PageIndex, PageSize = data.PageSize, TotalCount = data.TotalCount, Result = data.Result.Select(c => new GroupDataViewModel { Id = c.Id, IsActive = c.IsActive, Name = c.Name, }).ToList(), }; return(result); }