修改日志打印

This commit is contained in:
孙小云 2026-02-11 10:47:58 +08:00
parent 880f98e8e1
commit ab53e533c6
2 changed files with 104 additions and 104 deletions

View File

@ -92,7 +92,7 @@ public class SynService {
if (StringUtils.hasText(trimmedPattern)) {
try {
excludePatternList.add(Pattern.compile(trimmedPattern));
log.info("加载设备名称过滤规则: {}", trimmedPattern);
// log.info("加载设备名称过滤规则: {}", trimmedPattern);
} catch (Exception e) {
log.error("无效的正则表达式: {}, error={}", trimmedPattern, e.getMessage());
}
@ -101,7 +101,7 @@ public class SynService {
}
if (excludePatternList.isEmpty()) {
log.info("未配置设备名称过滤规则");
log.error("未配置设备名称过滤规则");
}
}
}
@ -223,7 +223,7 @@ public class SynService {
// 通过API获取子设备信息
DeviceInfo childDeviceInfo = iThingsBoardDomain.getDeviceInfo(childDeviceId);
if (childDeviceInfo == null) {
log.warn("子设备 {} 不存在,跳过", childDeviceId);
// log.warn("子设备 {} 不存在,跳过", childDeviceId);
skippedCount++;
continue;
}
@ -240,19 +240,19 @@ public class SynService {
// 判断是大疆还是拓恒设备通过设备名称是否以 TH 开头
if (deviceName.startsWith("TH")) {
// 拓恒设备处理逻辑
log.info("检测到拓恒设备: {}", deviceName);
// log.info("检测到拓恒设备: {}", deviceName);
syncTuohengDevice(childDeviceInfo, gatewayInfo.getId());
} else {
// 大疆设备处理逻辑原有逻辑
log.info("检测到大疆设备: {}", deviceName);
// log.info("检测到大疆设备: {}", deviceName);
AttributeMap attributes = iThingsBoardDomain.getPredefinedDeviceAttributes(childDeviceId);
log.info("大疆设备 {} 的属性: {}", deviceName, attributes);
// log.info("大疆设备 {} 的属性: {}", deviceName, attributes);
DeviceType deviceType = determineDeviceType(childDeviceInfo, attributes);
log.info("大疆设备 {} 的类型: {}", deviceName, deviceType);
// log.info("大疆设备 {} 的类型: {}", deviceName, deviceType);
Long deviceId = syncDevice(childDeviceInfo, deviceType, gatewayInfo.getId());
log.info("大疆设备 {} 同步到device表deviceId={}", deviceName, deviceId);
// log.info("大疆设备 {} 同步到device表deviceId={}", deviceName, deviceId);
syncDeviceByType(deviceId, childDeviceInfo.getName(), deviceType, attributes);
log.info("大疆设备 {} 同步完成", deviceName);
// log.info("大疆设备 {} 同步完成", deviceName);
}
totalCount++;
@ -270,7 +270,7 @@ public class SynService {
}
}
log.info("========== 数据同步任务完成,共同步 {} 个设备,跳过 {} 个设备 ==========", totalCount, skippedCount);
// log.info("========== 数据同步任务完成,共同步 {} 个设备,跳过 {} 个设备 ==========", totalCount, skippedCount);
// 处理没有分组的机场将其添加到默认分组
assignDocksToDefaultGroup();
@ -286,7 +286,7 @@ public class SynService {
*/
private void assignDocksToDefaultGroup() {
try {
log.info("========== 开始检查并分配未分组的机场到默认分组 ==========");
// log.info("========== 开始检查并分配未分组的机场到默认分组 ==========");
// 1. 查询或创建默认分组
String defaultGroupName = "默认分组";
@ -294,14 +294,14 @@ public class SynService {
if (defaultGroup == null) {
// 默认分组不存在创建它
log.info("默认分组不存在,开始创建: {}", defaultGroupName);
// log.info("默认分组不存在,开始创建: {}", defaultGroupName);
defaultGroup = new Group();
defaultGroup.setGroupName(defaultGroupName);
defaultGroup.setCreateBy("system");
groupDomain.insertGroup(defaultGroup);
log.info("默认分组创建成功: groupId={}, groupName={}", defaultGroup.getGroupId(), defaultGroupName);
// log.info("默认分组创建成功: groupId={}, groupName={}", defaultGroup.getGroupId(), defaultGroupName);
} else {
log.info("默认分组已存在: groupId={}, groupName={}", defaultGroup.getGroupId(), defaultGroupName);
// log.info("默认分组已存在: groupId={}, groupName={}", defaultGroup.getGroupId(), defaultGroupName);
}
Long defaultGroupId = defaultGroup.getGroupId();
@ -309,10 +309,10 @@ public class SynService {
// 2. 查询所有机场
Dock queryDock = new Dock();
List<Dock> allDocks = dockDomain.selectDockList(queryDock);
log.info("查询到机场总数: {}", allDocks != null ? allDocks.size() : 0);
// log.info("查询到机场总数: {}", allDocks != null ? allDocks.size() : 0);
if (allDocks == null || allDocks.isEmpty()) {
log.info("没有机场需要处理");
// log.info("没有机场需要处理");
return;
}
@ -336,7 +336,7 @@ public class SynService {
dockGroupDomain.insertDockGroup(dockGroup);
assignedCount++;
log.info("机场 [ID:{}, Name:{}] 已添加到默认分组", dockId, dock.getDockName());
// log.info("机场 [ID:{}, Name:{}] 已添加到默认分组", dockId, dock.getDockName());
} else {
alreadyInGroupCount++;
log.debug("机场 [ID:{}, Name:{}] 已在分组中,跳过", dockId, dock.getDockName());
@ -346,8 +346,8 @@ public class SynService {
}
}
log.info("========== 机场分组检查完成:新分配 {} 个机场到默认分组,{} 个机场已有分组 ==========",
assignedCount, alreadyInGroupCount);
// log.info("========== 机场分组检查完成:新分配 {} 个机场到默认分组,{} 个机场已有分组 ==========",
// assignedCount, alreadyInGroupCount);
} catch (Exception e) {
log.error("分配机场到默认分组失败: {}", e.getMessage(), e);
@ -369,16 +369,16 @@ public class SynService {
// 获取机场挂载的无人机SN号
Optional<String> subDeviceSnOpt = attributes.get(DeviceAttributes.SUB_DEVICE_SN);
log.info("机场 {} 的 sub_device.device_sn 属性: {}", deviceName,
subDeviceSnOpt.isPresent() ? subDeviceSnOpt.get() : "不存在或为空");
// log.info("机场 {} 的 sub_device.device_sn 属性: {}", deviceName,
// subDeviceSnOpt.isPresent() ? subDeviceSnOpt.get() : "不存在或为空");
if (subDeviceSnOpt.isPresent() && StringUtils.hasText(subDeviceSnOpt.get())) {
String aircraftSn = subDeviceSnOpt.get();
log.info("机场 {} 尝试查找无人机: aircraftSn={}", deviceName, aircraftSn);
// log.info("机场 {} 尝试查找无人机: aircraftSn={}", deviceName, aircraftSn);
Device aircraftDevice = findDeviceBySn(aircraftSn);
if (aircraftDevice != null) {
log.info("找到无人机设备: aircraftSn={}, deviceId={}", aircraftSn, aircraftDevice.getDeviceId());
// log.info("找到无人机设备: aircraftSn={}, deviceId={}", aircraftSn, aircraftDevice.getDeviceId());
syncDockAircraft(deviceId, aircraftDevice.getDeviceId());
} else {
log.warn("未找到无人机设备: aircraftSn={}, 可能无人机尚未同步", aircraftSn);
@ -391,12 +391,12 @@ public class SynService {
Optional<String> dockSnOpt = attributes.get(DeviceAttributes.DOCK_SN);
if (dockSnOpt.isPresent() && StringUtils.hasText(dockSnOpt.get())) {
String dockSn = dockSnOpt.get();
log.info("无人机 {} 尝试查找所属机场: dockSn={}", deviceName, dockSn);
// log.info("无人机 {} 尝试查找所属机场: dockSn={}", deviceName, dockSn);
// 通过机场SN号查找机场设备
Device dockDevice = findDeviceBySn(dockSn);
if (dockDevice != null) {
log.info("找到机场设备: dockSn={}, deviceId={}", dockSn, dockDevice.getDeviceId());
// log.info("找到机场设备: dockSn={}, deviceId={}", dockSn, dockDevice.getDeviceId());
// 只有在找到机场的情况下才同步无人机表
syncAircraft(deviceId, deviceName);
@ -457,9 +457,9 @@ public class SynService {
String iotDeviceId = deviceInfo.getId();
String deviceName = deviceInfo.getName();
String deviceSn = deviceName; // 使用设备名称作为SN号,网关其实是没有SN号的
log.info("开始同步设备: iotDeviceId={}, deviceName={}, deviceType={}, gatewayId={}",
iotDeviceId, deviceName, deviceType, gatewayId);
//
// log.info("开始同步设备: iotDeviceId={}, deviceName={}, deviceType={}, gatewayId={}",
// iotDeviceId, deviceName, deviceType, gatewayId);
// 查询设备是否已存在通过 iotDeviceId
Device existingDevice = deviceDomain.selectDeviceByIotDeviceId(iotDeviceId);
@ -483,7 +483,7 @@ public class SynService {
// 尝试获取锁最多等待3秒
boolean locked = tryLock(lockKey, lockValue, 10);
if (!locked) {
log.warn("获取设备同步锁失败,可能有其他线程正在同步该设备: deviceSn={}", deviceSn);
// log.warn("获取设备同步锁失败,可能有其他线程正在同步该设备: deviceSn={}", deviceSn);
// 等待一小段时间后重新查询可能已经被其他线程插入
try {
Thread.sleep(100);
@ -492,7 +492,7 @@ public class SynService {
}
Device retryDevice = deviceDomain.selectDeviceByDeviceSn(deviceSn);
if (retryDevice != null) {
log.info("重新查询到设备: deviceSn={}, deviceId={}", deviceSn, retryDevice.getDeviceId());
// log.info("重新查询到设备: deviceSn={}, deviceId={}", deviceSn, retryDevice.getDeviceId());
return retryDevice.getDeviceId();
}
log.error("获取锁失败且重新查询也未找到设备: deviceSn={}", deviceSn);
@ -503,7 +503,7 @@ public class SynService {
// 双重检查获取锁后再次查询防止重复插入
Device doubleCheckDevice = deviceDomain.selectDeviceByDeviceSn(deviceSn);
if (doubleCheckDevice != null) {
log.info("双重检查发现设备已存在: deviceSn={}, deviceId={}", deviceSn, doubleCheckDevice.getDeviceId());
// log.info("双重检查发现设备已存在: deviceSn={}, deviceId={}", deviceSn, doubleCheckDevice.getDeviceId());
return doubleCheckDevice.getDeviceId();
}
@ -520,13 +520,13 @@ public class SynService {
String manufacturer = deviceName.startsWith("TH") ? "tuoheng" : "dajiang";
newDevice.setDeviceManufacturer(manufacturer);
log.info("准备插入新设备: deviceName={}, deviceType={}, deviceSn={}, manufacturer={}",
deviceName, deviceType, deviceSn, manufacturer);
// log.info("准备插入新设备: deviceName={}, deviceType={}, deviceSn={}, manufacturer={}",
// deviceName, deviceType, deviceSn, manufacturer);
deviceDomain.insertDevice(newDevice);
Long deviceId = newDevice.getDeviceId();
log.info("插入新设备成功: iotDeviceId={}, deviceName={}, deviceType={}, 返回deviceId={}",
iotDeviceId, deviceName, deviceType, deviceId);
// log.info("插入新设备成功: iotDeviceId={}, deviceName={}, deviceType={}, 返回deviceId={}",
// iotDeviceId, deviceName, deviceType, deviceId);
return deviceId;
} finally {
// 释放锁
@ -563,8 +563,8 @@ public class SynService {
if (needUpdate) {
existingDevice.setUpdateBy("system");
deviceDomain.updateDevice(existingDevice);
log.info("更新设备: iotDeviceId={}, deviceName={}, deviceType={}, manufacturer={}",
iotDeviceId, deviceName, deviceType, manufacturer);
// log.info("更新设备: iotDeviceId={}, deviceName={}, deviceType={}, manufacturer={}",
// iotDeviceId, deviceName, deviceType, manufacturer);
}
return existingDevice.getDeviceId();
@ -582,7 +582,7 @@ public class SynService {
* @param deviceName 设备名称
*/
private void syncDock(Long deviceId, String deviceName) {
log.info("开始同步机场: deviceId={}, deviceName={}", deviceId, deviceName);
// log.info("开始同步机场: deviceId={}, deviceName={}", deviceId, deviceName);
// 查询机场是否已存在
Dock existingDock = dockDomain.selectDockByDeviceId(deviceId);
@ -596,14 +596,14 @@ public class SynService {
newDock.setDeviceId(deviceId);
newDock.setCreateBy("system");
log.info("准备插入新机场: deviceId={}, dockName={}", deviceId, deviceName);
// log.info("准备插入新机场: deviceId={}, dockName={}", deviceId, deviceName);
dockDomain.insertDock(newDock);
dockId = newDock.getDockId();
log.info("插入新机场成功: deviceId={}, dockName={}, dockId={}",
deviceId, deviceName, dockId);
// log.info("插入新机场成功: deviceId={}, dockName={}, dockId={}",
// deviceId, deviceName, dockId);
} else {
dockId = existingDock.getDockId();
log.info("机场已存在: deviceId={}, dockName={}, dockId={}", deviceId, deviceName, dockId);
// log.info("机场已存在: deviceId={}, dockName={}, dockId={}", deviceId, deviceName, dockId);
}
// 确保默认分组存在
@ -616,7 +616,7 @@ public class SynService {
// 机场不在任何分组中将其插入默认分组
insertDockToDefaultGroup(dockId, deviceName);
} else {
log.info("机场已在分组中: dockId={}, 分组数量={}", dockId, dockGroups.size());
// log.info("机场已在分组中: dockId={}, 分组数量={}", dockId, dockGroups.size());
}
}
@ -628,7 +628,7 @@ public class SynService {
* @return 无人机主键ID
*/
private Long syncAircraft(Long deviceId, String deviceName) {
log.info("开始同步无人机: deviceId={}, deviceName={}", deviceId, deviceName);
// log.info("开始同步无人机: deviceId={}, deviceName={}", deviceId, deviceName);
// 查询无人机是否已存在
Aircraft existingAircraft = aircraftDomain.selectAircraftByDeviceId(deviceId);
@ -640,20 +640,20 @@ public class SynService {
newAircraft.setDeviceId(deviceId);
newAircraft.setCreateBy("system");
log.info("准备插入新无人机: deviceId={}, aircraftName={}", deviceId, deviceName);
// log.info("准备插入新无人机: deviceId={}, aircraftName={}", deviceId, deviceName);
aircraftDomain.insertAircraft(newAircraft);
Long aircraftId = newAircraft.getAircraftId();
log.info("插入新无人机成功: deviceId={}, aircraftName={}, aircraftId={}",
deviceId, deviceName, aircraftId);
// log.info("插入新无人机成功: deviceId={}, aircraftName={}, aircraftId={}",
// deviceId, deviceName, aircraftId);
// 新插入的无人机直接返回 aircraftId不需要处理 PSDK 设备
return aircraftId;
}
// 无人机已存在记录日志
log.info("无人机已存在: deviceId={}, aircraftName={}, aircraftId={}",
deviceId, deviceName, existingAircraft.getAircraftId());
// log.info("无人机已存在: deviceId={}, aircraftName={}, aircraftId={}",
// deviceId, deviceName, existingAircraft.getAircraftId());
Device device = deviceDomain.selectDeviceByDeviceId(deviceId);
TelemetryMap telemetryMap = iThingsBoardDomain.getPredefinedDeviceTelemetry(device.getIotDeviceId());
@ -667,8 +667,8 @@ public class SynService {
for (PsdkDevice psdkDevice : psdkDevices) {
if(Objects.nonNull(psdkDevice.getSpeaker()) &&
Objects.nonNull(psdkDevice.getPsdk_sn()) && !psdkDevice.getPsdk_sn().isEmpty()) {
log.info("开始同步PSDK喊话器设备: psdkSn={}, psdkName={}",
psdkDevice.getPsdk_sn(), psdkDevice.getPsdk_name());
// log.info("开始同步PSDK喊话器设备: psdkSn={}, psdkName={}",
// psdkDevice.getPsdk_sn(), psdkDevice.getPsdk_name());
// 第一步同步挂载设备喊话器
Payload payload = new Payload();
@ -682,13 +682,13 @@ public class SynService {
payload.setPayloadType(PayloadTypeEnum.SPEAKER.getCode());
payload.setCreateBy("system");
payloadDomain.insertPayload(payload);
log.info("插入新挂载设备: payloadSn={}, payloadName={}, payloadId={}",
psdkDevice.getPsdk_sn(), psdkDevice.getPsdk_name(), payload.getPayloadId());
// log.info("插入新挂载设备: payloadSn={}, payloadName={}, payloadId={}",
// psdkDevice.getPsdk_sn(), psdkDevice.getPsdk_name(), payload.getPayloadId());
} else {
// 挂载已存在使用已有的挂载
payload = payloads.get(0);
log.info("挂载设备已存在: payloadSn={}, payloadId={}",
psdkDevice.getPsdk_sn(), payload.getPayloadId());
// log.info("挂载设备已存在: payloadSn={}, payloadId={}",
// psdkDevice.getPsdk_sn(), payload.getPayloadId());
}
// 第二步同步无人机挂载关联表
@ -719,11 +719,11 @@ public class SynService {
if(needUpdate) {
existingRelation.setUpdateBy("system");
aircraftPayloadDomain.updateAircraftPayload(existingRelation);
log.info("更新无人机挂载关联: aircraftId={}, payloadId={}, dockId={}",
aircraftId, payloadId, dockId);
// log.info("更新无人机挂载关联: aircraftId={}, payloadId={}, dockId={}",
// aircraftId, payloadId, dockId);
} else {
log.info("无人机挂载关联无需更新: aircraftId={}, payloadId={}",
aircraftId, payloadId);
// log.info("无人机挂载关联无需更新: aircraftId={}, payloadId={}",
// aircraftId, payloadId);
}
} else {
// 关联不存在插入新关联
@ -733,8 +733,8 @@ public class SynService {
newRelation.setDockId(dockId);
newRelation.setCreateBy("system");
aircraftPayloadDomain.insertAircraftPayload(newRelation);
log.info("插入无人机挂载关联: aircraftId={}, payloadId={}, dockId={}",
aircraftId, payloadId, dockId);
// log.info("插入无人机挂载关联: aircraftId={}, payloadId={}, dockId={}",
// aircraftId, payloadId, dockId);
}
}
}
@ -784,7 +784,7 @@ public class SynService {
* @param aircraftDeviceId 无人机设备主键ID
*/
private void syncDockAircraft(Long dockDeviceId, Long aircraftDeviceId) {
log.info("开始同步机场无人机关联: dockDeviceId={}, aircraftDeviceId={}", dockDeviceId, aircraftDeviceId);
// log.info("开始同步机场无人机关联: dockDeviceId={}, aircraftDeviceId={}", dockDeviceId, aircraftDeviceId);
// 获取机场主键
Dock dock = dockDomain.selectDockByDeviceId(dockDeviceId);
@ -792,7 +792,7 @@ public class SynService {
log.warn("机场不存在,无法同步机场无人机关联: dockDeviceId={}", dockDeviceId);
return;
}
log.info("找到机场: dockId={}, dockName={}", dock.getDockId(), dock.getDockName());
// log.info("找到机场: dockId={}, dockName={}", dock.getDockId(), dock.getDockName());
// 获取无人机主键
Aircraft aircraft = aircraftDomain.selectAircraftByDeviceId(aircraftDeviceId);
@ -815,7 +815,7 @@ public class SynService {
newRelation.setCreateBy("system");
dockAircraftDomain.insertDockAircraft(newRelation);
log.info("插入机场无人机关联: dockId={}, aircraftId={}", dockId, aircraftId);
// log.info("插入机场无人机关联: dockId={}, aircraftId={}", dockId, aircraftId);
} else {
// 机场已有关联检查是否需要更新
DockAircraft existingRelation = existingRelations.get(0);
@ -824,7 +824,7 @@ public class SynService {
existingRelation.setAircraftId(aircraftId);
existingRelation.setUpdateBy("system");
dockAircraftDomain.updateDockAircraft(existingRelation);
log.info("更新机场无人机关联: dockId=, aircraftId={}", dockId, aircraftId);
// log.info("更新机场无人机关联: dockId=, aircraftId={}", dockId, aircraftId);
}
}
}
@ -847,7 +847,7 @@ public class SynService {
newGroup.setRemark("系统自动创建的默认分组,用于存放未分组的机场");
groupDomain.insertGroup(newGroup);
log.info("创建默认分组成功: groupId={}, groupName={}", defaultGroupId, "默认分组");
// log.info("创建默认分组成功: groupId={}, groupName={}", defaultGroupId, "默认分组");
} else {
log.debug("默认分组已存在: groupId={}, groupName={}", defaultGroupId, defaultGroup.getGroupName());
}
@ -869,8 +869,8 @@ public class SynService {
newDockGroup.setRemark("系统自动添加到默认分组");
dockGroupDomain.insertDockGroup(newDockGroup);
log.info("将机场添加到默认分组: dockId={}, dockName={}, groupId={}",
dockId, dockName, defaultGroupId);
// log.info("将机场添加到默认分组: dockId={}, dockName={}, groupId={}",
// dockId, dockName, defaultGroupId);
}
/**
@ -883,7 +883,7 @@ public class SynService {
String deviceId = deviceInfo.getId();
String deviceName = deviceInfo.getName(); // 这是SN号 THJSQ03B2410TGJ3MCJY
log.info("开始同步拓恒设备: deviceName(SN)={}", deviceName);
// log.info("开始同步拓恒设备: deviceName(SN)={}", deviceName);
try {
// 获取拓恒设备属性
@ -897,8 +897,8 @@ public class SynService {
Optional<String> firmwareVersionOpt = attributes.get(TuohengDeviceAttributes.HARDWARE_VERSION);
String firmwareVersion = firmwareVersionOpt.orElse("");
log.info("拓恒设备属性: SN={}, airportID={}, firmwareVersion={}",
deviceName, airportId, firmwareVersion);
// log.info("拓恒设备属性: SN={}, airportID={}, firmwareVersion={}",
// deviceName, airportId, firmwareVersion);
// 1. 同步到 device 作为机场- 使用原始 SN
Long dockDeviceId = syncTuohengDeviceAsType(deviceInfo, DeviceType.DOCK, gatewayId, deviceName);
@ -916,8 +916,8 @@ public class SynService {
// 5. 同步到 device_dock_aircraft 建立机场-无人机关联
syncDockAircraft(dockDeviceId, aircraftDeviceId);
log.info("拓恒设备同步完成: SN={}, dockDeviceId={}, aircraftDeviceId={}",
deviceName, dockDeviceId, aircraftDeviceId);
// log.info("拓恒设备同步完成: SN={}, dockDeviceId={}, aircraftDeviceId={}",
// deviceName, dockDeviceId, aircraftDeviceId);
} catch (Exception e) {
log.error("同步拓恒设备失败: deviceName={}, error={}", deviceName, e.getMessage(), e);
@ -938,8 +938,8 @@ public class SynService {
String iotDeviceId = deviceInfo.getId();
String deviceName = deviceInfo.getName();
log.info("开始同步拓恒设备到device表: iotDeviceId={}, deviceName={}, deviceType={}, deviceSn={}, gatewayId={}",
iotDeviceId, deviceName, deviceType, deviceSn, gatewayId);
// log.info("开始同步拓恒设备到device表: iotDeviceId={}, deviceName={}, deviceType={}, deviceSn={}, gatewayId={}",
// iotDeviceId, deviceName, deviceType, deviceSn, gatewayId);
// 查询设备是否已存在通过 iotDeviceId + deviceType 组合查询
Device queryDevice = new Device();
@ -976,7 +976,7 @@ public class SynService {
}
Device retryDevice = deviceDomain.selectDeviceByDeviceSn(deviceSn);
if (retryDevice != null) {
log.info("重新查询到拓恒设备: deviceSn={}, deviceId={}", deviceSn, retryDevice.getDeviceId());
// log.info("重新查询到拓恒设备: deviceSn={}, deviceId={}", deviceSn, retryDevice.getDeviceId());
return retryDevice.getDeviceId();
}
log.error("获取锁失败且重新查询也未找到拓恒设备: deviceSn={}", deviceSn);
@ -987,7 +987,7 @@ public class SynService {
// 双重检查
Device doubleCheckDevice = deviceDomain.selectDeviceByDeviceSn(deviceSn);
if (doubleCheckDevice != null) {
log.info("双重检查发现拓恒设备已存在: deviceSn={}, deviceId={}", deviceSn, doubleCheckDevice.getDeviceId());
// log.info("双重检查发现拓恒设备已存在: deviceSn={}, deviceId={}", deviceSn, doubleCheckDevice.getDeviceId());
return doubleCheckDevice.getDeviceId();
}
@ -1001,13 +1001,13 @@ public class SynService {
newDevice.setDeviceManufacturer("tuoheng");
newDevice.setCreateBy("system");
log.info("准备插入新拓恒设备: deviceName={}, deviceType={}, deviceSn={}, manufacturer=tuoheng",
deviceName, deviceType, deviceSn);
// log.info("准备插入新拓恒设备: deviceName={}, deviceType={}, deviceSn={}, manufacturer=tuoheng",
// deviceName, deviceType, deviceSn);
deviceDomain.insertDevice(newDevice);
Long deviceId = newDevice.getDeviceId();
log.info("插入新拓恒设备成功: iotDeviceId={}, deviceName={}, deviceType={}, deviceSn={}, 返回deviceId={}",
iotDeviceId, deviceName, deviceType, deviceSn, deviceId);
// log.info("插入新拓恒设备成功: iotDeviceId={}, deviceName={}, deviceType={}, deviceSn={}, 返回deviceId={}",
// iotDeviceId, deviceName, deviceType, deviceSn, deviceId);
return deviceId;
} finally {
// 释放锁
@ -1033,8 +1033,8 @@ public class SynService {
if (needUpdate) {
existingDevice.setUpdateBy("system");
deviceDomain.updateDevice(existingDevice);
log.info("更新拓恒设备: iotDeviceId={}, deviceName={}, deviceType={}, deviceSn={}",
iotDeviceId, deviceName, deviceType, deviceSn);
// log.info("更新拓恒设备: iotDeviceId={}, deviceName={}, deviceType={}, deviceSn={}",
// iotDeviceId, deviceName, deviceType, deviceSn);
}
return existingDevice.getDeviceId();
@ -1050,7 +1050,7 @@ public class SynService {
* @param firmwareVersion 固件版本
*/
private void syncTuohengDock(Long deviceId, String sn, String airportId, String firmwareVersion) {
log.info("开始同步拓恒机场: deviceId={}, SN={}, airportID={}", deviceId, sn, airportId);
// log.info("开始同步拓恒机场: deviceId={}, SN={}, airportID={}", deviceId, sn, airportId);
// 查询机场是否已存在
Dock existingDock = dockDomain.selectDockByDeviceId(deviceId);
@ -1063,13 +1063,13 @@ public class SynService {
newDock.setDeviceId(deviceId);
newDock.setCreateBy("system");
log.info("准备插入新拓恒机场: deviceId={}, dockName={}, SN={}", deviceId, airportId, sn);
// log.info("准备插入新拓恒机场: deviceId={}, dockName={}, SN={}", deviceId, airportId, sn);
dockDomain.insertDock(newDock);
dockId = newDock.getDockId();
log.info("插入新拓恒机场成功: dockId={}", dockId);
// log.info("插入新拓恒机场成功: dockId={}", dockId);
} else {
dockId = existingDock.getDockId();
log.info("拓恒机场已存在: deviceId={}, dockId={}", deviceId, dockId);
// log.info("拓恒机场已存在: deviceId={}, dockId={}", deviceId, dockId);
}
// 确保默认分组存在
@ -1082,7 +1082,7 @@ public class SynService {
// 机场不在任何分组中将其插入默认分组
insertDockToDefaultGroup(dockId, airportId);
} else {
log.info("拓恒机场已在分组中: dockId={}, 分组数量={}", dockId, dockGroups.size());
// log.info("拓恒机场已在分组中: dockId={}, 分组数量={}", dockId, dockGroups.size());
}
}
@ -1096,7 +1096,7 @@ public class SynService {
* @return 无人机主键ID
*/
private Long syncTuohengAircraft(Long deviceId, String sn, String airportId, String firmwareVersion) {
log.info("开始同步拓恒无人机: deviceId={}, SN={}, airportID={}", deviceId, sn, airportId);
// log.info("开始同步拓恒无人机: deviceId={}, SN={}, airportID={}", deviceId, sn, airportId);
if (deviceId == null) {
log.error("同步拓恒无人机失败: deviceId 为 null, SN={}", sn);
@ -1113,14 +1113,14 @@ public class SynService {
newAircraft.setDeviceId(deviceId);
newAircraft.setCreateBy("system");
log.info("准备插入新拓恒无人机: deviceId={}, aircraftName={}, SN={}", deviceId, airportId, sn);
// log.info("准备插入新拓恒无人机: deviceId={}, aircraftName={}, SN={}", deviceId, airportId, sn);
aircraftDomain.insertAircraft(newAircraft);
Long aircraftId = newAircraft.getAircraftId();
log.info("插入新拓恒无人机成功: deviceId={}, aircraftId={}", deviceId, aircraftId);
// log.info("插入新拓恒无人机成功: deviceId={}, aircraftId={}", deviceId, aircraftId);
return aircraftId;
} else {
log.info("拓恒无人机已存在: deviceId={}, aircraftId={}", deviceId, existingAircraft.getAircraftId());
// log.info("拓恒无人机已存在: deviceId={}, aircraftId={}", deviceId, existingAircraft.getAircraftId());
return existingAircraft.getAircraftId();
}
}

View File

@ -103,10 +103,10 @@ public class TuohengService {
handler.registerRealTimeDataCallback(new ITuohengRealTimeDataCallback() {
@Override
public void onRealTimeData(String deviceSn, TuohengRealTimeData data) {
log.info("========== 收到拓恒实时数据 ==========");
log.info("设备SN: {}", deviceSn);
// log.info("========== 收到拓恒实时数据 ==========");
log.info("收到拓恒实时数据 设备SN: {}", deviceSn);
try {
log.info("数据内容: {}", objectMapper.writeValueAsString(data));
// log.info("数据内容: {}", objectMapper.writeValueAsString(data));
// 更新机场心跳时间戳
updateAirportHeartbeat(deviceSn);
@ -117,17 +117,17 @@ public class TuohengService {
} catch (Exception e) {
log.error("处理实时数据失败", e);
}
log.info("=====================================");
// log.info("=====================================");
}
});
handler.registerOsdCallback(new ITuohengOsdCallback() {
@Override
public void onOsdData(String deviceSn, AirportOsdData data) {
log.info("========== 收到拓恒OSD数据 ==========");
log.info("设备SN: {}", deviceSn);
// log.info("========== 收到拓恒OSD数据 ==========");
log.info("收到拓恒OSD数据 设备SN: {}", deviceSn);
try {
log.info("数据内容: {}", objectMapper.writeValueAsString(data));
// log.info("数据内容: {}", objectMapper.writeValueAsString(data));
// 同步飞行状态到 MachineStateManager
syncFlightState(deviceSn, data);
@ -135,21 +135,21 @@ public class TuohengService {
} catch (Exception e) {
log.error("序列化数据失败", e);
}
log.info("=====================================");
// log.info("=====================================");
}
});
handler.registerEventsCallback(new ITuohengEventsCallback() {
@Override
public void onEventsData(String deviceSn, EventsData data) {
log.info("========== 收到拓恒Events数据 ==========");
log.info("设备SN: {}", deviceSn);
// log.info("========== 收到拓恒Events数据 ==========");
log.info("收到拓恒Events数据 设备SN: {}", deviceSn);
try {
log.info("数据内容: {}", objectMapper.writeValueAsString(data));
// log.info("数据内容: {}", objectMapper.writeValueAsString(data));
} catch (Exception e) {
log.error("序列化数据失败", e);
}
log.info("=====================================");
// log.info("=====================================");
}
});