Mohamed Abu Basith commited on
Commit
c74007e
·
1 Parent(s): b0a0225

CHG: removed

Browse files
Files changed (1) hide show
  1. routes/profileUpdate.js +14 -19
routes/profileUpdate.js CHANGED
@@ -8,7 +8,6 @@ const fs = require('fs');
8
  const router = express.Router();
9
  const User = require('../Database/models/user');
10
  const { successResponse, failedResponse } = require("../utils/responseModel");
11
- const { Types } = require('mongoose'); // Import Mongoose Types
12
 
13
 
14
  const storage = multer.diskStorage({
@@ -194,33 +193,29 @@ router.get("/:userId/addresses", asyncHandler(async (req, res) => {
194
 
195
  // Update address
196
  router.put("/:userId/addresses/:addressId", asyncHandler(async (req, res) => {
197
- const userId = req.params.userId;
198
- const addressId = new Types.ObjectId(req.params.addressId); // Convert to ObjectId
199
- const addressData = req.body;
200
-
201
  try {
202
- // Find the user and update the address
203
  const updatedUser = await User.findOneAndUpdate(
204
- { _id: userId, 'addresses._id': addressId }, // Find user and address
205
- { $set: { 'addresses.$': addressData } }, // Update the address
206
- { new: true, runValidators: true } // Return updated document
 
 
 
 
 
 
 
207
  );
208
 
209
  if (!updatedUser) {
210
- return res.status(404).json(failedResponse("User or address not found", 404));
211
- }
212
-
213
- // Find the updated address
214
- const updatedAddress = updatedUser.addresses.find(a => a._id.equals(addressId));
215
-
216
- if (!updatedAddress) {
217
  return res.status(404).json(failedResponse("Address not found", 404));
218
  }
219
-
 
 
220
  res.status(200).json(successResponse("Address updated successfully", updatedAddress));
221
  } catch (error) {
222
- console.error("Error updating address:", error);
223
- res.status(500).json(failedResponse("Internal server error"), 500);
224
  }
225
  }));
226
 
 
8
  const router = express.Router();
9
  const User = require('../Database/models/user');
10
  const { successResponse, failedResponse } = require("../utils/responseModel");
 
11
 
12
 
13
  const storage = multer.diskStorage({
 
193
 
194
  // Update address
195
  router.put("/:userId/addresses/:addressId", asyncHandler(async (req, res) => {
 
 
 
 
196
  try {
 
197
  const updatedUser = await User.findOneAndUpdate(
198
+ {
199
+ unique_id: req.params.userId,
200
+ "addresses._id": req.params.addressId
201
+ },
202
+ {
203
+ $set: {
204
+ "addresses.$": req.body
205
+ }
206
+ },
207
+ { new: true, runValidators: true }
208
  );
209
 
210
  if (!updatedUser) {
 
 
 
 
 
 
 
211
  return res.status(404).json(failedResponse("Address not found", 404));
212
  }
213
+ console.log(JSON.stringify(updatedUser))
214
+ const updatedAddress = updatedUser.updatedUser.addresses.find(a => a._id.equals(req.params.addressId));
215
+ console.log(JSON.stringify(updatedUser))
216
  res.status(200).json(successResponse("Address updated successfully", updatedAddress));
217
  } catch (error) {
218
+ return res.status(500).json(failedResponse(error, 500));
 
219
  }
220
  }));
221