From f61c1902e30b0ab54e833960df7d2d79c8b62120 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 12 Oct 2023 17:11:05 +0800
Subject: [PATCH] 执行时间
---
src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java | 2 ++
src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java | 28 ++++++++++++++++++++++++++--
src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java | 7 +++++++
src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java | 5 +++++
4 files changed, 40 insertions(+), 2 deletions(-)
diff --git a/src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java b/src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java
index a27129e..feca1fa 100644
--- a/src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java
+++ b/src/main/java/com/dji/sample/wayline/model/entity/WaylineJobEntity.java
@@ -112,4 +112,9 @@
@TableField(value = "rep_rule_val",typeHandler = FastjsonTypeHandler.class)
private List<Integer> repRuleVal;
+ /**
+ * 开始执行时间
+ */
+ @TableField(value = "execute_start_time_arr",typeHandler = FastjsonTypeHandler.class)
+ private List<List<Long>> executeStartTimeArr;
}
diff --git a/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java b/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java
index 0b53350..9b723b7 100644
--- a/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java
+++ b/src/main/java/com/dji/sample/wayline/model/param/CreateJobParam.java
@@ -56,4 +56,6 @@
private Integer repRuleType;
private List<Integer> repRuleVal;
+
+ private List<List<Long>> executeStartTimeArr;
}
diff --git a/src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java b/src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java
index ee4f8a6..7083323 100644
--- a/src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java
+++ b/src/main/java/com/dji/sample/wayline/service/IWaylineJobService.java
@@ -5,6 +5,7 @@
import com.dji.sample.common.model.ResponseResult;
import com.dji.sample.component.mqtt.model.CommonTopicReceiver;
import com.dji.sample.wayline.model.dto.WaylineJobDTO;
+import com.dji.sample.wayline.model.entity.WaylineJobEntity;
import com.dji.sample.wayline.model.enums.WaylineJobStatusEnum;
import com.dji.sample.wayline.model.param.CreateJobParam;
import com.dji.sample.wayline.model.param.UpdateJobParam;
@@ -61,6 +62,12 @@
ResponseResult publishOneFlightTask(WaylineJobDTO waylineJob) throws SQLException;
/**
+ * 发布飞行任务
+ * @return
+ */
+ Boolean publishFlightTask(WaylineJobEntity waylineJobEntity);
+
+ /**
* Execute the task immediately.
* 执行立即任务
* @param jobId
diff --git a/src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java b/src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java
index b95bf70..bebb066 100644
--- a/src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java
+++ b/src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java
@@ -190,6 +190,7 @@
.repRuleType(param.getRepRuleType())
.repRuleVal(param.getRepRuleVal())
.executeTimeArr(param.getTaskPeriods())
+ .executeStartTimeArr(param.getExecuteStartTimeArr())
.build();
Boolean insert = mapper.insert(waylineJobEntity)>0;
@@ -234,8 +235,7 @@
if (WaylineTaskTypeEnum.CONDITION == param.getTaskType()) {
waylineJob.setConditions(
WaylineTaskConditionDTO.builder()
- .executableConditions(Objects.nonNull(param.getMinStorageCapacity()) ?
- WaylineTaskExecutableConditionDTO.builder().storageCapacity(param.getMinStorageCapacity()).build() : null)
+ .executableConditions(Objects.nonNull(param.getMinStorageCapacity()) ? WaylineTaskExecutableConditionDTO.builder().storageCapacity(param.getMinStorageCapacity()).build() : null)
.readyConditions(WaylineTaskReadyConditionDTO.builder()
.batteryCapacity(param.getMinBatteryCapacity())
.beginTime(beginTime)
@@ -271,6 +271,30 @@
return ResponseResult.success();
}
+ @Override
+ public Boolean publishFlightTask(WaylineJobEntity waylineJobEntity) {
+ WaylineJobDTO waylineJob = new WaylineJobDTO();
+
+
+ waylineJob.setConditions(
+ WaylineTaskConditionDTO.builder()
+ .executableConditions(null)
+ .readyConditions(WaylineTaskReadyConditionDTO.builder()
+ .batteryCapacity(waylineJobEntity.getBatteryCapacity())
+
+ .build())
+ .build());
+
+
+
+
+
+
+
+
+ return null;
+ }
+
private Boolean prepareFlightTask(WaylineJobDTO waylineJob) throws SQLException {
boolean isOnline = deviceRedisService.checkDeviceOnline(waylineJob.getDockSn());
--
Gitblit v1.9.3