Sindbad~EG File Manager
import Address from "../../model/address";
import { successResponse, failedResponse } from "../../utils/responseFormat";
const index = async (req, res) => {
//query={contact_id:?} or {user_id:?}
try {
const query = req.query;
query.user_id = query.contact_id ? undefined : req.user._id;
let allData = await Address.find(query, {
__v: 0,
createdOn: 0,
modifiedOn: 0,
})
.populate("user_id", ["_id", "first_name", "last_name"])
.populate("contact_id", ["_id", "first_name", "last_name"])
.exec();
return successResponse(res, allData);
} catch (error) {
return failedResponse({ res, error: error.message });
}
};
const add = async (req, res) => {
try {
if (!req.body.contact_id) {
req.body.user_id = req.user._id;
}
const address = new Address(req.body);
await address.save();
return successResponse(res, address, "Address saved successfully", 201);
} catch (error) {
return failedResponse({ res, error: error.message });
}
};
const edit = async (req, res) => {
try {
let result = await Address.findByIdAndUpdate(
{ _id: req.params.id },
{ $set: req.body },
{
new: true,
}
);
if (!result) {
return failedResponse({ res, error: "No data found." });
}
return successResponse(res, result, "Address updated successfully");
} catch (error) {
return failedResponse({ res, error: error.message });
}
};
const deleteData = async (req, res) => {
try {
let lead = await Address.findByIdAndDelete({ _id: req.params.id });
if (!lead) {
return failedResponse({ res, error: "No data found." });
}
return successResponse(
res,
lead,
"Address and related data deleted successfully"
);
} catch (error) {
return failedResponse({ res, error: error.message });
}
};
export default { index, add, edit, deleteData };
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists