diff --git a/src/main/java/com/ruoyi/analysis/kafka/service/impl/InKafkaConsumerimpl.java b/src/main/java/com/ruoyi/analysis/kafka/service/impl/InKafkaConsumerimpl.java index 8deeac5..dc3b3d4 100644 --- a/src/main/java/com/ruoyi/analysis/kafka/service/impl/InKafkaConsumerimpl.java +++ b/src/main/java/com/ruoyi/analysis/kafka/service/impl/InKafkaConsumerimpl.java @@ -1,6 +1,11 @@ package com.ruoyi.analysis.kafka.service.impl; +import com.ruoyi.analysis.domain.VehicleMessage; +import com.ruoyi.analysis.handler.MessageHandler; +import com.ruoyi.analysis.handler.MessageVerify; import com.ruoyi.analysis.kafka.service.InKafkaConsumer; +import lombok.extern.log4j.Log4j2; +import org.apache.kafka.clients.consumer.ConsumerRecord; import org.apache.kafka.clients.consumer.ConsumerRecords; import org.springframework.stereotype.Service; @@ -8,9 +13,22 @@ import org.springframework.stereotype.Service; * 接口实现 */ @Service +@Log4j2 public class InKafkaConsumerimpl implements InKafkaConsumer { @Override public void kafkaConsumerInterface(ConsumerRecords records) { + for (ConsumerRecord record : records) { + log.info("消息:key: {} , msg: {}",record.key(), record.value()); + //获取原始报文数据 + String valueMessage = record.value(); + //切割报文起止位 + String content = valueMessage.substring(4, valueMessage.length() - 7); + //转换报文为字符串 + String s = MessageVerify.theDecimal(content); + //切割报文 + VehicleMessage vehicleMessage = MessageHandler.messageTranslated(s); + + } } } diff --git a/src/main/java/com/ruoyi/analysis/service/MessageContext.java b/src/main/java/com/ruoyi/analysis/service/MessageContext.java new file mode 100644 index 0000000..d4911aa --- /dev/null +++ b/src/main/java/com/ruoyi/analysis/service/MessageContext.java @@ -0,0 +1,27 @@ +package com.ruoyi.analysis.service; + +import com.ruoyi.common.redis.service.RedisService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 处理上下文 + */ +@Component +public class MessageContext { + @Autowired + private RedisService redisService; + + private Map messageServiceMap=new HashMap<>(); + + @PostConstruct + private void init(){ + List allMessageKeyList = redisService.getCacheObject(""); + + } +} diff --git a/src/main/java/com/ruoyi/analysis/service/MessageService.java b/src/main/java/com/ruoyi/analysis/service/MessageService.java new file mode 100644 index 0000000..40a02a5 --- /dev/null +++ b/src/main/java/com/ruoyi/analysis/service/MessageService.java @@ -0,0 +1,14 @@ +package com.ruoyi.analysis.service; + +import com.ruoyi.analysis.domain.VehicleMessage; + +/** + *解析处理标准 + */ +public interface MessageService { + + /** + * 车辆解析 + */ + public void VehicleDataAnalysis(VehicleMessage vehicleMessage); +}