67 lines
1.4 KiB
JavaScript
67 lines
1.4 KiB
JavaScript
const User = require("../models/User");
|
|
|
|
//POST
|
|
const createUser = async (req, res) => {
|
|
try {
|
|
const user = await User.create(req.body);
|
|
res.status(201).json(user);
|
|
} catch (err) {
|
|
res.status(400).json({ error: err.message });
|
|
}
|
|
};
|
|
|
|
//GET
|
|
const getUsers = async (req, res) => {
|
|
try {
|
|
const users = await User.find();
|
|
res.status(200).json(users);
|
|
} catch (err) {
|
|
res.status(400).json({ error: err.message });
|
|
}
|
|
};
|
|
|
|
//GET by id
|
|
const getUserById = async (req,res)=>{
|
|
try {
|
|
const user = await User.findById(req.params.id);
|
|
if(!user){
|
|
return res.status(404).json({error: "User not found"})
|
|
}
|
|
res.status(200).json(user);
|
|
} catch (err) {
|
|
res.status(400).json({ error: err.message });
|
|
}
|
|
};
|
|
//UPDATE
|
|
const updateUser = async(req,res)=>{
|
|
try {
|
|
const user = await User.findByIdAndUpdate(req.params.id,req.body,{
|
|
new:true,
|
|
});
|
|
res.status(200).json(user);
|
|
} catch (err) {
|
|
res.status(400).json({ error: err.message });
|
|
}
|
|
};
|
|
//DELETE
|
|
const deleteUser= async(req,res)=>{
|
|
try {
|
|
const user = await User.findByIdAndDelete(req.params.id);
|
|
if(!user){
|
|
return res.status(404).json({message: "User not found"});
|
|
}
|
|
} catch (error) {
|
|
res.status(400).json({ error: err.message });
|
|
}
|
|
|
|
|
|
}
|
|
module.exports = {
|
|
createUser,
|
|
getUsers,
|
|
getUserById,
|
|
updateUser,
|
|
deleteUser
|
|
};
|
|
|