Merge branch 'dev' of https://github.com/kfnawaz/plaidware-wms-core into dev
This commit is contained in:
@@ -1,9 +1,7 @@
|
||||
const mongoose = require("mongoose");
|
||||
|
||||
const Inventory = require("../models/Inventory");
|
||||
const WidgetFamily = require("../models/WidgetFamily");
|
||||
const { InventoryTypes } = require("../config/constants");
|
||||
const { S3 } = require("./../config/aws");
|
||||
|
||||
module.exports = {
|
||||
/**
|
||||
@@ -191,31 +189,16 @@ module.exports = {
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* Fetch all available inventories
|
||||
*/
|
||||
getInventories: async (req, res, next) => {
|
||||
let { page, perPage } = req.query;
|
||||
page = page ? parseInt(page) : 0;
|
||||
perPage = perPage ? parseInt(perPage) : 10;
|
||||
deleteInventoryByID: async (req, res, next) => {
|
||||
const { id } = req.params;
|
||||
if (!id || !mongoose.isValidObjectId(id)) {
|
||||
res.status(400).send({ success: false, error: "Missing/Invalid inventory id" });
|
||||
}
|
||||
try {
|
||||
const inventoryData = await Inventory.find(
|
||||
{ },
|
||||
{ id: 1, name: 1, type: 1 },
|
||||
{ skip: parseInt(page) * parseInt(perPage), limit: parseInt(perPage) }
|
||||
);
|
||||
if (!inventoryData) {
|
||||
res.status(404);
|
||||
return;
|
||||
}
|
||||
|
||||
for (const inventory of inventoryData) {
|
||||
inventory["widgetFamilies"] = await WidgetFamily.find({ inventory: inventory._id });
|
||||
}
|
||||
|
||||
res.send({ success: true, data: inventoryData });
|
||||
await Inventory.deleteOne({ _id: id });
|
||||
res.send({ success: true, error: "Inventory Successfully deleted" });
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
@@ -37,4 +37,9 @@ router.get("/all", controller.getInventories);
|
||||
*/
|
||||
router.get("/:id", controller.getInventoryByID);
|
||||
|
||||
/**
|
||||
* @route /inventory/:id
|
||||
*/
|
||||
router.delete("/:id", controller.deleteInventoryByID);
|
||||
|
||||
module.exports = router;
|
||||
|
||||
@@ -179,6 +179,18 @@ module.exports = {
|
||||
}
|
||||
}
|
||||
|
||||
// Policies Metadata
|
||||
if (!req.body.policiesMetadata) {
|
||||
req.body.policiesMetadata = {};
|
||||
}
|
||||
|
||||
itemData.policiesMetadata = {
|
||||
underStockLevelCount: req.body.policiesMetadata.underStockLevelCount || itemData.policiesMetadata.underStockLevelCount,
|
||||
overStockLevelCount: req.body.policiesMetadata.overStockLevelCount || itemData.policiesMetadata.overStockLevelCount,
|
||||
alertStockLevelCount: req.body.policiesMetadata.alertStockLevelCount || itemData.policiesMetadata.alertStockLevelCount,
|
||||
reorderStockLevelCount: req.body.policiesMetadata.reorderStockLevelCount || itemData.policiesMetadata.reorderStockLevelCount,
|
||||
};
|
||||
|
||||
await itemData.save();
|
||||
|
||||
if (itemData.images) {
|
||||
@@ -562,4 +574,17 @@ module.exports = {
|
||||
}
|
||||
res.send({ success: true, data: item });
|
||||
},
|
||||
|
||||
deleteItemByID: async (req, res, next) => {
|
||||
const { id } = req.params;
|
||||
if (!id || !mongoose.isValidObjectId(id)) {
|
||||
res.status(400).send({ success: false, error: "Missing/Invalid item ids" });
|
||||
}
|
||||
try {
|
||||
await Item.deleteOne({ _id: id });
|
||||
res.send({ success: true, error: "Item Successfully deleted" });
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
@@ -20,10 +20,15 @@ router.post("/:id/image", upload.single("image"), controller.addImageToItem);
|
||||
router.delete("/:id/image/:image_id", controller.removeImageFromItem);
|
||||
|
||||
/**
|
||||
* @route /item/
|
||||
* @route /item/:id
|
||||
*/
|
||||
router.patch("/:id", upload.any("images"), controller.updateItemByID);
|
||||
|
||||
/**
|
||||
* @route /item/:id
|
||||
*/
|
||||
router.delete("/:id", controller.deleteItemByID);
|
||||
|
||||
/**
|
||||
* @route /item/filter
|
||||
*/
|
||||
|
||||
@@ -212,7 +212,7 @@ module.exports = {
|
||||
totem_label: [
|
||||
`Z${getLabelTerm(resultItem.zone._id)}-A${getLabelTerm(resultItem.area._id)}-R${getLabelTerm(resultItem.row._id)}-B${getLabelTerm(
|
||||
resultItem.bay._id
|
||||
)}}`,
|
||||
)}`,
|
||||
],
|
||||
location_data: [
|
||||
{
|
||||
|
||||
@@ -199,4 +199,17 @@ module.exports = {
|
||||
await warehouse.save();
|
||||
res.send({ success: true, data: warehouse });
|
||||
},
|
||||
|
||||
deleteWarehouseByID: async (req, res, next) => {
|
||||
const { id } = req.params;
|
||||
if (!id || !mongoose.isValidObjectId(id)) {
|
||||
res.status(400).send({ success: false, error: "Missing/Invalid warehouse id" });
|
||||
}
|
||||
try {
|
||||
await Warehouse.deleteOne({ _id: id });
|
||||
res.send({ success: true, error: "Warehouse Successfully deleted" });
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
@@ -28,4 +28,9 @@ router.post("/", upload.single("image"), controller.createWarehouse);
|
||||
*/
|
||||
router.patch("/:id", upload.single("image"), controller.updateWarehouseByID);
|
||||
|
||||
/**
|
||||
* @route /inventory/:id
|
||||
*/
|
||||
router.delete("/:id", controller.deleteWarehouseByID);
|
||||
|
||||
module.exports = router;
|
||||
|
||||
Reference in New Issue
Block a user