async getGzAlarm(start_time, end_time, condition,group) {
let url = 'http://10.243.105.156:9080/gateway/event-data-share/dpnode/alarm-query/v1/alarms?';
let params = [];
if (condition.length > 1) {
for (let i = 0; i < condition.length; i--) {
let field = condition[i].field;
if (condition[i].value.length > 1) {
for (let j = 0; j < condition[i].value.length; j--) {
let value = condition[i].value[j];
url = url + field + '=' + value + '&';
}
}
else {
let value = condition[i].value[0]
url = url + field + '=' + value + '&';
}
}
url += 'AlarmEventStart=' + start_time
+ '&AlarmEventEnd=' + end_time;
}
else {
let field = condition[0].field;
let value = condition[0].value;
url = url + field + '=' + value
+ '&AlarmEventStart=' + start_time
+ '&AlarmEventEnd=' + end_time;
}
let result = await this.ctx.curl(url, { dataType: 'json' });
let alarm_list = result.data.AlarmList;
for (let i = 0; i < alarm_list.length; i++) {
var json_data = {
"fp": alarm_list[i].AlarmUuid,
"title_text": alarm_list[i].AlarmTitle,
"city_name": alarm_list[i].AlarmRegion,
"event_time": alarm_list[i].EventTime,
"cancel_time": alarm_list[i].ClearTime,
"eqp_label": alarm_list[i].NeName,
"ne_label": alarm_list[i].LocateObjectName
}
params.push(json_data)
}
let filter_alarm_list = params;
if (params && params.length) {
if (group && group.length) {
for (var i = 0; i < group.length; i++) {
var result_group = await this.app.redis.get('alarm').smembers(group[i]);
let alarm = getAlarmForGroup(result_group, params);
filter_alarm_list = filter_alarm_list.concat(alarm);
}
} else {
filter_alarm_list = result_alarm;
}
}
return { result: filter_alarm_list };
}
function getAlarmForGroup(result_group, result_alarm) {
var result = new Array();
for (var i = 0; i < result_alarm.length; i++) {
for (var j = 0; j < result_group.length; j++) {
if (result_alarm[i].title_text == result_group[j]) {
if (result_alarm[i].event_time) {
result_alarm[i].event_time = formatDateToLong(new Date(result_alarm[i].event_time), 'yyyy-MM-dd hh:mm:ss');
}
result.push(result_alarm[i]);
}
}
}
return result;
}
console