明树Git Lab

Commit 03d8d036 authored by zengfanpei's avatar zengfanpei

update

parent 3555033f
...@@ -47,11 +47,11 @@ async function updateDevice(req, res, next) { ...@@ -47,11 +47,11 @@ async function updateDevice(req, res, next) {
attrs.map(o => {attrMap[o._id] = o; return}); attrs.map(o => {attrMap[o._id] = o; return});
for (let i = 0; i < req.body.thresholds.length; i++) { for (let i = 0; i < req.body.thresholds.length; i++) {
const element = req.body.thresholds[i]; const element = req.body.thresholds[i];
let {dbKey, deviceKey, name} = attrMap[element.attrId]; let {dbKey, deviceKey, name, _id} = attrMap[element.dbKey || element.attrId];
await DB.CollectThreshold.findOneAndUpdate({deviceNumber: ret.deviceNumber, dbKey}, { await DB.CollectThreshold.findOneAndUpdate({deviceNumber: ret.deviceNumber, dbKey}, {
max: element.max, max: element.max,
min: element.min, min: element.min,
attrId: element.attrId, attrId: _id || element.attrId,
dbKey, dbKey,
deviceKey, deviceKey,
name, name,
......
...@@ -37,9 +37,11 @@ async function collectDeviceInfo1({ deviceHQType }) { ...@@ -37,9 +37,11 @@ async function collectDeviceInfo1({ deviceHQType }) {
obj.name = dev.name || obj.name; obj.name = dev.name || obj.name;
console.log(obj, "==========================") console.log(obj, "==========================")
// 2. 入库 // 2. 入库
await collectSMCModule.insertHQData(obj); let check = await collectSMCModule.insertHQData(obj);
// 3. 处理阈值报警通知 // 3. 处理阈值报警通知
// handleDeviceThreshold(obj); if(!check) { // 只有新创建的 需要走一遍阈值检测。
handleDeviceThreshold(obj);
}
// 4. 处理设备在线状态 // 4. 处理设备在线状态
handleDeviceOnLine({deviceNumber: obj.deviceNumber, online: obj.onLineState}); //onLineState 1在线0离线 handleDeviceOnLine({deviceNumber: obj.deviceNumber, online: obj.onLineState}); //onLineState 1在线0离线
} else { } else {
......
...@@ -37,9 +37,12 @@ async function collectDeviceInfo3({ deviceHQType }) { ...@@ -37,9 +37,12 @@ async function collectDeviceInfo3({ deviceHQType }) {
obj.name = dev.name || obj.name; obj.name = dev.name || obj.name;
console.log(obj, "=============collectDeviceInfo3=============") console.log(obj, "=============collectDeviceInfo3=============")
// 2. 入库 // 2. 入库
await collectWSModule.insertHQData(obj); // collectWSModule let check = await collectWSModule.insertHQData(obj); // collectWSModule
// 3. 处理阈值报警通知 // 3. 处理阈值报警通知
// handleDeviceThreshold(obj); if(!check) {
// 当数据i第一次插入时 需要阈值检测
handleDeviceThreshold(obj);
}
// 4. 处理设备在线状态 // 4. 处理设备在线状态
handleDeviceOnLine({deviceNumber: obj.deviceNumber, online: obj.onLineState}); //onLineState 1在线0离线 handleDeviceOnLine({deviceNumber: obj.deviceNumber, online: obj.onLineState}); //onLineState 1在线0离线
} else { } else {
...@@ -116,11 +119,11 @@ async function handleDeviceThreshold(obj) { ...@@ -116,11 +119,11 @@ async function handleDeviceThreshold(obj) {
if(_.isNumber(element.max) && _.gt(obj[element.dbKey], element.max)) { if(_.isNumber(element.max) && _.gt(obj[element.dbKey], element.max)) {
// 采集值 > 最大设置值 // 采集值 > 最大设置值
// exceeds.push({...element, collectValue: obj[element.dbKey], deviceNumber: obj.deviceNumber}); // exceeds.push({...element, collectValue: obj[element.dbKey], deviceNumber: obj.deviceNumber});
exceeds.push(`设备${obj.deviceNumber}, 采集值: ${obj[element.dbKey]}, 最大阈值:${element.max}`); exceeds.push(`设备${obj.deviceNumber}, 采集参数名称:${element.name}, 采集参数KEY: ${element.dbKey}, 采集值:${obj[element.dbKey]}超出了最大阈值:${element.max}`);
} }
if(_.isNumber(element.min) && _.lt(obj[element.dbKey], element.min)) { if(_.isNumber(element.min) && _.lt(obj[element.dbKey], element.min)) {
// exceeds.push({...element, collectValue: obj[element.dbKey], deviceNumber: obj.deviceNumber}); // exceeds.push({...element, collectValue: obj[element.dbKey], deviceNumber: obj.deviceNumber});
exceeds.push(`设备${obj.deviceNumber}, 采集值: ${obj[element.dbKey]}, 最小阈值:${element.min}`); exceeds.push(`设备${obj.deviceNumber}, 采集参数名称:${element.name}, 采集参数KEY: ${element.dbKey}, 采集值: ${obj[element.dbKey]}超出了最小阈值:${element.min}`);
} }
} }
} }
......
...@@ -17,7 +17,7 @@ const collectThresholdSchema = new Schema({ ...@@ -17,7 +17,7 @@ const collectThresholdSchema = new Schema({
type: String, type: String,
comment: "CollectAttribute存的信息" comment: "CollectAttribute存的信息"
}, },
name: String, //"CollectAttribute存的信息"
max: { max: {
type: Number, type: Number,
comment: "最大值" comment: "最大值"
......
...@@ -32,7 +32,13 @@ async function insertHQData(data) { ...@@ -32,7 +32,13 @@ async function insertHQData(data) {
if(!(data.deviceNumber && data.time)) { if(!(data.deviceNumber && data.time)) {
return; return;
} }
return await DB.CollectSMC.findOneAndUpdate({time: data.time}, data, {upsert: true}) // return await DB.CollectSMC.findOneAndUpdate({time: data.time}, data, {upsert: true})
let check = await DB.CollectSMC.findOne({time: data.time});
if(!check) {
// 没有就新增
await DB.CollectSMC.create(data);
}
return !!check;
} }
......
...@@ -35,6 +35,7 @@ async function insertHQData(data) { ...@@ -35,6 +35,7 @@ async function insertHQData(data) {
if(!check) { if(!check) {
await DB.CollectWS.create(data); await DB.CollectWS.create(data);
} }
return !!check;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment