Changeset 55ed171 for backend/routes/orderRoutes.js
- Timestamp:
- 10/15/22 15:28:57 (2 years ago)
- Branches:
- master
- Children:
- 113029b
- Parents:
- ee05663
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
backend/routes/orderRoutes.js
ree05663 r55ed171 21 21 isPaid: req.body.isPaid, 22 22 paidAt: req.body.paidAt, 23 isConfirmed: req.body.isConfirmed, 24 contactNumber: req.body.contactNumber, 23 25 }); 24 26 const order = await newOrder.save(); … … 33 35 const orders = await Order.find({ user: req.user._id }); 34 36 res.send(orders); 37 }) 38 ); 39 const PAGE_SIZE = 10; 40 orderRouter.get( 41 "/", 42 expressAsyncHandler(async (req, res) => { 43 const { query } = req; 44 const pageSize = query.pageSize || PAGE_SIZE; 45 const page = query.page || 1; 46 const isConfirmed = query.isConfirmed || ""; 47 const isShipped = query.isShipped || ""; 48 const searchQuery = query.query || ""; 49 const isDelivered = false; 50 const queryFilter = 51 searchQuery && searchQuery !== "all" 52 ? { _: { $regex: searchQuery, $options: "i" } } 53 : {}; 54 const isConfirmedFilter = 55 isConfirmed && isConfirmed !== "all" ? { isConfirmed } : {}; 56 const isShippedFilter = 57 isShipped && isShipped !== "all" ? { isShipped } : {}; 58 59 const orders = await Order.find({ 60 ...queryFilter, 61 ...isConfirmedFilter, 62 ...isShippedFilter, 63 ...isDelivered, 64 }) 65 .skip(pageSize * (page - 1)) 66 .limit(pageSize); 67 const countOrders = await Order.countDocuments({ 68 ...isConfirmedFilter, 69 ...isShippedFilter, 70 }); 71 res.send({ 72 orders, 73 countOrders, 74 page, 75 pages: Math.ceil(countOrders / pageSize), 76 }); 77 //const orders = await Order.find(); 78 //res.send(orders); 35 79 }) 36 80 ); … … 49 93 ); 50 94 95 orderRouter.put( 96 "/action", 97 expressAsyncHandler(async (req, res) => { 98 if (req.body.isConfirmed) { 99 const order = await Order.updateOne( 100 { _id: req.body._id }, 101 { 102 $set: { 103 isConfirmed: req.body.isConfirmed, 104 }, 105 } 106 ); 107 } else if (req.body.isShipped) { 108 const order = await Order.updateOne( 109 { _id: req.body._id }, 110 { 111 $set: { 112 isShipped: req.body.isShipped, 113 shippedAt: req.body.shippedAt, 114 }, 115 } 116 ); 117 } else if (req.body.isDelivered && req.body.isPaid) { 118 const order = await Order.updateOne( 119 { _id: req.body._id }, 120 { 121 $set: { 122 isDelivered: req.body.isDelivered, 123 deliveredAt: req.body.deliveredAt, 124 isPaid: req.body.isPaid, 125 paidAt: req.body.paidAt, 126 }, 127 } 128 ); 129 } else { 130 const order = await Order.updateOne( 131 { _id: req.body._id }, 132 { 133 $set: { 134 isDelivered: req.body.isDelivered, 135 deliveredAt: req.body.deliveredAt, 136 }, 137 } 138 ); 139 } 140 141 res.status(200).send({ message: "Succesful" }); 142 }) 143 ); 144 51 145 export default orderRouter;
Note:
See TracChangeset
for help on using the changeset viewer.