Example #1
0
        public async Task <GetByIdAdResponse> GetById(GetByIdAdRequest request, CancellationToken cancellationToken)
        {
            var ad = await _repository.FindById(request.Id, cancellationToken);

            if (ad == null)
            {
                throw new NoAdFoundException(request.Id);
            }

            var adResponse = _mapper.Map <GetByIdAdResponse>(ad);

            var userId = await _identityService.GetCurrentIdentityUserId(cancellationToken);

            if (userId.Id != null)
            {
                adResponse.OwnerNumber = ad.Owner.Phone;
            }

            ICollection <GetByIdAdPhotoItem> photos = new List <GetByIdAdPhotoItem>();

            foreach (var photo in ad.Photos)
            {
                photos.Add(new GetByIdAdPhotoItem()
                {
                    Id        = photo.Id,
                    KodBase64 = photo.KodBase64
                });
            }
            adResponse.Photos = photos;
            return(adResponse);
        }
        // GET: AdController/Details/5
        public async Task <ActionResult> Details(int id)
        {
            var ads = await _adRepo.FindById(id);

            var model = _mapper.Map <Ad, CreateAdVM>(ads);

            if (model == null)
            {
                return(NotFound());
            }
            return(View(model));
        }
Example #3
0
        public async Task Pay(Pay.Request request, CancellationToken cancellationToken)
        {
            var ad = await _repository.FindById(request.Id, cancellationToken);

            if (ad == null)
            {
                throw new AdNotFoundException(request.Id);
            }

            ad.Status    = Domain.Ad.Statuses.Payed;
            ad.UpdatedAt = DateTime.UtcNow;
            await _repository.Save(ad, cancellationToken);
        }
 public async Task <AdModel> FindById(int id)
 {
     return(await _adRepo.FindById(id));
 }