public IActionResult CreateAuction([FromBody] CreateAuctionInputModel model)
        {
            var id = this.mainService.CreateAuction(model);

            if (id == 0)
            {
                return(this.NotFound("The token doesn't exist."));
            }

            if (id == -1)
            {
                return(this.NotFound("The address doesn't exist."));
            }

            return(this.Ok(id));
        }
Example #2
0
        public int CreateAuction(CreateAuctionInputModel auction)
        {
            var span     = DateTime.Parse(auction.EndDate).Subtract(DateTime.Parse(auction.StartDate));
            var duration = (long)span.TotalMinutes;

            var newAuction = new Auction()
            {
                StartDate    = DateTime.Parse(auction.StartDate),
                EndDate      = DateTime.Parse(auction.EndDate),
                CurrentPrice = auction.StartPrice,
                StartPrice   = auction.StartPrice,
                Duration     = duration,
                IsActive     = 1,
                EndPrice     = 0
            };

            var token = db.Tokens.FirstOrDefault(c => c.Id == auction.TokenId);

            if (token == null)
            {
                return(0);
            }

            var address = db.Addresses.FirstOrDefault(c => c.Id == auction.AddressId);

            if (address == null)
            {
                return(-1);
            }

            newAuction.Token   = token;
            newAuction.Address = address;
            db.Add(newAuction);
            db.SaveChanges();

            return(newAuction.Id);
        }