From f85709d6aed1c914b37d184482163658f1bd287d Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Fri, 02 Feb 2018 12:00:38 +0800
Subject: [PATCH] 秦工修改协议未通知,为了与硬件端统一,修改fei取值(59位->71+72+73(71位符号位:0正1负))

---
 method.js |   26 +++++++++++++++++---------
 1 files changed, 17 insertions(+), 9 deletions(-)

diff --git a/method.js b/method.js
index cdbe1e8..1761222 100644
--- a/method.js
+++ b/method.js
@@ -164,7 +164,10 @@
     var p3 = this.toDec(fields[47]);
     var p4 = this.toDec(fields[48]);
     var fei = this.toDec(fields[58]);
-    var ferval = this.toDec(fields[59]);
+    //var ferval = this.toDec(fields[59]);
+
+    var feival = this.toDec(fields[71]) == 0 ? (this.toDec(fields[72]) * 256 + this.toDec(fields[73])) : -1 * (this.toDec(fields[72]) * 256 + this.toDec(fields[73]));
+
     var t = this.toDec(fields[56]);
     var aqi = this.toDec(fields[60]) * 256 + this.toDec(fields[61]); //AQI
 
@@ -175,7 +178,7 @@
     if(_config == null) {
         _config = config.ALARM_DEFAULTS;
         _config.mac = mac;
-        configs[mac] = _config;
+        global.configs[mac] = _config;
     }
 
     var current = moment();
@@ -184,13 +187,15 @@
         mac: mac,
         location: _config.location,
         data: {
-            x0: ferval,
+            x0: feival,
             x1: x1,  //PM2.5 - (������:ppm)
             x2: x3,  //PM2.5 - 0.1���0.3um���
             x3: x9,  //������
             x4: x11, //������
             x5: x10, //������
-            x6: x14  //������������
+            x6: x14,  //������������
+
+            mcu: mcu
         },
         options: _config.options,
         time: current.valueOf()
@@ -199,7 +204,7 @@
 
     var rank = 0;
     if(s > 0) {
-        rank = this.random(1000, 99999);//this.random(1000, 99999999);
+        rank = this.random(100200, 102000);//this.random(1000, 99999999);
         db.collection("device_ranks").insertOne({
             mac: mac,
             rank: rank,
@@ -352,13 +357,16 @@
 };
 
 module.exports.initConfigs = function(db) {
+    var _address = config.ALARM_DEFAULTS.address;
+    var _location = config.ALARM_DEFAULTS.location;
+    var _options = config.ALARM_DEFAULTS.options;
     db.collection("devices").find().toArray(function(err, docs) {
         docs.forEach(function(doc) {
             var mac = doc.mac;
-            var address = doc.address || "";
-            var location = doc.location || {};
+            var address = doc.address || _address;
+            var location = doc.location || _location;
+            var options = doc.options || _options;
             var notice = doc.notice;
-            var options = doc.options;
             var config = {
                 mac: mac,
                 address: address,
@@ -370,7 +378,7 @@
                 var userID = doc.userID;
                 db.collection("users").find({"_id": userID}).limit(1).next(function(err, user){
                     if(user) {
-                        config[notice] = {
+                        config["notice"] = {
                             tel: user.username,
                             email: user.email,
                             open_id: user.open_id

--
Gitblit v1.8.0