Ejemplo n.º 1
0
        public async Task <int> AddPropertyOffer(PropertyOfferViewModel model, string userName)
        {
            var user = await _db.Users.FirstAsync(x => x.Email == userName);

            var buyerId    = user.Id;
            var propertyId = model.Id;

            var offer = await _db.PropertyOffers
                        .FirstOrDefaultAsync(x => x.PropertyId == propertyId && x.BuyerId == buyerId);

            if (offer != null)
            {
                offer.PriceOffered = model.PriceOffered;

                return(await _db.SaveChangesAsync());
            }

            offer = new PropertyOffer
            {
                PropertyId   = propertyId,
                BuyerId      = buyerId,
                PriceOffered = model.PriceOffered,
                DateCreated  = DateTime.Now,
            };

            _db.PropertyOffers.Add(offer);

            return(await _db.SaveChangesAsync());
        }
Ejemplo n.º 2
0
        public async Task <ActionResult> MakeOffer(PropertyOfferViewModel model)
        {
            if (ModelState.IsValid)
            {
                var status = await _propertyManager.AddPropertyOffer(model, User.Identity.Name);

                if (status > 0)
                {
                    model.OfferSubmitted = true;
                }
            }

            return(View(model));
        }