Esempio n. 1
0
        public IHttpActionResult RecallBook(int id)
        {
            var book = context.Books.Find(id);

            if (book == null)
            {
                return(this.BadRequest("Book doesn't exist."));
            }

            string userId = this.User.Identity.GetUserId();

            var purshase = context.Purshases
                           .FirstOrDefault(p => p.UserId == userId && p.BookId == book.Id);

            if (purshase == null)
            {
                return(this.BadRequest("You don't have this book."));
            }

            if (DateTime.Compare(DateTime.Now, purshase.DateOfPurshase.AddDays(30)) > 0)
            {
                return(this.BadRequest("Date of purshase is more then 30 days."));
            }

            book.Copies++;
            purshase.isRecalled = true;
            context.SaveChanges();

            var viewPurshase = new PurshaseViewModel
            {
                Price          = purshase.Price,
                DateOfPurshase = purshase.DateOfPurshase,
                isRecalled     = purshase.isRecalled,
                User           = this.User.Identity.GetUserName(),
                Book           = purshase.Book.Title
            };

            return(this.Ok(viewPurshase));
        }
Esempio n. 2
0
        public IHttpActionResult BuyBook(int id)
        {
            var book = context.Books.Find(id);

            if (book == null)
            {
                return(this.BadRequest("Book doesn't exist."));
            }

            if (book.Copies < 1)
            {
                return(this.BadRequest("Book is out of stock."));
            }

            string userId   = this.User.Identity.GetUserId();
            var    purshase = new Purshase()
            {
                Price          = book.Price,
                DateOfPurshase = DateTime.Now,
                isRecalled     = false,
                UserId         = userId,
                BookId         = book.Id
            };

            book.Copies--;
            context.Purshases.Add(purshase);
            context.SaveChanges();

            var viewPurshase = new PurshaseViewModel
            {
                Price          = purshase.Price,
                DateOfPurshase = purshase.DateOfPurshase,
                isRecalled     = purshase.isRecalled,
                User           = this.User.Identity.GetUserName(),
                Book           = purshase.Book.Title
            };

            return(this.Ok(viewPurshase));
        }
Esempio n. 3
0
        public IHttpActionResult RecallBook(int id)
        {
            var book = context.Books.Find(id);

            if (book == null)
            {
                return this.BadRequest("Book doesn't exist.");
            }

            string userId = this.User.Identity.GetUserId();

            var purshase = context.Purshases
                .FirstOrDefault(p => p.UserId == userId && p.BookId == book.Id);
            
            if (purshase == null)
            {
                return this.BadRequest("You don't have this book.");
            }
            
            if (DateTime.Compare(DateTime.Now, purshase.DateOfPurshase.AddDays(30)) > 0)
            {
                return this.BadRequest("Date of purshase is more then 30 days.");
            }

            book.Copies++;
            purshase.isRecalled = true;
            context.SaveChanges();

            var viewPurshase = new PurshaseViewModel
            {
                Price = purshase.Price,
                DateOfPurshase = purshase.DateOfPurshase,
                isRecalled = purshase.isRecalled,
                User = this.User.Identity.GetUserName(),
                Book = purshase.Book.Title
            };

            return this.Ok(viewPurshase);
        }
Esempio n. 4
0
        public IHttpActionResult BuyBook(int id)
        {
            var book = context.Books.Find(id);

            if (book == null)
            {
                return this.BadRequest("Book doesn't exist.");
            }

            if (book.Copies < 1)
            {
                return this.BadRequest("Book is out of stock.");
            }

            string userId = this.User.Identity.GetUserId();
            var purshase = new Purshase()
            {
                Price = book.Price,
                DateOfPurshase = DateTime.Now,
                isRecalled = false,
                UserId = userId,
                BookId = book.Id
            };

            book.Copies--;
            context.Purshases.Add(purshase);
            context.SaveChanges();

            var viewPurshase = new PurshaseViewModel
            {
                Price = purshase.Price,
                DateOfPurshase = purshase.DateOfPurshase,
                isRecalled = purshase.isRecalled,
                User = this.User.Identity.GetUserName(),
                Book = purshase.Book.Title
            };

            return this.Ok(viewPurshase);
        }