You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

82 lines
2.7 KiB

const { pool } = require('../config/databases');
exports.createEmplacement = async (req, res) => {
const { name, type, temperature, capacity } = req.body;
if (!name || !type) {
return res.status(400).json({ message: 'Name and type are required.' });
} else if (!temperature) {
return res.status(400).json({ message: 'Temperature is required.' });
} else if (!capacity) {
return res.status(400).json({ message: 'Capacity is required.' });
}
try {
const [result] = await pool.query('INSERT INTO emplacements (name, type, temperature, capacity) VALUES (?, ?, ?, ?)', [name, type, temperature, capacity]);
res.status(201).json({
message: 'Emplacement created successfully',
emplacement: {
id: result.insertId,
name,
type,
temperature,
capacity,
created_at: new Date().toISOString(),
updated_at: new Date().toISOString()
}
});
} catch (error) {
console.error(error);
return res.status(500).json({ message: 'Server error while creating emplacement.' });
}
}
exports.getEmplacements = async (req, res) => {
try {
const [rows] = await pool.query('SELECT * FROM emplacements');
res.json(rows);
} catch (error) {
console.error(error);
res.status(500).json({ message: 'Server error while fetching emplacements.' });
}
}
exports.getEmplacementById = async (req, res) => {
const { id } = req.params;
try {
const [rows] = await pool.query('SELECT * FROM emplacements WHERE id = ?', [id]);
if (rows.length === 0) {
return res.status(404).json({ message: 'Emplacement not found.' });
}
res.json(rows[0]);
} catch (error) {
console.error(error);
res.status(500).json({ message: 'Server error while fetching emplacement.' });
}
}
exports.updateEmplacement = async (req, res) => {
const { id } = req.params;
const { name, type, temperature, capacity } = req.body;
if (!name || !type || !temperature || !capacity) {
return res.status(400).json({ message: 'All fields are required.' });
}
try {
const [result] = await pool.query('UPDATE emplacements SET name = ?, type = ?, temperature = ?, capacity = ? WHERE id = ?', [name, type, temperature, capacity, id]);
if (result.affectedRows === 0) {
return res.status(404).json({ message: 'Emplacement not found.' });
}
res.json({ message: 'Emplacement updated successfully' });
} catch (error) {
console.error(error);
res.status(500).json({ message: 'Server error while updating emplacement.' });
}
}