Advertisement
Guest User

Untitled

a guest
Dec 10th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. const mongoose = require('mongoose');
  2. const Reservation = require('../models/reservation');
  3. const Book = require('../models/book');
  4. const BookController = require('../controllers/books');
  5.  
  6. exports.reservations_create_reservation = (req, res, next) => {
  7. Book.findById(req.body.bookId)
  8. .then(book=>{
  9. if(!book){
  10. return res.status(404).json({
  11. message: "Book not found"
  12. });
  13. }
  14. if(book.isHired == 1){
  15. return res.status(439).json({
  16. message: "Book is already reserved"
  17. });
  18. }
  19. Book.findOneAndUpdate({_id: req.body._id},{$set:{isHired: 1}})
  20. .exec()
  21. .then(r=>{
  22. const reservation = new Reservation({
  23. _id: mongoose.Types.ObjectId(),
  24. quantity: req.body.quantity,
  25. book: req.body.bookId
  26. });
  27. reservation.save().then(n=>{
  28. res.status(201).json({
  29. message: 'Reservation stored',
  30. createdReservatrion:{
  31. _id: result._id,
  32. book: result.book,
  33. quantity: result.quantity
  34. },
  35. request: {
  36. type: 'GET',
  37. url: 'http://localhost:3000/reservations/' + result._id
  38. }
  39. });
  40. });
  41. });
  42. })
  43. .catch(err => {
  44. console.log(err);
  45. res.status(500).json({
  46. error: err
  47. });
  48. });
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement