feat():指标预警完成

master
Saisai Liu 2024-07-01 08:33:10 +08:00
parent d577eab442
commit 5da15f6323
3 changed files with 7 additions and 184 deletions

View File

@ -65,6 +65,11 @@ public class MessageHandler {
String[] split = clientId.split("-");
String vin = split[0];
String ip = split[1];
//判断业务是否存入redis存配置
if (redisService.hasKey(vin+"List")||redisService.getList(vin+"List")==null){
log.warn("该车辆无配置信息,已通知业务,车辆为:{}",vin);
rabbitTemplate.convertAndSend("zhiLian-vehicle-vin",vin);
}
long timestamp = JSON.to(Long.class, jsonObject.get("timestamp"));
// 判断登陆事件
if (jsonObject.get("auth") != null) {
@ -83,7 +88,7 @@ public class MessageHandler {
}});
// 发送事件开启指标预警事件
if (save) {
rabbitTemplate.convertAndSend("standard_Warn_Event_Start", vin);
rabbitTemplate.convertAndSend("standard-Warn-Event-Start", vin);
}
log.info(save ? vin + "上线记录成功" : vin + "上线记录失败");
// 消息消费成功则确认
@ -128,7 +133,7 @@ public class MessageHandler {
log.info(update ? vin + "下线记录成功" : vin + "下线记录失败");
// 发送事件开启指标预警事件
if (update) {
rabbitTemplate.convertAndSend("standard_Warn_Event_End", vin);
rabbitTemplate.convertAndSend("standard-Warn-Event-End", vin);
}
redisService.deleteObject(vin);
channel.basicAck(message.getMessageProperties().getDeliveryTag(), false);
@ -143,9 +148,5 @@ public class MessageHandler {
}
}
}
}
}

View File

