From e8ed8e0f6e75fdfe418b920c9ee111e9692f43a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A2=E6=AC=A3=E6=82=A6?= <2289014031@qq.com> Date: Thu, 10 Oct 2024 22:13:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=A2=84=E8=AD=A6=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E7=9B=91=E5=90=AC=E5=99=A8=E5=92=8C=E7=94=B5=E5=AD=90?= =?UTF-8?q?=E5=9B=B4=E6=A0=8F=E5=8C=BA=E5=9F=9F=E5=88=A4=E5=AE=9A=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加FaultWarningListener类,实现对预警信息的监听和处理 --- .../listener/FaultWarningListener.java | 47 +++++++++++++++++++ .../muyu/carData/listener/FenceListener.java | 3 ++ 2 files changed, 50 insertions(+) create mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FaultWarningListener.java diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FaultWarningListener.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FaultWarningListener.java new file mode 100644 index 0000000..f097ecd --- /dev/null +++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FaultWarningListener.java @@ -0,0 +1,47 @@ +package com.muyu.carData.listener; + +import com.alibaba.fastjson.JSONObject; +import com.muyu.carData.event.EsSaveEvent; +import com.muyu.carData.event.EventListener; +import com.muyu.carData.util.CacheUtil; +import com.muyu.domain.WarnRule; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.math.BigDecimal; +import java.util.HashMap; + +/** + * 预警信息监听器 + */ +@Component +@Log4j2 +public class FaultWarningListener implements EventListener { + + @Autowired + private CacheUtil cacheUtil; + + @Override + public void onEvent(EsSaveEvent event) { + try { + log.info("事件开始"); + JSONObject data = event.getData(); + String vin = (String) data.get("VIN"); + HashMap map = (HashMap) cacheUtil.get(vin); + if (map != null) { + WarnRule warnRule = (WarnRule) map.get("warnRule"); + Long maxValue = warnRule.getMaxValue(); + Long minValue = warnRule.getMinValue(); + } + } catch (Exception e) { + log.error("事件发送错误",e); + throw new RuntimeException(e); + } + } + + @Override + public void onApplicationEvent(EsSaveEvent event) { + onEvent(event); + } +} diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FenceListener.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FenceListener.java index d4b0c42..12bb1e1 100644 --- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FenceListener.java +++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/FenceListener.java @@ -16,6 +16,9 @@ import java.awt.*; import java.util.ArrayList; import java.util.HashMap; +/** + * 电子围栏区域判定 + */ @Log4j2 @Component public class FenceListener implements EventListener {