16639036659
2024-04-07 c20b17fee68aa391bbbdaed34d1ee22f1ed21448
src/main/java/com/gkhy/fourierSpecialGasMonitor/service/impl/DataReceiveServiceImpl.java
@@ -5,6 +5,7 @@
import com.gkhy.fourierSpecialGasMonitor.commons.domain.Result;
import com.gkhy.fourierSpecialGasMonitor.commons.enums.ForeignResultCode;
import com.gkhy.fourierSpecialGasMonitor.commons.enums.ResultCode;
import com.gkhy.fourierSpecialGasMonitor.commons.enums.SystemCacheKeyEnum;
import com.gkhy.fourierSpecialGasMonitor.commons.exception.DataReceiveException;
import com.gkhy.fourierSpecialGasMonitor.decorator.WarningThresholdUpdateEvent;
import com.gkhy.fourierSpecialGasMonitor.entity.*;
@@ -170,6 +171,9 @@
        return ForeignResult.success();
    }
    /**
     * 设备预警
     * */
    @Override
    public ForeignResult deviceMonitor(DeviceMonitorReqDTO reqDTO) {
        if (reqDTO == null)
@@ -214,7 +218,7 @@
                List<String> deviceExcReceiver = Arrays.asList(DEVICE_EXC_RECEIVER);
                if (!CollectionUtils.isEmpty(deviceExcReceiver)) {
                    List<String> distinctPhone = deviceExcReceiver.stream().distinct().collect(Collectors.toList());
                    logger.info("【气体浓度异常短信发送】-----发送内容:" + "数据异常,无法进行监测 气体浓度连续超标,系统判断为设备离线,请相关负责人及时检查处置。"
                    logger.info("【气体浓度异常短信发送】-----发送内容:" + "克拉玛依富城数据异常,无法进行监测 气体浓度连续超标,系统判断为设备离线,请相关负责人及时检查处置。"
                            + " 发送时间: " + LocalDateTime.now()+ " 接收人手机号:" + distinctPhone);
                    if (!org.springframework.util.StringUtils.isEmpty(smsSendEnabledStatus) && "true".equals(smsSendEnabledStatus)) {
                        sendMessageUtil.sendMessageCheck(deviceExcReceiver.toArray(new String[deviceExcReceiver.size()]), mesMap);
@@ -236,6 +240,7 @@
        }
        return ForeignResult.success();
    }
    private void gasFluxDataCacheAndPush(){
        LocalDateTime time = LocalDateTime.now();
@@ -270,7 +275,7 @@
    private  void execDataCountAndPush(UploadGasConcentrationReqDTO reqDto){
        RBucket<List<GasCategory>> bucket = redissonClient.getBucket("gas_category_cache_info");
        RBucket<List<GasCategory>> bucket = redissonClient.getBucket(SystemCacheKeyEnum.KEY_GAS_CATEGORY.getKey());
        List<GasCategory> gasCategoryCache = bucket.get();
        if (CollectionUtils.isEmpty(gasCategoryCache)){
            gasCategoryCache = gasCategoryService.list();
@@ -325,6 +330,9 @@
        }
    }
    /**
     * 气体数据--预警信息推送
    * */
    private void warnLogGenerateAndExecPush(Integer warnThresholdEnumCode,GasCategory gasCategory,Double value){
        if (gasCategory == null)
            throw new DataReceiveException(this.getClass(), ForeignResultCode.SYSTEM_ERROR_DATABASE_FAIL.getCode(),"该气体不存在于对照表");