From 2caa210098644f51ff46daa33b87ce4b7f862a91 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 13 Nov 2023 10:12:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/htxx_dev' into htxx_dev
---
src/main/java/com/dji/sample/wayline/service/impl/WaylineJobServiceImpl.java | 28 ++++++++++++++++++++++++++++
1 files changed, 28 insertions(+), 0 deletions(-)
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 0c72c27..a07e9b7 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
@@ -4,6 +4,8 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
+import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.dji.sample.common.error.CommonErrorEnum;
import com.dji.sample.common.model.CustomClaim;
@@ -1002,6 +1004,32 @@
}
+ @Override
+ public WaylineJobCountDTO patrolStatistics(String workspaceId) {
+ WaylineJobCountDTO waylineJobCountDTO = new WaylineJobCountDTO();
+ List<WaylineJobEntity> list = new LambdaQueryChainWrapper<>(mapper).eq(WaylineJobEntity::getStatus, 3).list();
+ if (!CollectionUtils.isEmpty(list)){
+ waylineJobCountDTO.setTotalNumber(list.size());
+ long totalTime = list.stream().mapToLong(s -> s.getEndTime() - s.getBeginTime()).sum() / 1000;
+ StringBuffer buffer = new StringBuffer();
+ long h = totalTime / 3600;
+ long m = (totalTime % 3600) / 60;
+ buffer.append(h).append(" h ");
+ buffer.append(m).append(" min");
+ waylineJobCountDTO.setTotalDuration(buffer.toString());
+ }
+ return waylineJobCountDTO;
+ }
+
+ @Override
+ public void updateJobCollect(WaylineJobEntity waylineJob) {
+ new LambdaUpdateChainWrapper<>(mapper)
+ .eq(WaylineJobEntity::getJobId,waylineJob.getJobId())
+ .set(WaylineJobEntity::getCollectStatus,waylineJob.getCollectStatus())
+ .set(WaylineJobEntity::getUserId,waylineJob.getUserId())
+ .update();
+ }
+
private void pauseJob(String workspaceId, String dockSn, String jobId, WaylineJobStatusEnum statusEnum) {
if (WaylineJobStatusEnum.PAUSED == statusEnum && jobId.equals(waylineRedisService.getPausedWaylineJobId(dockSn))) {
waylineRedisService.setPausedWaylineJob(dockSn, jobId);
--
Gitblit v1.9.3