diff --git a/src/controllers/tanksController.js b/src/controllers/tanksController.js index 813e4f56..e7820ffd 100644 --- a/src/controllers/tanksController.js +++ b/src/controllers/tanksController.js @@ -301,6 +301,8 @@ exports.updateTanklevels = async (req, reply) => { } }; + + exports.getTanklevels = async (req, reply) => { try { const customerId = req.params.customerId; @@ -317,23 +319,27 @@ exports.getTanklevels = async (req, reply) => { console.log("updated_data", updated_data); updated_data.forEach((tank) => { - const capacity = parseInt(tank.capacity.replace(/,/g, '')); + const waterlevel = parseInt(tank.waterlevel.replace(/,/g, ''), 10); + const capacity = parseInt(tank.capacity.replace(/,/g, ''), 10); + console.log(`Processing tank: ${tank.tankName}`); + console.log(`Type of Water: ${tank.typeOfWater}, Location: ${tank.tankLocation}, Waterlevel: ${waterlevel}, Capacity: ${capacity}`); + if (tank.tankLocation === 'sump' && tank.typeOfWater === 'Drinking Water') { - sumSumpDrinkingWater += parseInt(tank.waterlevel); + sumSumpDrinkingWater += waterlevel; sumSumpDrinkingWaterCapacity += capacity; } else if (tank.tankLocation === 'overhead' && tank.typeOfWater === 'Drinking Water') { - sumOverheadDrinkingWater += parseInt(tank.waterlevel); + sumOverheadDrinkingWater += waterlevel; sumOverheadDrinkingWaterCapacity += capacity; } else if (tank.tankLocation === 'sump' && tank.typeOfWater === 'Bore Water') { - sumSumpBoreWater += parseInt(tank.waterlevel); + sumSumpBoreWater += waterlevel; sumSumpBoreWaterCapacity += capacity; } else if (tank.tankLocation === 'overhead' && tank.typeOfWater === 'Bore Water') { - sumOverheadBoreWater += parseInt(tank.waterlevel); + sumOverheadBoreWater += waterlevel; sumOverheadBoreWaterCapacity += capacity; } }); - reply.send({ + const responseData = { status_code: 200, data: updated_data, totalDrinkingWaterInSump: sumSumpDrinkingWater, @@ -344,14 +350,21 @@ exports.getTanklevels = async (req, reply) => { totalDrinkingWaterInOverheadCapacity: sumOverheadDrinkingWaterCapacity, totalBoreWaterInSumpCapacity: sumSumpBoreWaterCapacity, totalBoreWaterInOverheadCapacity: sumOverheadBoreWaterCapacity, - }); + }; + + if (!reply.sent) { + reply.send(responseData); + } - return { message: 'success' }; } catch (err) { + if (!reply.sent) { + reply.code(500).send({ error: 'Internal Server Error' }); + } throw boom.boomify(err); } }; + const intervals = {}; let sump_water_levels=[]; let supplier_tanks = []; diff --git a/src/models/tanks.js b/src/models/tanks.js index a4348860..b661f92b 100644 --- a/src/models/tanks.js +++ b/src/models/tanks.js @@ -33,7 +33,7 @@ const RoleSchema = new Schema({ name: String }); const tanksSchema = new mongoose.Schema({ hardwareId: { type: String }, - InstallerId: { type: String, default: null }, + InstallerId0: { type: String, default: null }, tankhardwareId: { type: String }, hardwareId_type: { type: String }, hardwareId_company: { type: String }, @@ -42,6 +42,7 @@ const tanksSchema = new mongoose.Schema({ blockName: { type: String, default: null }, capacity: { type: String, default: "0" }, height: { type: String, default: "0" }, + tankLocation: { type: String, default: null }, waterCapacityPerCm:{ type: String, default: "0" }, typeOfWater: { type: String, default: null }, waterlevel: { type: String, default: "0" }, diff --git a/src/routes/tanksRoute.js b/src/routes/tanksRoute.js index 25bd5f57..8d2acfdb 100644 --- a/src/routes/tanksRoute.js +++ b/src/routes/tanksRoute.js @@ -251,7 +251,7 @@ module.exports = function (fastify, opts, next) { }, ], }, - preHandler: fastify.auth([fastify.authenticate]), + // preHandler: fastify.auth([fastify.authenticate]), handler: tanksController.getTanklevels, });