From a7d7cf19e99f50b5af79cacd6ff4f193c0d44761 Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Tue, 27 Dec 2016 11:33:12 +0800
Subject: [PATCH] 修复insertedId错误

---
 method.js |   89 +++++++++++---------------------------------
 1 files changed, 22 insertions(+), 67 deletions(-)

diff --git a/method.js b/method.js
index 827b8f1..2eb056f 100644
--- a/method.js
+++ b/method.js
@@ -181,13 +181,13 @@
                 email: "it01@moral.org.cn",���
                 open_id: "o-RTuwvMHWotyirPHLmdSB_dKoQU"
             }
-        }
+        };
         configs[mac] = _config;
     }
 
     var current = moment();
 
-    queue.pushToMQ('ex_data_screen', {
+    var sensor_data = {
         mac: mac,
         location: _config.location,
         data: {
@@ -200,33 +200,8 @@
             x6: x14  //������������
         },
         time: current.valueOf()
-    });
-
-    if(x1 > 250) {
-        var level = 1;
-        if(x1 > 750) {
-            level = 3;
-        } else if(x1 > 500) {
-            level = 2;
-        }
-        queue.pushToMQ('ex_data_alarm', {
-            mac: mac,
-            address: _config.address,
-            location: _config.location,
-            data:{
-                x0: ferval,
-                x1: x1,  //PM2.5
-                x2: x3,  //PM2.5
-                x3: x9,  //������
-                x4: x11, //������
-                x5: x10, //������
-                x6: x14  //������������
-            },
-            level: level,
-            notice: _config.notice,
-            time: moment.valueOf()
-        });
-    }
+    };
+    queue.pushToMQ('ex_data_screen', sensor_data);
 
     var rank = 0;
     if(s > 0) {
@@ -275,9 +250,24 @@
         mcu: mcu,
         day: current.format('YYYYMMDD'),
         created: current.valueOf()
-    }, function(err, result) {
+    }, function(err, doc) {
         if (err) return;
-        callback(result, rank);
+
+        if(x1 > 250) {
+            var level = 1;
+            if(x1 > 750) {
+                level = 3;
+            } else if(x1 > 500) {
+                level = 2;
+            }
+            sensor_data._id = doc.insertedId;
+            sensor_data.level = level;
+            sensor_data.notice = _config.notice;
+            sensor_data.address = _config.address;
+            queue.pushToMQ('ex_data_alarm', sensor_data);
+        }
+
+        callback(doc, rank);
     });
 };
 
@@ -386,39 +376,4 @@
             }
         });
     });
-};
-
-/////////////////////////////////////////////////
-module.exports.insertDocument2 = function(db, data, rank, callback) {
-    var fields = data.match(/.{2}/g);
-    var mac = fields[6] + fields[7] + fields[8] + fields[9] + fields[10] + fields[11]; //Mac
-
-    var x01 = this.toDec(fields[20]) * 256 + this.toDec(fields[21]); //PM2.5������
-    var x02 = this.toDec(fields[24]) * 256 + this.toDec(fields[25]); //PM2.5������
-    var x09 = this.toDec(fields[32]) * 256 + this.toDec(fields[33]); //������
-    var x10 = this.toDec(fields[34]) * 256 + this.toDec(fields[35]); //������
-    var x11 = this.toDec(fields[36]) * 256 + this.toDec(fields[37]); //������
-    var x14 = this.toDec(fields[42]) * 256 + this.toDec(fields[43]); //������������
-
-    var fei = this.toDec(fields[58]);
-    var ferval = this.toDec(fields[59]);
-    var aqi = this.toDec(fields[60]) * 256 + this.toDec(fields[61]);
-    var ddv = this.toDec(fields[62]) * 256 + this.toDec(fields[63]);
-    var mcu = this.toDec(fields[64]) + this.toDec(fields[65]) / 100;
-
-    db.collection("devices").find({ mac: mac }).limit(1).next(function(err, doc){
-        if (err) return;
-
-        var app = 0;
-        var app_status = doc.app_status;
-        var app_last_updated = doc.app_last_updated;
-        if(app_status == 1 && app_last_updated != null && Date.now() - app_last_updated <= 30000) {
-            app = 1;
-        }
-        db.collection(config.COLLECTION).insertOne({ mac: mac.toLowerCase(), data: data + ' - PM2.5:' + x01 + ', ������:' + x09 + ', ������:' + x10 + ', ������:' + x11 + ', ������:' + x02 + ', FEI:' +  ferval + ', ������:' + fei + ', ������:' + x14 + ', AQI:' + aqi + ', ������������:' + ddv + ', MCU������:' + mcu + ', APP:' + app, date: Date.now() }, function(err, doc) {
-            if (err) return;
-            callback(doc);
-        });
-    });
-};
-
+};
\ No newline at end of file

--
Gitblit v1.8.0