From 50f22797d84fbbea59a2e4b0fbf5996f6cdaca10 Mon Sep 17 00:00:00 2001 From: Bhaskara Kishore Date: Wed, 3 May 2023 12:55:26 +0530 Subject: [PATCH] calculate the sum of type of water level --- src/controllers/tanksController.js | 25 ++++++--- src/routes/tankersRoute.js | 86 ++++++++++++++++-------------- 2 files changed, 63 insertions(+), 48 deletions(-) diff --git a/src/controllers/tanksController.js b/src/controllers/tanksController.js index d25c4179..89751574 100644 --- a/src/controllers/tanksController.js +++ b/src/controllers/tanksController.js @@ -199,22 +199,33 @@ exports.getTanklevels = async (req, reply) => { try { const customerId = req.params.customerId; - const updated_data = await Tank.find({ customerId: customerId }); - - reply.send({ status_code: 200, data: updated_data}); + let sumSumpDrinkingWater = 0; + let sumOverheadDrinkingWater = 0; - return { message: 'success' }; -} + updated_data.forEach((tank) => { + if (tank.tankLocation === 'sump' && tank.typeOfWater === 'Drinking Water') { + sumSumpDrinkingWater += parseInt(tank.waterlevel); + } else if (tank.tankLocation === 'overhead' && tank.typeOfWater === 'Drinking Water') { + sumOverheadDrinkingWater += parseInt(tank.waterlevel); + } + }); - catch (err) { + reply.send({ + status_code: 200, + data: updated_data, + totalDrinkingWaterInSump: sumSumpDrinkingWater, + totalDrinkingWaterInOverhead: sumOverheadDrinkingWater + }); + + return { message: 'success' }; + } catch (err) { throw boom.boomify(err); } }; - exports.motorAction = async (req, reply) => { try { //let start_time,stop_time diff --git a/src/routes/tankersRoute.js b/src/routes/tankersRoute.js index e9d8fbf2..47d7e9cf 100644 --- a/src/routes/tankersRoute.js +++ b/src/routes/tankersRoute.js @@ -31,30 +31,32 @@ module.exports = function (fastify, opts, next) { tankerName: { type: "string" }, phoneNumber: { type: "string"}, alternative_phoneNumber: { type: "string"}, - typeofwater: { - type: "array", - maxItems: 2500, - items: { - type: "object", - properties: { - typeofwater: { type: "string", default: null }, - }, - }, - }, + // typeofwater: { + // type: "array", + // maxItems: 2500, + // items: { + // type: "object", + // properties: { + // typeofwater: { type: "string", default: null }, + // }, + // }, + // }, - price: { - type: "array", - maxItems: 2500, - items: { - type: "object", - properties: { - price: { type: "string", default: null }, - }, - }, - }, + // price: { + // type: "array", + // maxItems: 2500, + // items: { + // type: "object", + // properties: { + // price: { type: "string", default: null }, + // }, + // }, + // }, + typeofwater: { type: "string"}, + price: { type: "string"}, capacity: { type: "string"}, // price: {type : "string"}, - // status: {type: "string"} + // status: {type: "string"} @@ -104,27 +106,29 @@ module.exports = function (fastify, opts, next) { tankerName: { type: "string" }, phoneNumber: { type: "string"}, alternative_phoneNumber: { type: "string"}, - typeofwater: { - type: "array", - maxItems: 2500, - items: { - type: "object", - properties: { - typeofwater: { type: "string", default: null }, - }, - }, - }, + // typeofwater: { + // type: "array", + // maxItems: 2500, + // items: { + // type: "object", + // properties: { + // typeofwater: { type: "string", default: null }, + // }, + // }, + // }, - price: { - type: "array", - maxItems: 2500, - items: { - type: "object", - properties: { - price: { type: "string", default: null }, - }, - }, - }, + // price: { + // type: "array", + // maxItems: 2500, + // items: { + // type: "object", + // properties: { + // price: { type: "string", default: null }, + // }, + // }, + // }, + typeofwater: { type: "string"}, + price: { type: "string"}, capacity: { type: "string"},