87 lines
2.3 KiB
JavaScript
87 lines
2.3 KiB
JavaScript
import { Transporter } from "./transporterModal.js";
|
|
|
|
// Create a new transporter
|
|
export const createTransporter = async (req, res) => {
|
|
try {
|
|
const { transporterName } = req.body;
|
|
|
|
const newTransporter = await Transporter.create({ transporterName });
|
|
res.status(201).json({
|
|
message: "Transporter added successfully",
|
|
transporter: newTransporter,
|
|
});
|
|
} catch (error) {
|
|
res.status(500).json({ message: "Error adding transporter", error });
|
|
}
|
|
};
|
|
|
|
// Read all transporters
|
|
export const getTransporters = async (req, res) => {
|
|
try {
|
|
const transporters = await Transporter.find();
|
|
res.status(200).json({ transporters });
|
|
} catch (error) {
|
|
res.status(500).json({ message: "Error fetching transporters", error });
|
|
}
|
|
};
|
|
|
|
// Update transporter by ID
|
|
export const updateTransporter = async (req, res) => {
|
|
try {
|
|
const { transporterName } = req.body;
|
|
const transporterId = req.params.id;
|
|
|
|
const updatedTransporter = await Transporter.findByIdAndUpdate(
|
|
transporterId,
|
|
{ transporterName },
|
|
{ new: true, runValidators: true }
|
|
);
|
|
|
|
if (!updatedTransporter) {
|
|
return res.status(404).json({ message: "Transporter not found" });
|
|
}
|
|
|
|
res.status(200).json({
|
|
message: "Transporter updated successfully",
|
|
transporter: updatedTransporter,
|
|
});
|
|
} catch (error) {
|
|
res.status(500).json({ message: "Error updating transporter", error });
|
|
}
|
|
};
|
|
|
|
// Delete transporter by ID
|
|
export const deleteTransporter = async (req, res) => {
|
|
try {
|
|
const transporterId = req.params.id;
|
|
|
|
const deletedTransporter = await Transporter.findByIdAndDelete(
|
|
transporterId
|
|
);
|
|
|
|
if (!deletedTransporter) {
|
|
return res.status(404).json({ message: "Transporter not found" });
|
|
}
|
|
|
|
res.status(200).json({ message: "Transporter deleted successfully" });
|
|
} catch (error) {
|
|
res.status(500).json({ message: "Error deleting transporter", error });
|
|
}
|
|
};
|
|
|
|
export const getTransporterById = async (req, res) => {
|
|
try {
|
|
const transporterId = req.params.id;
|
|
|
|
const transporter = await Transporter.findById(transporterId);
|
|
|
|
if (!transporter) {
|
|
return res.status(404).json({ message: "Transporter not found" });
|
|
}
|
|
|
|
res.status(200).json({ transporter });
|
|
} catch (error) {
|
|
res.status(500).json({ message: "Error fetching transporter", error });
|
|
}
|
|
};
|