Advertisement
kuznets

OrderController.js

Apr 6th, 2017
165
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var bodyParser = require('body-parser');
  2. var db = require('../config/db.js');
  3. var authorize = require(__dirname + '/authorize.js');
  4.  
  5. module.exports = function (app) {
  6.     //Find all orders by username
  7.     app.get('/api/orders', function (req, res) {
  8.         authorize(req)
  9.         .then(function (foundUser) {
  10.             db.orders.findAll({where: {userId: foundUser.id}})
  11.                 .then(function (orders) {
  12.                     res.json({message: 'OK', body: orders});
  13.                 });
  14.         }), function (err) {
  15.             res.status(200).send('User not found');
  16.         }
  17.     });
  18.  
  19.     //Add new order
  20.     app.post('/api/order', function (req, res) {
  21.         authorize(req).then(function (foundUser) {
  22.             var newOrder = {};
  23.             newOrder.startDate = req.body.startDate;
  24.             newOrder.stopDate = req.body.stopDate;
  25.             var parkPriceRate = 1;
  26.             newOrder.price = parkPriceRate;
  27.             var parkTotalMin = (req.body.stopDate - req.body.startDate) / 1000 / 60;
  28.             var parkRegPeriod = parkTotalMin / 30;
  29.             parkRegPeriod = Math.round(parkRegPeriod);
  30.             newOrder.totalPrice = parkRegPeriod * parkPriceRate;
  31.             newOrder.userId = foundUser.id;
  32.             db.orders.create(newOrder).then(function (order) {
  33.                 db.orders.findAll({where: {userId: foundUser.id}})
  34.                     .then(function (orders) {
  35.                         var ordersList = [];
  36.                         orders.forEach(function (item, i, arr) {
  37.                             var order = {};
  38.                             order.id = item['id'];
  39.                             order.startDate = item['startDate'];
  40.                             order.stopDate = item['stopDate'];
  41.                             order.price = item['price'];
  42.                             order.totalPrice = item['totalPrice'];
  43.                             ordersList.push(order);
  44.                         })
  45.                         res.json({message: 'order added', body: ordersList});
  46.                     });
  47.             });
  48.         }), function (err) {
  49.             res.status(200).send('User not found');
  50.         }
  51.     })
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement