沈斌
2017-01-31 c0378660fd4af2280e5d08594f0ad85f8cd73e12
method.js
@@ -173,27 +173,9 @@
    var _config = global.configs[mac];
    if(_config == null) {
        _config = {
            mac: mac,
            address: "江苏省昆山市摩瑞尔电器",
            location: {

                lat:31.430616,
                lng:120.988327

            },
            notice: {
                tel: "15950198162",

                email: "it01@moral.org.cn",

                open_id: "o-RTuwvMHWotyirPHLmdSB_dKoQU"
            },
            options: {
                1: [1000, 2000, 3000],
                2: [1000, 2000, 3000],
                3: [1000, 2000, 3000],
                4: [1000, 2000, 3000],
                5: [1000, 2000, 3000]
            }
        };
        configs[mac] = _config;
        _config = config.ALARM_DEFAULTS;
        _config.mac = mac;
        global.configs[mac] = _config;
    }
    var current = moment();
@@ -233,6 +215,7 @@
        }, function(err, result) { });
    }
    var _this = this;
    db.collection("data").insertOne({
        mac: mac,
        x1: x1,
@@ -265,17 +248,20 @@
    }, function(err, doc) {
        if (err) return;
        var level1 = this.getLevel(x1,  _config['options'][1]);
        var level2 = this.getLevel(x9,  _config['options'][2]);
        var level3 = this.getLevel(x11, _config['options'][3]);
        var level4 = this.getLevel(x10, _config['options'][4]);
        var level5 = this.getLevel(x14, _config['options'][5]);
        sensor_data._id = doc.insertedId;
        sensor_data.level = Math.max(level1, level2, level3, level4, level5);
        sensor_data.notice = _config.notice;
        sensor_data.address = _config.address;
        sensor_data.data = { 1: [x1, level1], 2: [x9, level2], 3: [x11, level3], 4: [x10, level4], 5: [x14, level5] };
        queue.pushToMQ('ex_data_alarm', sensor_data);
        var level1 = _this.getLevel(x1,  _config['options'][1]);
        var level2 = _this.getLevel(x9,  _config['options'][2]);
        var level3 = _this.getLevel(x11, _config['options'][3]);
        var level4 = _this.getLevel(x10, _config['options'][4]);
        var level5 = _this.getLevel(x14, _config['options'][5]);
        var level = Math.max(level1, level2, level3, level4, level5);
        if(level > 0) {
            sensor_data._id = doc.insertedId;
            sensor_data.level = level;
            sensor_data.notice = _config.notice;
            sensor_data.address = _config.address;
            sensor_data.data.levels = [level1, level2, level3, level4, level5];
            queue.pushToMQ('ex_data_alarm', sensor_data);
        }
        callback(doc, rank);
    });
@@ -283,6 +269,7 @@
module.exports.getLevel = function(val, option) {
    var level = 0;
    if(option == null || option.length < 3) return level;
    if(val > option[0]) {
        var level = 1;
        if(val > option[2]) {