From 66cc286b34b53db14fe8c4be2adff14438362eb7 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 30 五月 2025 11:00:59 +0800
Subject: [PATCH] 车辆详情中添加企业编号字段

---
 ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java
index 2932e7e..04a07c0 100644
--- a/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java
+++ b/ruoyi-service/ruoyi-dataInterchange/src/main/java/com/ruoyi/dataInterchange/server/WarnMsgService.java
@@ -54,6 +54,9 @@
 	private UPExgMsgRealLocationDao upExgMsgRealLocationDao;
 	//走川标的公司
 	private List<Integer> enterprise = Arrays.asList(17458936, 43984060, 13914394);
+	//固定报警类型
+	private List<Integer> warnType = Arrays.asList(0x0201, 0x0202, 0x0301, 0x000B, 0x0012, 0x0203, 0x0208, 0x0002, 0x0211, 0x0212, 0x0214, 0x0213, 0x0215, 0x0217, 0x0307);
+	
 	
 	public void up_warn_msg(ChannelHandlerContext ctx, OuterPacket out) {
 		if (!redisTemplate.hasKey("login:" + out.getGnsscenterId())) {
@@ -140,7 +143,7 @@
 				upWarnMsgAdptInfo.setLongitude(gnssData.getLon());
 				upWarnMsgAdptInfo.setLatitude(gnssData.getLat());
 			}
-		}else if(2 != upWarnMsgAdptInfo.getLevel()){
+		}else if(!warnType.contains(upWarnMsgAdptInfo.getWarnType())){
 			return;
 		}
 		upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo);
@@ -187,18 +190,21 @@
 	 * 存储mqtt协议报警信息
 	 */
 	public void saveWarnMsgService(JSONObject jsonObject) {
-		SubscriptionEvent subscriptionEvent = jsonObject.getObject("", SubscriptionEvent.class);
+		SubscriptionEvent subscriptionEvent = jsonObject.getObject("params", SubscriptionEvent.class);
 		List<Event> events = subscriptionEvent.getEvents();
 		events.forEach(event -> {
 			//车牌号
 			String srcName = event.getSrcName();
 			Alarm data = JSONObject.parseObject(event.getData(), Alarm.class);
+			if(!StringUtils.hasLength(data.getAlarmId())){
+				return;
+			}
 			UPWarnMsgAdptInfo upWarnMsgAdptInfo = upWarnMsgAdptInfoDao.findByInfoIdIs(data.getAlarmId());
 			if(null == upWarnMsgAdptInfo){
 				upWarnMsgAdptInfo = new UPWarnMsgAdptInfo();
 			}
 			upWarnMsgAdptInfo.setVehicleNo(srcName);
-			upWarnMsgAdptInfo.setVehicleColor(data.getVehicleLicenseColor());
+			upWarnMsgAdptInfo.setVehicleColor(null == data.getVehicleLicenseColor() ? 0 : data.getVehicleLicenseColor());
 			upWarnMsgAdptInfo.setWarnSrc(data.getSourceType() + 1);
 			upWarnMsgAdptInfo.setWarnType(getAlarmType(data.getEventType()));
 			upWarnMsgAdptInfo.setWarnTime(LocalDateTime.parse(data.getAlarmTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")).toEpochSecond(ZoneOffset.ofHours(8)));
@@ -207,11 +213,16 @@
 			upWarnMsgAdptInfo.setLongitude(data.getLongitude().intValue());
 			upWarnMsgAdptInfo.setLatitude(data.getLatitude().intValue());
 			upWarnMsgAdptInfo.setAltitude(data.getHeight().intValue() / 10);
-			upWarnMsgAdptInfo.setSpeed(data.getSpeed().intValue() / 10000);
-			upWarnMsgAdptInfo.setVec2(data.getSpeed().intValue());
+			upWarnMsgAdptInfo.setSpeed(data.getSpeed().intValue() / 100000);
+			upWarnMsgAdptInfo.setVec2(data.getSpeed().intValue() / 100000);
 			upWarnMsgAdptInfo.setStatus(data.getStatus());
 			upWarnMsgAdptInfo.setDirection(data.getDirection() / 100);
 			upWarnMsgAdptInfo.setInfoContent(data.getAlarmInfo());
+			upWarnMsgAdptInfo.setInferiorPlatformId(25439966);
+			upWarnMsgAdptInfo.setCreateTime(LocalDateTime.now().toEpochSecond(ZoneOffset.ofHours(8)));
+			if(!warnType.contains(upWarnMsgAdptInfo.getWarnType())){
+				return;
+			}
 			upWarnMsgAdptInfoDao.save(upWarnMsgAdptInfo);
 		});
 	}

--
Gitblit v1.7.1