From 5d1b27b300fcda6be04f12aa0aa5b0cb59df8b09 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Sat, 20 Dec 2025 11:44:55 +0800
Subject: [PATCH] 优化飞行状态
---
ard-work/src/main/resources/mapper/ArdFlightTaskMapper.xml | 6 ++++++
ard-work/src/main/resources/mapper/ArdFlightTaskPartMapper.xml | 1 +
ard-work/src/main/java/com/ard/work/domain/dto/UavFlightStateDTO.java | 1 +
ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java | 9 ++++++---
4 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/ard-work/src/main/java/com/ard/work/domain/dto/UavFlightStateDTO.java b/ard-work/src/main/java/com/ard/work/domain/dto/UavFlightStateDTO.java
index 721f28d..277204f 100644
--- a/ard-work/src/main/java/com/ard/work/domain/dto/UavFlightStateDTO.java
+++ b/ard-work/src/main/java/com/ard/work/domain/dto/UavFlightStateDTO.java
@@ -20,4 +20,5 @@
private static final long serialVersionUID = 1L;
private UavState uavState;
private TelemetryData telemetryData;
+ private long timestamp;
}
diff --git a/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java b/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java
index b7ca8e4..dbecd7c 100644
--- a/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java
@@ -54,9 +54,9 @@
UavFlightStateDTO dto = new UavFlightStateDTO(
uavState,
- telemetryData
+ telemetryData,
+ System.currentTimeMillis()
);
-
addTelemetryData(dto);
});
}
@@ -94,7 +94,10 @@
.count(dataList.size())
.dataPart(blobData)
.build();
- part.setCreateTime(new Date());
+ // 使用 list 中第一条数据的时间作为 createTime
+ long firstTimeMillis = dataList.get(0).getTimestamp();
+ Date createTime = new Date(firstTimeMillis);
+ part.setCreateTime(createTime);
ardflightTaskPartMapper.insert(part);
log.info("设备 {} 分片保存 {} 条飞行数据到数据库成功", boxSn, dataList.size());
diff --git a/ard-work/src/main/resources/mapper/ArdFlightTaskMapper.xml b/ard-work/src/main/resources/mapper/ArdFlightTaskMapper.xml
index 51b88d3..5f7bd31 100644
--- a/ard-work/src/main/resources/mapper/ArdFlightTaskMapper.xml
+++ b/ard-work/src/main/resources/mapper/ArdFlightTaskMapper.xml
@@ -57,6 +57,12 @@
<if test="startTime != null">AND aft.start_time >= #{startTime}</if>
<if test="endTime != null">AND aft.end_time <= #{endTime}</if>
<if test="serverId != null">AND aft.server_id = #{serverId}</if>
+ <if test="params.beginTime != null"><!-- 开始时间检索 -->
+ AND aft.create_time >= #{params.beginTime}
+ </if>
+ <if test="params.endTime != null"><!-- 结束时间检索 -->
+ ANDaft.create_time <= #{params.endTime}
+ </if>
</trim>
</where>
ORDER BY aft.task_id DESC
diff --git a/ard-work/src/main/resources/mapper/ArdFlightTaskPartMapper.xml b/ard-work/src/main/resources/mapper/ArdFlightTaskPartMapper.xml
index 7260136..c11cad7 100644
--- a/ard-work/src/main/resources/mapper/ArdFlightTaskPartMapper.xml
+++ b/ard-work/src/main/resources/mapper/ArdFlightTaskPartMapper.xml
@@ -22,6 +22,7 @@
<if test="params.endTime != null"><!-- 结束时间检索 -->
AND u.create_time <= #{params.endTime}
</if>
+ ORDER BY u.create_time asc
</select>
</mapper>
--
Gitblit v1.9.3