100 lines
2.8 KiB
JavaScript
100 lines
2.8 KiB
JavaScript
const { splitSite } = require("../middlewares");
|
|
const db = require("../models");
|
|
const RoutePathTemplate = db.route_path_template;
|
|
exports.createRoutePathTemplate = (req, res) => {
|
|
// Validate request
|
|
if (!req.body.name) {
|
|
res.status(400).send({ message: "Content can not be empty!" });
|
|
return;
|
|
}
|
|
const site = splitSite.findSiteNumber(req);
|
|
// Create a Route Template
|
|
const routePathTemplate = new RoutePathTemplate({
|
|
name: req.body.name,
|
|
vehicle: req.body.vehicle,
|
|
driver: req.body.driver,
|
|
type: req.body.type,
|
|
route_customer_list: req.body.route_customer_list || [],
|
|
status: req.body.status || 'active',
|
|
site
|
|
});
|
|
// Save Route Template in the database
|
|
routePathTemplate
|
|
.save(routePathTemplate)
|
|
.then(data => {
|
|
res.send(data);
|
|
})
|
|
.catch(err => {
|
|
res.status(500).send({
|
|
message:
|
|
err.message || "Some error occurred while creating the Route Template."
|
|
});
|
|
});
|
|
};
|
|
// Retrieve all Routes Templates from the database.
|
|
exports.getAllRoutesTemplates = (req, res) => {
|
|
var condition = {};
|
|
condition = splitSite.splitSiteGet(req, condition);
|
|
RoutePathTemplate.find(condition)
|
|
.then(data => {
|
|
res.send(data);
|
|
})
|
|
.catch(err => {
|
|
res.status(500).send({
|
|
message:
|
|
err.message || "Some error occurred while retrieving Routes."
|
|
});
|
|
});
|
|
};
|
|
|
|
// Get One Route Template by Id
|
|
exports.getRouteTemplate = (req, res) => {
|
|
|
|
};
|
|
|
|
// Update a Route Template by the id in the request
|
|
exports.updateRouteTemplate = (req, res) => {
|
|
if (!req.body) {
|
|
return res.status(400).send({
|
|
message: "Data to update can not be empty!"
|
|
});
|
|
}
|
|
const id = req.params.id;
|
|
RoutePathTemplate.findByIdAndUpdate(id, req.body, { useFindAndModify: false })
|
|
.then(data => {
|
|
if (!data) {
|
|
res.status(404).send({
|
|
message: `Cannot update Route Template with id=${id}. Maybe Route Template was not found!`
|
|
});
|
|
} else res.send({ success: true, message: "Route Template was updated successfully." });
|
|
})
|
|
.catch(err => {
|
|
res.status(500).send({
|
|
success: false,
|
|
message: "Error updating Route Template with id=" + id
|
|
});
|
|
});
|
|
};
|
|
|
|
// Delete a Route Template by id
|
|
exports.deleteRouteTemplate= (req, res) => {
|
|
const id = req.params.id;
|
|
RoutePathTemplate.findByIdAndRemove(id)
|
|
.then(data => {
|
|
if (!data) {
|
|
res.status(404).send({
|
|
message: `Cannot delete Route Template with id=${id}. Maybe Route Template was not found!`
|
|
});
|
|
} else {
|
|
res.send({
|
|
message: "Route Template was deleted successfully!"
|
|
});
|
|
}
|
|
})
|
|
.catch(err => {
|
|
res.status(500).send({
|
|
message: "Could not delete Route Template with id=" + id
|
|
});
|
|
});
|
|
};
|