diff --git a/src/controllers/storeController.js b/src/controllers/storeController.js index 0a56b66b..0a035954 100644 --- a/src/controllers/storeController.js +++ b/src/controllers/storeController.js @@ -1217,6 +1217,22 @@ exports.updateSensorById = async (req, reply) => { } }; +exports.deleteSensorById = async (req, reply) => { + try { + const { _id } = req.params; + + const deletedSensor = await Insensors.findByIdAndDelete(_id); + + if (!deletedSensor) { + return reply.code(404).send({ message: "Sensor not found" }); + } + + return reply.code(200).send({ message: "Sensor deleted successfully" }); + } catch (error) { + console.error("Error deleting sensor:", error); + return reply.code(500).send({ message: "Internal Server Error" }); + } +}; exports.updateSensorQC = async (req, reply) => { try { diff --git a/src/routes/storeRoute.js b/src/routes/storeRoute.js index 579cae9e..b7a4301e 100644 --- a/src/routes/storeRoute.js +++ b/src/routes/storeRoute.js @@ -1109,6 +1109,25 @@ fastify.post("/api/createwaterlevelSensorintime/:storeId", { handler: storeController.createSensor, }) +fastify.delete("/api/deleteSensorById/:_id", { + schema: { + description: "Delete a sensor by ID", + tags: ["Store-Data"], + summary: "Delete a sensor based on its _id", + params: { + required: ["_id"], + type: "object", + properties: { + _id: { + type: "string", + description: "Sensor ID", + }, + }, + }, + }, + handler: storeController.deleteSensorById, +}); + fastify.post("/api/updateSensorById/:_id", { schema: {