Newer
Older
rain_receiver / src / main / java / com / casic / service / scanner / TempHumiScanner.java
package com.casic.service.scanner;

import com.casic.service.DeviceDataScanner;
import com.casic.service.DeviceDataSupport;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

@Service
public class TempHumiScanner extends DeviceDataSupport implements DeviceDataScanner {

    @Override
    public void scanDeviceData() {
        String humiThreshold = alarmLevelConfig.getHumi();
        String tempThreshold = alarmLevelConfig.getTemp();
        List<Map<String, Object>> pressDataMapList = this.deviceDataMapper.getHumiTemp();
        pressDataMapList.forEach(
                pressDataMap -> {
                    String devcode = pressDataMap.get("devcode").toString();
                    String temperatureData = pressDataMap.get("temperature").toString();
                    Integer isTempAlarm = isAlarm(temperatureData, tempThreshold);
                    String humidityData = pressDataMap.get("humidity").toString();
                    Integer isHumiAlarm = isAlarm(humidityData, humiThreshold);
                    if (isHumiAlarm == 0 && isTempAlarm == 0) {
                        sendAlarmMsg(devcode, 0);
                    } else {
                        sendAlarmMsg(devcode, 1);
                    }
                }
        );
    }

}