master^2
Varun 5 months ago
parent 4ee66c185b
commit 479d29248d

@ -6217,61 +6217,61 @@ async function processIotData(hw_Id, data) {
console.log(`🚰 Tank [${tankhardwareId}] - Level: ${tankHeight}, Calculated Water Level: ${waterLevel}`); console.log(`🚰 Tank [${tankhardwareId}] - Level: ${tankHeight}, Calculated Water Level: ${waterLevel}`);
const now = moment().tz('Asia/Kolkata'); const now = moment().tz('Asia/Kolkata');
// if (tankHeight <= 0) { if (tankHeight <= 0) {
// // Case 1: First time signal is lost // Case 1: First time signal is lost
// if ( if (
// existingTank.slave_status !== "signal_lost1" && existingTank.slave_status !== "signal_lost1" &&
// existingTank.slave_status !== "not_working" existingTank.slave_status !== "not_working1"
// ) { ) {
// existingTank.slave_status = "signal_lost1"; existingTank.slave_status = "signal_lost1";
// existingTank.slave_disconnected_time = now.format('DD-MMM-YYYY - HH:mm:ss'); existingTank.slave_disconnected_time = now.format('DD-MMM-YYYY - HH:mm:ss');
// await existingTank.save(); await existingTank.save();
// console.log(`⚠️ Signal lost for tank [${tankhardwareId}] at ${existingTank.slave_disconnected_time}`); console.log(`⚠️ Signal lost for tank [${tankhardwareId}] at ${existingTank.slave_disconnected_time}`);
// return; // Important: do not continue in this cycle return; // Important: do not continue in this cycle
// } else if (existingTank.slave_status === "signal_lost1") { } else if (existingTank.slave_status === "signal_lost1") {
// if (!existingTank.slave_disconnected_time) { if (!existingTank.slave_disconnected_time) {
// console.log(`❗ Missing slave_disconnected_time despite signal_lost1 for tank [${tankhardwareId}]`); console.log(`❗ Missing slave_disconnected_time despite signal_lost1 for tank [${tankhardwareId}]`);
// return; return;
// } }
// const lostTime = moment(existingTank.slave_disconnected_time, 'DD-MMM-YYYY - HH:mm:ss'); const lostTime = moment(existingTank.slave_disconnected_time, 'DD-MMM-YYYY - HH:mm:ss');
// const minutesElapsed = now.diff(lostTime, 'minutes'); const minutesElapsed = now.diff(lostTime, 'minutes');
// if (minutesElapsed >= 15) { if (minutesElapsed >= 15) {
// existingTank.slave_status = "not_working"; existingTank.slave_status = "not_working1";
// existingTank.slave_disconnected_time = now.format('DD-MMM-YYYY - HH:mm:ss'); existingTank.slave_disconnected_time = now.format('DD-MMM-YYYY - HH:mm:ss');
// await existingTank.save(); await existingTank.save();
// console.log(`❌ Slave marked as not_working for tank [${tankhardwareId}] at ${existingTank.slave_disconnected_time}`); console.log(`❌ Slave marked as not_working for tank [${tankhardwareId}] at ${existingTank.slave_disconnected_time}`);
// // Update connected output tanks // Update connected output tanks
// for (const outputConnection of existingTank.connections.outputConnections) { for (const outputConnection of existingTank.connections.outputConnections) {
// const linkedTank = await Tank.findOne({ const linkedTank = await Tank.findOne({
// customerId, customerId,
// tankName: outputConnection.outputConnections, tankName: outputConnection.outputConnections,
// tankLocation: outputConnection.output_type tankLocation: outputConnection.output_type
// }); });
// if (linkedTank) { if (linkedTank) {
// for (const inputConnection of linkedTank.connections.inputConnections) { for (const inputConnection of linkedTank.connections.inputConnections) {
// if (inputConnection.inputConnections === tank_name) { if (inputConnection.inputConnections === tank_name) {
// inputConnection.slave_status = "not_working"; inputConnection.slave_status = "not_working1";
// await linkedTank.save(); await linkedTank.save();
// console.log(`🔗 Linked tank [${linkedTank.tankName}] inputConnection updated to not_working`); console.log(`🔗 Linked tank [${linkedTank.tankName}] inputConnection updated to not_working`);
// } }
// } }
// } }
// } }
// } else { } else {
// console.log(`⏳ Still within 15-minute grace: ${minutesElapsed} minutes elapsed for tank [${tankhardwareId}]`); console.log(`⏳ Still within 15-minute grace: ${minutesElapsed} minutes elapsed for tank [${tankhardwareId}]`);
// } }
// } else { } else {
// console.log(`⏩ Tank [${tankhardwareId}] already marked as ${existingTank.slave_status}, skipping update.`); console.log(`⏩ Tank [${tankhardwareId}] already marked as ${existingTank.slave_status}, skipping update.`);
// } }
// } }
@ -6280,8 +6280,8 @@ async function processIotData(hw_Id, data) {
if (tankHeight > 0 && waterLevel >= 0) { if (tankHeight > 0 && waterLevel >= 0) {
existingTank.waterlevel = waterLevel; existingTank.waterlevel = waterLevel;
// existingTank.slave_status = "working"; existingTank.slave_status = "working";
// existingTank.slave_disconnected_time = null; existingTank.slave_disconnected_time = null;
await existingTank.save(); await existingTank.save();
for (const outputConnection of existingTank.connections.outputConnections) { for (const outputConnection of existingTank.connections.outputConnections) {
@ -6290,7 +6290,7 @@ async function processIotData(hw_Id, data) {
for (const inputConnection of linkedTank.connections.inputConnections) { for (const inputConnection of linkedTank.connections.inputConnections) {
if (inputConnection.inputConnections === tank_name) { if (inputConnection.inputConnections === tank_name) {
inputConnection.water_level = waterLevel; inputConnection.water_level = waterLevel;
` // inputConnection. slave_status = "working";` inputConnection. slave_status = "working";
await linkedTank.save(); await linkedTank.save();
} }
} }

Loading…
Cancel
Save