Esempio n. 1
0
        public async Task <OfferModel> Add(UpsertOfferModel model)
        {
            var offer = _mapper.Map <Offer>(model);

            await _repository.Add(offer);

            await _repository.SaveChanges();

            return(_mapper.Map <OfferModel>(offer));
        }
        public void Activate(int id)
        {
            var offer = _offersRepository.GetById(id);

            if (offer == null)
            {
                throw new ArgumentNullException();
            }

            offer.IsActive = true;
            _offersRepository.Update(offer);
            _offersRepository.SaveChanges();
        }
Esempio n. 3
0
        public async Task <OfferCommentModel> Add(Guid offerId, CreateOfferCommentModel model)
        {
            model.UserId = Guid.Parse(_accessor.HttpContext.User.Claims.First(c => c.Type == "userId").Value);
            var comment = _mapper.Map <OfferComment>(model);
            var offer   = await _repository.GetById(offerId);

            offer.AddComment(comment);

            _repository.Update(offer);
            await _repository.SaveChanges();

            return(_mapper.Map <OfferCommentModel>(comment));
        }
Esempio n. 4
0
        public async Task <PhotoModel> Add(Guid offerId, CreatePhotoModel model)
        {
            var offer = await _repository.GetById(offerId);

            using var stream = new MemoryStream();
            await model.Content.CopyToAsync(stream);

            var photo = new Photo(model.Content.FileName, stream.ToArray());

            offer.Photos.Add(photo);

            _repository.Update(offer);

            await _repository.SaveChanges();

            return(_mapper.Map <PhotoModel>(photo));
        }