From b20c288d812ff40acd5d3d9cc961aad6332f3f31 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Mon, 08 Dec 2025 20:01:21 +0800
Subject: [PATCH] 2025-12-08 zwy 整理hms,设备拼接匹配规则;
---
ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceHmsServiceImpl.java | 29 ++++++++++++++++++++++-------
1 files changed, 22 insertions(+), 7 deletions(-)
diff --git a/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceHmsServiceImpl.java b/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceHmsServiceImpl.java
index b09369e..7b21a88 100644
--- a/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceHmsServiceImpl.java
+++ b/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceHmsServiceImpl.java
@@ -1,5 +1,6 @@
package com.ard.sample.manage.service.impl;
+import com.ard.sample.manage.model.enums.DeviceDomainEnum;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -26,6 +27,7 @@
import com.ard.sample.manage.service.IDeviceHmsService;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.integration.annotation.ServiceActivator;
import org.springframework.integration.mqtt.support.MqttHeaders;
@@ -47,6 +49,7 @@
* @version 1.1
* @date 2022/7/6
*/
+@Slf4j
@Service
@Transactional
public class DeviceHmsServiceImpl implements IDeviceHmsService {
@@ -96,7 +99,7 @@
new TypeReference<List<DeviceHmsReceiver>>() {})
.forEach(hmsReceiver -> {
final DeviceHmsEntity hms = entity.clone();
- this.fillEntity(hms, hmsReceiver);
+ this.fillEntity(hms, hmsReceiver, device);
// The same unread hms are no longer incremented.
if (hmsMap.contains(hms.getHmsKey())) {
return;
@@ -184,7 +187,10 @@
return new PaginationData<DeviceHmsDTO>(deviceHmsList, new Pagination(pagination));
- // region 原代码注释备份一份
+
+ }
+
+ // region 原代码注释备份一份
// LambdaQueryWrapper<DeviceHmsEntity> queryWrapper = new LambdaQueryWrapper<DeviceHmsEntity>()
// .and(wrapper -> param.getDeviceSn().forEach(sn -> wrapper.eq(DeviceHmsEntity::getSn, sn).or()))
// .between(param.getBeginTime() != null && param.getEndTime() != null,
@@ -208,8 +214,7 @@
// List<DeviceHmsDTO> deviceHmsList = pagination.getRecords().stream().map(this::entity2Dto).collect(Collectors.toList());
//
// return new PaginationData<DeviceHmsDTO>(deviceHmsList, new Pagination(pagination));
- // endregion
- }
+ // endregion
@Override
public void updateUnreadHms(String deviceSn) {
@@ -238,29 +243,39 @@
.module(entity.getModule())
.messageEn(entity.getMessageEn())
.messageZh(entity.getMessageZh())
+ .inTheSky(entity.getInTheSky())
+ .deviceType(entity.getDeviceType())
.build();
}
/**
- * Populate the received data into the entity. Please refer to the documentation for splicing rules.
+ * 将收到的数据填充到实体中。请参阅文档中的拼接规则。
* @param dto
* @param receiver
*/
- private void fillEntity(DeviceHmsEntity dto, DeviceHmsReceiver receiver) {
+ private void fillEntity(DeviceHmsEntity dto, DeviceHmsReceiver receiver, DeviceDTO deviceDTO) {
dto.setLevel(receiver.getLevel());
dto.setModule(receiver.getModule());
dto.setHmsId(UUID.randomUUID().toString());
+ dto.setInTheSky(receiver.getInTheSky());
+ dto.setDeviceType(receiver.getDeviceType());
- if (HmsEnum.DomainType.DRONE_NEST.getDomain().equals(receiver.getDomainType())) {
+ if(deviceDTO.getDomain() == DeviceDomainEnum.DOCK.getVal()) {
dto.setHmsKey(HmsEnum.HmsFaqIdEnum.DOCK_TIP.getText() + receiver.getCode());
+ log.info("SN:{}的Hms匹配拼接规则值为:{}",deviceDTO.getDeviceSn(), HmsEnum.HmsFaqIdEnum.DOCK_TIP.getText() + receiver.getCode());
return;
}
+// if (HmsEnum.DomainType.DRONE_NEST.getDomain().equals(receiver.getDomainType())) {
+// dto.setHmsKey(HmsEnum.HmsFaqIdEnum.DOCK_TIP.getText() + receiver.getCode());
+// return;
+// }
StringBuilder key = new StringBuilder(HmsEnum.HmsFaqIdEnum.FPV_TIP.getText()).append(receiver.getCode());
if (receiver != null && HmsEnum.IN_THE_SKY.getVal() == (receiver.getInTheSky() != null ? receiver.getInTheSky() : -1)) {
key.append(HmsEnum.IN_THE_SKY.getText());
}
dto.setHmsKey(key.toString());
+ log.info("SN:{}的Hms匹配拼接规则值为:{}",deviceDTO.getDeviceSn(), key.toString());
}
/**
--
Gitblit v1.9.3