diff --git a/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml b/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml
index bd29bee..312afd7 100644
--- a/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml
+++ b/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml
@@ -17,7 +17,7 @@
SELECT
FROM bus_task AS bt
- WHERE bt.ROBOT_ID = #{robotId} AND bt.END_TIME IS NULL
+ WHERE bt.ROBOT_ID = #{robotId}
ORDER BY bt.CREATE_TIME DESC
LIMIT 1
diff --git a/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml b/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml
index bd29bee..312afd7 100644
--- a/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml
+++ b/casic-task/src/main/java/com/casic/missiles/modular/system/dao/mapping/TaskMapper.xml
@@ -17,7 +17,7 @@
SELECT
FROM bus_task AS bt
- WHERE bt.ROBOT_ID = #{robotId} AND bt.END_TIME IS NULL
+ WHERE bt.ROBOT_ID = #{robotId}
ORDER BY bt.CREATE_TIME DESC
LIMIT 1
diff --git a/casic-task/src/main/java/com/casic/missiles/modular/system/service/impl/TaskServiceImpl.java b/casic-task/src/main/java/com/casic/missiles/modular/system/service/impl/TaskServiceImpl.java
index 02cded0..445eaa2 100644
--- a/casic-task/src/main/java/com/casic/missiles/modular/system/service/impl/TaskServiceImpl.java
+++ b/casic-task/src/main/java/com/casic/missiles/modular/system/service/impl/TaskServiceImpl.java
@@ -29,8 +29,11 @@
if (this.count(query) != 0) {
Task task = this.baseMapper.selectTaskById(robotId);
if (task != null) {
- task.setEndTime(TimeUtil.getCurrentTime());
- updateById(task);
+ String endTime = task.getEndTime();
+ if (endTime == null || "".equals(endTime)) {
+ task.setEndTime(TimeUtil.getCurrentTime());
+ updateById(task);
+ }
}
}
}