コード例 #1
0
 public async Task <ICollection <DailyLiteracyTipImage> > PageAsync(DailyImageFilter filter)
 {
     return(await ApplyFilters(filter)
            .OrderBy(_ => _.Day)
            .ApplyPagination(filter)
            .ProjectTo <DailyLiteracyTipImage>(_mapper.ConfigurationProvider)
            .ToListAsync());
 }
コード例 #2
0
 GetPaginatedImageListAsync(DailyImageFilter filter)
 {
     VerifyManagementPermission();
     return(new DataWithCount <ICollection <DailyLiteracyTipImage> >
     {
         Data = await _dailyLiteracyTipImageRepository.PageAsync(filter),
         Count = await _dailyLiteracyTipImageRepository.CountAsync(filter)
     });
 }
コード例 #3
0
        public async Task <DailyLiteracyTipImage> AddImageAsync(DailyLiteracyTipImage image)
        {
            VerifyManagementPermission();
            var filter = new DailyImageFilter()
            {
                DailyLiteracyTipId = image.DailyLiteracyTipId
            };

            image.Day = await _dailyLiteracyTipImageRepository.CountAsync(filter);

            return(await _dailyLiteracyTipImageRepository.AddSaveAsync(GetClaimId(ClaimType.UserId),
                                                                       image));
        }
コード例 #4
0
        public async Task <DailyLiteracyTipImage> AddImageAsync(DailyLiteracyTipImage image)
        {
            VerifyManagementPermission();
            if (image == null)
            {
                throw new GraException("Unable to add empty image.");
            }
            var filter = new DailyImageFilter()
            {
                DailyLiteracyTipId = image.DailyLiteracyTipId
            };

            image.Day = await _dailyLiteracyTipImageRepository.CountAsync(filter);

            return(await _dailyLiteracyTipImageRepository.AddSaveAsync(GetClaimId(ClaimType.UserId),
                                                                       image));
        }
コード例 #5
0
 private IQueryable <Model.DailyLiteracyTipImage> ApplyFilters(DailyImageFilter filter)
 {
     return(DbSet
            .AsNoTracking()
            .Where(_ => _.DailyLiteracyTipId == filter.DailyLiteracyTipId));
 }
コード例 #6
0
 public async Task <int> CountAsync(DailyImageFilter filter)
 {
     return(await ApplyFilters(filter)
            .CountAsync());
 }