public async Task <PagedResultDto <VipPointRecordListDto> > GetVipPointRecordList(GetVipPointRecordInput input) { var vipPointRecord = _pointRecordRepository.GetAll() .Where(u => u.VipId == input.VipId); var vipPointRecordCount = await vipPointRecord.CountAsync(); var vipPointRecordList = await vipPointRecord .OrderBy(input.Sorting) .PageBy(input) .ToListAsync(); var vipPointRecordListDto = vipPointRecordList.MapTo <List <VipPointRecordListDto> >(); return(new PagedResultDto <VipPointRecordListDto>( vipPointRecordCount, vipPointRecordListDto )); }
public async Task <PagedResultDto <VipPointRecordListDto> > GetSendPointRecordList(GetVipPointRecordInput input) { var addMan = AsyncHelper.RunSync(() => UserManager.GetUserByIdAsync((long)AbpSession.UserId)).Name; var vipPointRecord = _pointRecordRepository.GetAll() .Where(u => u.AddMan == addMan && u.AddTime >= DbFunctions.TruncateTime(DateTime.Now)); var query = from v in vipPointRecord join c in _vipRepository.GetAll() on v.VipId equals c.Id select new { v, c = c == null ? null : new { c.Id, c.VipCode } }; var vipPointRecordCount = await query.CountAsync(); var vipPointRecordList = await query .OrderBy("v.AddTime DESC") .PageBy(input) .ToListAsync(); var vipPointRecordListDto = vipPointRecordList.Select(s => s.v).MapTo <List <VipPointRecordListDto> >(); vipPointRecordListDto = vipPointRecordListDto.Select(v => { var dto = v; dto.VipCode = vipPointRecordList.Select(s => s.c) .Where(w => w.Id == v.VipId) .Select(si => si.VipCode) .FirstOrDefault(); return(dto); }).ToList(); return(new PagedResultDto <VipPointRecordListDto>( vipPointRecordCount, vipPointRecordListDto )); }