package com.qianwen.mdc.collect.handler;
|
|
import java.util.Arrays;
|
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
|
import com.qianwen.mdc.collect.dto.PackedTelemetryData;
|
import com.qianwen.mdc.collect.entity.iotdb.Alarm;
|
import com.qianwen.mdc.collect.service.AlarmService;
|
|
@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) {
|
|
Alarm alarm = new Alarm();//Objects.requireNonNull(BeanUtil.copy(data, Alarm.class));
|
alarm.setTime(data.getTime());
|
alarm.setWorkstationId(data.getWorkstationId());
|
alarm.setCalendarCode(data.getCalendarCode());
|
alarm.setFactoryDate(data.getFactoryDate());
|
alarm.setFactoryMonth(data.getFactoryMonth());
|
alarm.setFactoryWeek(data.getFactoryWeek());
|
alarm.setFactoryYear(data.getFactoryYear());
|
alarm.setShiftIndex(data.getShiftIndex());
|
alarm.setShiftTimeType(data.getShiftTimeType());
|
|
alarmService.saveAlarms(Arrays.asList(alarm));
|
|
log.info("报警数据处理完成:告警数据{} ",alarm);
|
|
}
|
|
/**
|
* 填充告警的详细信息,级别,信息,代码
|
* @param alarm
|
*/
|
void fileAlarmDetail(Alarm alarm,PackedTelemetryData data){
|
alarm.setMessage(data.getValue());
|
}
|
}
|