coryas-formation-api/feature/vehicle/controller/vehicle.controller.js

51 lines
1.4 KiB
JavaScript

const VehicleModel = require("../model/vehicle.model")
//getAll
module.exports.getAll = (async (req, res)=>{
const vehicles = await VehicleModel.find();
res.status(200).json({success: true, data : vehicles});
})
//getById
module.exports.getById = (async (req, res)=>{
//req.params.id
const vehicle = await VehicleModel.findById(req.params.id);
if(!vehicle){
res.status(200).json({success: false, data : "noData"});
return;
}
res.status(200).json({success: true, data :vehicle });
})
//create
module.exports.create = (async (req, res)=>{
let vehicle = req.body;
vehicle = await VehicleModel.create(vehicle);
res.status(200).json({success: true, data :vehicle });
})
//update
module.exports.update = (async (req, res)=>{
let vehicle = await VehicleModel.findById(req.params.id);
if(!vehicle){
res.status(200).json({success: false, data : "noData"});
return;
}
await VehicleModel.updateOne({_id:req.params.id}, req.body);
vehicle = await VehicleModel.findById(req.params.id);
res.status(200).json({success: true, data :vehicle });
})
//delete
module.exports.delete = (async (req, res)=>{
let vehicle = await VehicleModel.findById(req.params.id);
if(!vehicle){
res.status(200).json({success: false, data : "noData"});
return;
}
await VehicleModel.deleteOne(req.params.id);
res.status(200).json({success: true, data :{} });
})