@ -1,30 +0,0 @@
package com.mobai.runner;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
/**
* @author Saisai
* @className Prop
* @description
* @date 2024/6/25 20:17
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class Prop {
private String vin;
private String key;
private Long timeLength;
private Double activeLength;
}

View File

@ -1,148 +0,0 @@
package com.mobai.runner;
import com.alibaba.fastjson.JSON;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author Saisai
* @className PropRunner
* @description
* @date 2024/6/25 19:57
*/
@Component
public class PropRunner implements ApplicationRunner {
@Autowired
private RedisTemplate<String,String> redis;
@Override
public void run(ApplicationArguments args) throws Exception {
List<String> vehicles = new ArrayList<>() {{
add("VIN12345678912345");
add("VIN123456789DIJE4");
add("RQIP0AGC6Z94T1RUS");
add("RKGBI2CKLW4T3PM1J");
add("BHA38GWIMIMI4ZWKT");
add("HX603FUDTV1G8AWKV");
add("1HHUXJR83E94JQGAJ");
add("BFJVGBO2Q5RAYYU25");
add("Z34C1IBPJELI9OYWY");
add("35O90QPUFX21N8V4N");
add("7YG74PQ38G1E7VIVS");
add("OSHY1OFUVQESGRDJ8");
add("WZHFHDAIYUVKSHH3G");
add("OGV23LLM03B27CLH6");
add("TITEFBRAARGOY0XUC");
add("UOUVE8I86UYO1K3EH");
add("V5RF71OEG3KHBQZWD");
add("ICO9G1BONWOTW9M12");
add("NAEYC4ZL2NFZ5M71Q");
add("6WT4TREX19NZQ77V9");
add("9VY825QOP64E3VNIY");
add("OB5S8N9H273A1G8LM");
add("EYT4VJUKYW9E9TK5N");
add("P4G2E395RK19P6XKJ");
add("GX9KC2J8JHZ1R8SO8");
add("DCORIPLUYDVXU0KGU");
add("L17GSFUCFE8S4FP9B");
add("NC412M5S1324G9YDM");
add("P4UEJAMK7LTAES501");
add("61C8G3ANN70LFNEKW");
add("MKSMAB8ZFN95MFQ0B");
add("TWNBFOED42MVCFZZT");
add("H217SHM5A7MG5TZ3S");
add("K1M1YZPEQL70P7YN3");
add("8VRKWMJFHTVA7MZER");
add("Q7974VNRYU2YFEKUY");
add("SZYE7YS1WFOHNS0WO");
add("CBJ3GCQTZFSA57D23");
add("9L95HD8ZEVR699KEV");
add("S3LG8SXSAEP0726SI");
add("P5YK7NVRG8NTCH47Q");
add("YFE693JRRAU6071O7");
add("SZGMMFSU4IM8GMKK3");
add("JVVBHNUK69I5JHML4");
add("M639G6A8JHZLR4063");
add("D2V9G1WZYKEEPG2R5");
add("30X8PZ4WR3L5WR6DG");
add("UNFQSB382G7RGUNIU");
add("HTU4R6HA2964MUTE6");
add("FML2ZFVWBI1D2F3ZR");
add("MU6D6J2A6RMHBLEXL");
add("F1CFKRQK8J4NEK7GZ");
add("1VR3C0G5DTZPEFWQI");
add("LZLXYLRJPTBOZJRLZ");
add("83PLIK2ISNEG4033V");
add("A4Z8INWK4ZWELXFGQ");
add("OC29LYH6WYRMI40D8");
add("612131WM4VGW7R3ED");
add("HJET0O7W8O2V7WLI6");
add("7TZCJ21J2B202MQA3");
add("DIGC27FH0U3HHQ908");
add("XAVU7RIDUZSNQ1CQX");
add("ZV150C64IRG3UL3GI");
add("NM2KDD0NQXC0J29EK");
add("H4Y8PT0FQ17VIJF0A");
add("NKDJYNRXONCI4TO6I");
add("SEM06B25293OWC0DM");
add("MJARBUOUKDE8Y5ATN");
add("ALX5X34MK65O1JOCT");
add("E69ISH5TST723TSTF");
add("J1KQ3MDXXDTJ48ANJ");
add("F7WAZ4JWQTJMMV4D3");
add("0MYV55ESMZCEZDDCB");
add("670BE4AIWFBYLCQQ2");
add("BWBPYZHQN8L5JTHT0");
add("9LIBQ5ZKPITT9QRKD");
add("CXCYATA7W19KERXYK");
add("HI2WKQX3D4NBHEB6O");
add("1WYB9O5VPPNEH6ZMX");
add("8PT2CFO6U6O55725X");
add("LMD36P0ANAVF8K2T0");
add("LIN3D2KSZF6NLH60M");
add("U7O3UXKISX0BUVDXQ");
add("Q8BVQ3QZTLFRMEVE7");
add("48GH1IHSVFQ6YGS85");
add("JAV0VJUJYOTOK9KSY");
add("0Q9P3PVTP2DA8CGW1");
add("TFNRFAV9FPKKNL85E");
add("D72TKF55550SXZTN3");
add("65KXGYUNHF057P3U1");
add("DMZTXS8KI9DVUG7XV");
add("KRB0Z7V7O8JHX499X");
add("JFMTVY934AK0RQMUV");
add("FFMXWPWW05L6WHBZM");
add("M0SP12TDXYOPAN6HE");
add("U30LDVYCMPDQHJIZG");
add("CAT9ZPQCR66218L5T");
add("659XTVJ2IMA60REM1");
add("KRB0Z7V7O8JHX499X");
}};
vehicles = vehicles.stream().distinct().collect(Collectors.toList());
// 公司旗下的车辆
redis.opsForList().leftPushAll("vehicles",vehicles);
// 公司集
redis.opsForList().leftPushAll("company",new ArrayList<String>(){{
add("vehicles");
add("vehicles1");
add("vehicles2");
}});
// 公司提供的指标
redis.opsForValue().set("vehicles", JSON.toJSONString(new Prop(){{
setVin(null);
setKey(JSON.toJSONString(new ArrayList<String>(){{
add("speed:150");
add("mileage:150");
add("voltage:150");
add("current:150");
}}));
}}));
}
}