diff --git a/middlewares/auth.js b/middlewares/auth.js index 2f13d5e..44be282 100644 --- a/middlewares/auth.js +++ b/middlewares/auth.js @@ -27,6 +27,12 @@ export const isAuthenticatedUser = async (req, res, next) => { // console.log(frontdecoded); const fuser = await User.findById(frontdecoded.id); // console.log(fuser); + // if (!fuser) { + // return res.status(404).json({ + // success: false, + // message: "User not found", + // }); + // } req.user = fuser; next(); diff --git a/resources/PD_Orders/pdOrderController.js b/resources/PD_Orders/pdOrderController.js index e08b585..0557b94 100644 --- a/resources/PD_Orders/pdOrderController.js +++ b/resources/PD_Orders/pdOrderController.js @@ -77,7 +77,6 @@ export const createOrder = async (req, res) => { export const processOrder = async (req, res) => { try { const { orderId, invoiceItems } = req.body; - if (!orderId || !invoiceItems || !Array.isArray(invoiceItems)) { return res .status(400) @@ -86,7 +85,6 @@ export const processOrder = async (req, res) => { // Find the order by ID const order = await PdOrder.findById(orderId).populate("addedBy"); - if (!order) { return res.status(404).json({ error: "Order not found" }); } @@ -101,7 +99,7 @@ export const processOrder = async (req, res) => { ); // If processquantity exceeds remainingQuantity, add the item name to exceededItems - if (orderItem && item.processquantity > orderItem.remainingQuantity) { + if (!orderItem || item.processquantity > orderItem.remainingQuantity) { exceededItems.push(item.name); } } diff --git a/resources/RD_Ordes/rdOrderController.js b/resources/RD_Ordes/rdOrderController.js index 889c04a..22b5026 100644 --- a/resources/RD_Ordes/rdOrderController.js +++ b/resources/RD_Ordes/rdOrderController.js @@ -362,7 +362,6 @@ export const getCancelledOrders = async (req, res) => { export const processOrder = async (req, res) => { try { const { orderId, invoiceItems } = req.body; - if (!orderId || !invoiceItems || !Array.isArray(invoiceItems)) { return res .status(400) @@ -374,25 +373,16 @@ export const processOrder = async (req, res) => { if (!order) { return res.status(404).json({ error: "Order not found" }); } - // Validate quantities const exceededItems = invoiceItems .filter((item) => { const orderItem = order.orderItem.find( (i) => i.productId.toString() === item.productId.toString() ); - return orderItem && item.processquantity > orderItem.remainingQuantity; + return !orderItem || item.processquantity > orderItem.remainingQuantity; }) .map((item) => item.name); - if (exceededItems.length > 0) { - return res.status(400).json({ - error: `The following items have more quantity than remaining in the order: ${exceededItems.join( - ", " - )}`, - }); - } - // If there are any exceeded items, return an error with their names if (exceededItems.length > 0) { return res.status(400).json({ @@ -415,7 +405,6 @@ export const processOrder = async (req, res) => { const productInStock = pdStock.products.find( (p) => p.productid.toString() === item.productId.toString() ); - // If the product exists in stock if (productInStock) { // Check if the processquantity is less than or equal to available stock @@ -431,7 +420,6 @@ export const processOrder = async (req, res) => { // If no stock or insufficient stock, don't add the item return false; }); - // If no items are left after stock validation, return an error if (updatedInvoiceItems.length === 0) { return res @@ -1656,21 +1644,19 @@ export const getAllOrdersforAdmin = async (req, res) => { if (retailerIds.length > 0) { filter.addedBy = { $in: retailerIds }; // Filter orders by found user IDs } else { - return res - .status(200) - .json({ - totalOrders: 0, - totalPages: 0, - currentPage: page, - orders: [], - }); + return res.status(200).json({ + totalOrders: 0, + totalPages: 0, + currentPage: page, + orders: [], + }); } } // Fetch orders with population const orders = await RdOrder.find(filter) .populate({ path: "addedBy", select: "name email" }) // Populate retailer details - .populate({path: "pd", select: "name email"}) // Populate PD details + .populate({ path: "pd", select: "name email" }) // Populate PD details .sort({ createdAt: -1 }) .skip(skip) .limit(limit);