From dbecdea3ad1768d1c7f8e88a2d3b64193c62352a Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Mon, 12 Aug 2024 13:34:52 +0800
Subject: [PATCH] 国土调查的任务下发、更新、取消,成果上传

---
 src/main/java/com/dji/sample/droneairport/controller/RegistController.java |   45 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 40 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/dji/sample/droneairport/controller/RegistController.java b/src/main/java/com/dji/sample/droneairport/controller/RegistController.java
index ef23d62..4130470 100644
--- a/src/main/java/com/dji/sample/droneairport/controller/RegistController.java
+++ b/src/main/java/com/dji/sample/droneairport/controller/RegistController.java
@@ -1,16 +1,17 @@
 package com.dji.sample.droneairport.controller;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.dji.sample.common.model.CustomClaim;
 import com.dji.sample.common.model.ResponseResult;
 import com.dji.sample.droneairport.dao.DeviceExpanSionDao;
-import com.dji.sample.droneairport.model.Entity.DeviceExpanSionEntity;
-import com.dji.sample.droneairport.model.dto.AddDeviceDto;
+import com.dji.sample.droneairport.model.param.ReturnTaskParam;
 import com.dji.sample.droneairport.service.RegistService;
 import com.dji.sample.manage.service.impl.DeviceRedisServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
+
+import static com.dji.sample.component.AuthInterceptor.TOKEN_CLAIM;
 
 @RequestMapping("/droneAirport")
 @RestController
@@ -30,15 +31,49 @@
     @PostMapping("/authorization")
     public ResponseResult checkDeviceOnline(@RequestBody String body, HttpServletRequest request) throws Exception {
         String headerValue = request.getHeader("x-lc-secret");
-        return registService.authorization(body,headerValue);
+        return registService.authorization(body, headerValue);
 
     }
+
     @PostMapping("/addDevice/{workspace_id}")
     public ResponseResult registeDrone(@PathVariable(name = "workspace_id") String workspaceId) {
         return ResponseResult.success(registService.addDrone(workspaceId));
     }
+
     @GetMapping("/getDroneStatus/{deviceid}")
-    public ResponseResult droneStatus(@PathVariable (name = "deviceid") String deviceid , HttpServletRequest request) throws Exception {
+    public ResponseResult droneStatus(@PathVariable(name = "deviceid") String deviceid, HttpServletRequest request) throws Exception {
         return ResponseResult.success(registService.getDroneState(deviceid));
     }
+
+    @PostMapping("/AddTask")
+    public ResponseResult AddTask(HttpServletRequest request, @RequestBody String body) throws Exception {
+        String headerValue = request.getHeader("x-lc-secret");
+        CustomClaim customClaim = (CustomClaim) request.getAttribute(TOKEN_CLAIM);
+        String creator = customClaim.getUsername();
+        ReturnTaskParam param = registService.AddTask(body, headerValue, creator);
+        return ResponseResult.success(200, "无人机机场任务添加成功", param.getTraceId(), param.getWaylineId());
+    }
+
+    @GetMapping("/cancelTask/{taskId}")
+    public ResponseResult cancelTask(@PathVariable(name = "taskId") String taskId) {
+        return ResponseResult.success(registService.cancelTask(taskId));
+    }
+
+    @PostMapping("/updateTask")
+    public ResponseResult updateTask(HttpServletRequest request, @RequestBody String body) throws Exception {
+        String headerValue = request.getHeader("x-lc-secret");
+        CustomClaim customClaim = (CustomClaim) request.getAttribute(TOKEN_CLAIM);
+        String creator = customClaim.getUsername();
+        ReturnTaskParam param = registService.updateTask(body, headerValue, creator);
+        return ResponseResult.success(200, "无人机机场任务添加成功", param.getTraceId(), param.getWaylineId());
+    }
+    @PostMapping("/queryTaskStatus")
+    public ResponseResult queryTaskStatus(HttpServletRequest request, @RequestParam String taskid) throws Exception {
+        return ResponseResult.success(registService.queryTaskStatus(taskid));
+    }
+    @GetMapping("/getResult/{taskId}")
+    public ResponseResult getResult(@PathVariable(name = "taskId") String taskId) {
+        return ResponseResult.success(registService.findDbFilesByTaskId(taskId));
+    }
+
 }

--
Gitblit v1.9.3