From fdc6a85af23c87d5f502d5bffbd53fbc396df537 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 31 Oct 2023 17:24:19 +0800
Subject: [PATCH] 无人机飞行轨迹
---
src/main/java/com/dji/sample/log/service/IDroneFlightLogService.java | 7 +++
src/main/java/com/dji/sample/log/service/impl/DroneFlightLogServiceImpl.java | 37 ++++++++++++++++++
src/main/java/com/dji/sample/log/controller/DroneFlightLogController.java | 41 ++++++++++++++++++++
3 files changed, 85 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/dji/sample/log/controller/DroneFlightLogController.java b/src/main/java/com/dji/sample/log/controller/DroneFlightLogController.java
new file mode 100644
index 0000000..6e7b7ca
--- /dev/null
+++ b/src/main/java/com/dji/sample/log/controller/DroneFlightLogController.java
@@ -0,0 +1,41 @@
+package com.dji.sample.log.controller;
+
+import com.dji.sample.common.model.PaginationData;
+import com.dji.sample.common.model.ResponseResult;
+import com.dji.sample.log.model.entity.DroneFlightLogEntity;
+import com.dji.sample.log.service.IDroneFlightLogService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @PROJECT_NAME: iot_drone_api
+ * @DESCRIPTION:
+ * @USER: aix
+ * @DATE: 2023/10/28 15:33
+ */
+@RestController
+@Slf4j
+@RequestMapping("/log/droneFlightLog")
+public class DroneFlightLogController {
+
+ @Autowired
+ private IDroneFlightLogService droneFlightLogService;
+
+ @GetMapping("/page")
+ public ResponseResult listBypage(@RequestParam(defaultValue = "1") Long page,
+ @RequestParam(value = "page_size", defaultValue = "50") Long pageSize,
+ @RequestParam String workspaceId) {
+ PaginationData<DroneFlightLogEntity> paginationData = droneFlightLogService.selectDroneFlightLog(page, pageSize,workspaceId);
+ return ResponseResult.success(paginationData);
+ }
+
+ @GetMapping("/infoListByFid")
+ public ResponseResult infoListByFid(@RequestParam long flightId) {
+ return ResponseResult.success(droneFlightLogService.listByFid(flightId));
+ }
+
+}
diff --git a/src/main/java/com/dji/sample/log/service/IDroneFlightLogService.java b/src/main/java/com/dji/sample/log/service/IDroneFlightLogService.java
index 896b3e3..a7d40c8 100644
--- a/src/main/java/com/dji/sample/log/service/IDroneFlightLogService.java
+++ b/src/main/java/com/dji/sample/log/service/IDroneFlightLogService.java
@@ -1,6 +1,10 @@
package com.dji.sample.log.service;
+import com.dji.sample.common.model.PaginationData;
import com.dji.sample.log.model.entity.DroneFlightLogEntity;
+import com.dji.sample.log.model.entity.DroneFlightLogInfoEntity;
+
+import java.util.List;
/**
* @PROJECT_NAME: iot_drone_api
@@ -10,6 +14,9 @@
*/
public interface IDroneFlightLogService {
+ PaginationData<DroneFlightLogEntity> selectDroneFlightLog(long page, long pageSize,String workspaceId);
+ List<DroneFlightLogInfoEntity> listByFid(long flightId);
+
void save(DroneFlightLogEntity entity);
void update(DroneFlightLogEntity entity);
diff --git a/src/main/java/com/dji/sample/log/service/impl/DroneFlightLogServiceImpl.java b/src/main/java/com/dji/sample/log/service/impl/DroneFlightLogServiceImpl.java
index 5a2c659..7c08967 100644
--- a/src/main/java/com/dji/sample/log/service/impl/DroneFlightLogServiceImpl.java
+++ b/src/main/java/com/dji/sample/log/service/impl/DroneFlightLogServiceImpl.java
@@ -1,10 +1,23 @@
package com.dji.sample.log.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.dji.sample.common.model.Pagination;
+import com.dji.sample.common.model.PaginationData;
+import com.dji.sample.log.dao.IDroneFlightLogInfoMapper;
import com.dji.sample.log.dao.IDroneFlightLogMapper;
import com.dji.sample.log.model.entity.DroneFlightLogEntity;
+import com.dji.sample.log.model.entity.DroneFlightLogInfoEntity;
import com.dji.sample.log.service.IDroneFlightLogService;
+import com.dji.sample.manage.model.dto.WorkspaceDTO;
+import com.dji.sample.manage.model.entity.DeviceEntity;
+import com.dji.sample.manage.model.entity.WorkspaceEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.stream.Collectors;
/**
* @PROJECT_NAME: iot_drone_api
@@ -18,6 +31,30 @@
@Autowired
private IDroneFlightLogMapper mapper;
+ @Autowired
+ private IDroneFlightLogInfoMapper droneFlightLogInfoMapper;
+
+ @Override
+ public PaginationData<DroneFlightLogEntity> selectDroneFlightLog(long page, long pageSize, String workspaceId) {
+// LambdaQueryWrapper wrapper = new LambdaQueryWrapper<DroneFlightLogEntity>().eq(DroneFlightLogEntity::getWorkspaceId, workspaceId);
+// wrapper.orderByDesc("start_time");
+ QueryWrapper<DroneFlightLogEntity> wrapper = new QueryWrapper<>();
+ wrapper.lambda().eq(DroneFlightLogEntity::getWorkspaceId, workspaceId);
+ wrapper.orderByDesc("start_time");
+ Page<DroneFlightLogEntity> entityPage = mapper.selectPage(
+ new Page<>(page, pageSize),
+ wrapper);
+
+ return new PaginationData<>(entityPage.getRecords(), new Pagination(entityPage));
+ }
+
+ @Override
+ public List<DroneFlightLogInfoEntity> listByFid(long flightId) {
+ return droneFlightLogInfoMapper.selectList(
+ new LambdaQueryWrapper<DroneFlightLogInfoEntity>()
+ .eq(DroneFlightLogInfoEntity::getFlightId, flightId));
+ }
+
@Override
public void save(DroneFlightLogEntity entity) {
mapper.insert(entity);
--
Gitblit v1.9.3