controllers/userController.js:
CREATE USER:
const User = require("../models/User");
exports.createUser = async (req, res) => {
try {
const { name, email, phone } = req.body;
const user = await User.create({ name, email, phone });
res.status(201).json({
message: "User created successfully",
user,
});
} catch (error) {
res.status(500).json({ message: error.message });
}
};GET ALL USERS:
exports.getUsers = async (req, res) => {
try {
const users = await User.find();
res.json({
message: "All users fetched",
users,
});
} catch (error) {
res.status(500).json({ message: error.message });
}
};UPDATE USER:
exports.updateUser = async (req, res) => {
try {
const { id } = req.params;
const { name, email, phone } = req.body;
const user = await User.findByIdAndUpdate(
id,
{ name, email, phone },
{ new: true }
);
res.json({
message: "User updated successfully",
user,
});
} catch (error) {
res.status(500).json({ message: error.message });
}
};DELETE USER:
exports.deleteUser = async (req, res) => {
try {
const { id } = req.params;
await User.findByIdAndDelete(id);
res.json({
message: "User deleted successfully",
});
} catch (error) {
res.status(500).json({ message: error.message });
}
};routes/userRoutes.js
const express = require("express");
const router = express.Router();
const {
createUser,
getUsers,
updateUser,
deleteUser,
} = require("../controllers/userController");
router.post("/create", createUser);
router.get("/all", getUsers);
router.put("/update/:id", updateUser);
router.delete("/delete/:id", deleteUser);
module.exports = router;