|
|
@@ -1,5 +1,6 @@
|
|
|
const Order = require("../models/order.js");
|
|
|
const Merchant = require("../models/merchant.js");
|
|
|
+
|
|
|
const ObjectId = require("mongoose").Types.ObjectId;
|
|
|
const Validator = require("./validator.js");
|
|
|
|
|
|
@@ -148,9 +149,32 @@ module.exports = {
|
|
|
return res.redirect("/");
|
|
|
}
|
|
|
|
|
|
- Order.deleteOne({_id: req.params.id})
|
|
|
+ let merchant = {};
|
|
|
+ let order = {}
|
|
|
+ Merchant.findOne({_id: req.session.user})
|
|
|
+ .then((response)=>{
|
|
|
+ merchant = response;
|
|
|
+ return Order.findOne({_id: req.params.id});
|
|
|
+ })
|
|
|
+ .then((response)=>{
|
|
|
+ order = response;
|
|
|
+
|
|
|
+ return Order.deleteOne({_id: req.params.id})
|
|
|
+ })
|
|
|
.then((response)=>{
|
|
|
- return res.json({});
|
|
|
+ res.json({});
|
|
|
+
|
|
|
+ for(let i = 0; i < order.ingredients.length; i++){
|
|
|
+ for(let j = 0; j < merchant.inventory.length; j++){
|
|
|
+
|
|
|
+ if(order.ingredients[i].ingredient.toString() === merchant.inventory[j].ingredient.toString()){
|
|
|
+ merchant.inventory[j].quantity -= order.ingredients[i].quantity;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return merchant.save();
|
|
|
})
|
|
|
.catch((err)=>{
|
|
|
return res.json("ERROR: UNABLE TO REMOVE ORDER");
|