public async Task <bool> Deal(OfferAcceptRequestModel model)
        {
            var deal = new DealCreateRequestModel
            {
                Title     = model.Title,
                Price     = model.Price,
                ListingId = model.ListingId,
                OfferId   = model.Id,
                SellerId  = model.CreatorId,
                BuyerId   = model.BuyerId
            };

            return(await dealService.Create(deal));
        }
        public async Task <bool> Create(DealCreateRequestModel model)
        {
            var deal = new Deal
            {
                Id        = Guid.NewGuid().ToString(),
                Title     = model.Title,
                BuyerId   = model.BuyerId,
                CreatedOn = DateTime.UtcNow,
                IsDeleted = false,
                ListingId = model.ListingId,
                Price     = model.Price,
                SellerId  = model.SellerId
            };

            var listing = await this.context.Listings.FirstOrDefaultAsync(x => x.Id == model.ListingId);

            listing.IsDeal = true;

            context.Add(deal);
            // context.Listings.Update(listing);

            //var result = await context.SaveChangesAsync();

            var messageData = new ListingAcceptedMessage()
            {
                ListingId = model.OfferId
            };

            var messageId = Guid.NewGuid().ToString();
            var message   = new Message(messageData, messageId);

            await this.Save(listing, message);

            await this.publisher.Publish(messageData);

            return(true);
        }
Exemplo n.º 3
0
 public async Task <ActionResult <bool> > Create(DealCreateRequestModel model) => await
 dealService.Create(model);