package com.qianwen.mdc.collect.handler; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.qianwen.mdc.collect.dto.PackedTelemetryData; import com.qianwen.mdc.collect.entity.iotdb.Alarm; import com.qianwen.mdc.collect.service.AlarmService; import cn.hutool.core.util.ObjectUtil; @Component public class AlarmDataHandler implements TelemetryDataHandler { private static final Logger log = LoggerFactory.getLogger(AlarmDataHandler.class); @Autowired private AlarmService alarmService; @Override public void handleData(PackedTelemetryData data) { alarmService.saveAlarms(parseAlarm(data)); log.info("报警数据处理完成:告警数据{} ",data); } List parseAlarm(PackedTelemetryData data){ if(ObjectUtil.isEmpty(data.getValue())) { return Collections.emptyList(); } List alarmList = new ArrayList<>(); //828d json数组格式[{"alarmNo":"8084"}] JSONArray alarmArr = JSONArray.parseArray(data.getValue()); for(int i=0;i