示例#1
0
        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);
        }