edit and delete of slaves and water sensors

master
varun 1 year ago
parent 9b92e3b12e
commit 77ca1f1357

@ -531,7 +531,45 @@ exports.addStore = async (request, reply) => {
exports.editWaterLevelSensor = async (req, reply) => {
try {
const { storeId } = req.params;
const updates = req.body;
const updatedSensor = await WaterLeverSensor.findOneAndUpdate(
{ storeId:storeId,hardwareId: req.body.hardwareId },
updates,
{ new: true }
);
if (!updatedSensor) {
reply.code(404).send({ message: "Sensor not found" });
} else {
reply.code(200).send(updatedSensor);
}
} catch (err) {
reply.code(500).send(err);
}
};
exports.deleteWaterLevelSensor = async (req, reply) => {
try {
const { storeId } = req.params;
const deletedSensor = await WaterLeverSensor.findOneAndDelete(
{ storeId,hardwareId: req.body.hardwareId }
);
if (!deletedSensor) {
reply.code(404).send({ message: "Sensor not found" });
} else {
reply.code(200).send({ message: "Sensor deleted successfully" });
}
} catch (err) {
reply.code(500).send(err);
}
};
exports.installwaterlevelSensor = async (request, reply) => {
try {
@ -676,6 +714,72 @@ exports.addStore = async (request, reply) => {
};
exports.editSlave = async (req, reply) => {
try {
const { hardwareId } = req.params;
const updates = req.body;
const mainHardware = await WaterLeverSensor.findOne({ hardwareId });
if (!mainHardware) {
reply.code(404).send({ message: "Main hardware not found" });
return;
}
const slaveIndex = mainHardware.slaves.tankhardware.findIndex(
(slave) => slave.tankhardwareId === req.body.tankhardwareId
);
if (slaveIndex === -1) {
reply.code(404).send({ message: "Slave not found" });
return;
}
mainHardware.slaves.tankhardware[slaveIndex] = {
...mainHardware.slaves.tankhardware[slaveIndex],
...updates,
};
const updatedHardware = await mainHardware.save();
reply.code(200).send(updatedHardware);
} catch (err) {
reply.code(500).send(err);
}
};
exports.deleteSlave = async (req, reply) => {
try {
const { hardwareId } = req.params;
const mainHardware = await WaterLeverSensor.findOne({ hardwareId });
if (!mainHardware) {
reply.code(404).send({ message: "Main hardware not found" });
return;
}
const slaveIndex = mainHardware.slaves.tankhardware.findIndex(
(slave) => slave.tankhardwareId === req.body.tankhardwareId
);
if (slaveIndex === -1) {
reply.code(404).send({ message: "Slave not found" });
return;
}
mainHardware.slaves.tankhardware.splice(slaveIndex, 1);
const updatedHardware = await mainHardware.save();
reply.code(200).send(updatedHardware);
} catch (err) {
reply.code(500).send(err);
}
};
exports.qccheckwaterlevelSensorSlave = async (request, reply) => {
try {
const { storeId } = request.params;

@ -155,6 +155,64 @@ fastify.post("/api/createwaterlevelSensor/:storeId", {
})
fastify.put("/api/editwaterlevelSensor/:storeId", {
schema: {
description: "This is for editing a water level sensor",
tags: ["Store-Data"],
summary: "This is for editing a water level sensor",
params: {
required: ["storeId"],
type: "object",
properties: {
storeId: {
type: "string",
description: "storeId",
},
},
},
body: {
type: "object",
properties: {
hardwareId: { type: "string" },
type: { type: "string" },
indate: { type: "string" },
hardwareId_company: { type: "string" }
},
},
},
handler: storeController.editWaterLevelSensor,
});
fastify.delete("/api/deletewaterlevelSensor/:storeId", {
schema: {
description: "This is for deleting a water level sensor",
tags: ["Store-Data"],
summary: "This is for deleting a water level sensor",
params: {
required: ["storeId"],
type: "object",
properties: {
storeId: {
type: "string",
description: "storeId",
},
},
},
body: {
type: "object",
properties: {
hardwareId: { type: "string" },
},
},
},
handler: storeController.deleteWaterLevelSensor,
});
fastify.get("/api/getHardware/:storeId", {
schema: {
tags: ["Store-Data"],
@ -307,6 +365,73 @@ fastify.post("/api/addSlave/:hardwareId", {
});
fastify.put("/api/editSlave/:hardwareId", {
schema: {
description: "This is for editing a slave of a water level sensor",
tags: ["Store-Data"],
summary: "This is for editing a slave of a water level sensor",
params: {
required: ["hardwareId"],
type: "object",
properties: {
hardwareId: {
type: "string",
description: "Main hardware ID",
},
},
},
body: {
type: "object",
properties: {
tankhardwareId: { type: "string" },
type: { type: "string" },
indate: { type: "string" },
hardwareId_company: { type: "string" },
qccheck: { type: "string", default: null },
qccheckdate: { type: "string", default: null },
qcby: { type: "string", default: null },
comment: { type: "string", default: "0" },
outforrepairdate: { type: "string", default: "0" },
sendto: { type: "string", default: null },
repairfeedback: { type: "string", default: "0" },
dateofinstallation: { type: "string", default: null },
installedby: { type: "string", default: "0" },
customerId: { type: "string", default: "0" },
comments: { type: "string", default: "0" },
},
},
},
handler: storeController.editSlave,
});
fastify.delete("/api/deleteSlave/:hardwareId", {
schema: {
description: "This is for deleting a slave of a water level sensor",
tags: ["Store-Data"],
summary: "This is for deleting a slave of a water level sensor",
params: {
required: ["hardwareId"],
type: "object",
properties: {
hardwareId: {
type: "string",
description: "Main hardware ID",
},
},
},
body: {
type: "object",
properties: {
tankhardwareId: { type: "string" },
},
},
},
handler: storeController.deleteSlave,
});
fastify.post("/api/qccheckwaterlevelslaveSensor/:storeId", {
schema: {

Loading…
Cancel
Save