From c5320fbf7fd671ba7ccefe66e951edeebb4252b2 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 26 Sep 2023 16:24:51 +0800
Subject: [PATCH] 媒体模块

---
 src/main/java/com/dji/sample/control/controller/DockController.java |   40 ++++++++++++++++++++++++++++++++++++++--
 1 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/dji/sample/control/controller/DockController.java b/src/main/java/com/dji/sample/control/controller/DockController.java
index 7836e5f..53d07f5 100644
--- a/src/main/java/com/dji/sample/control/controller/DockController.java
+++ b/src/main/java/com/dji/sample/control/controller/DockController.java
@@ -1,11 +1,14 @@
 package com.dji.sample.control.controller;
 
 import com.dji.sample.common.model.ResponseResult;
-import com.dji.sample.control.model.param.RemoteDebugParam;
+import com.dji.sample.control.model.enums.DroneAuthorityEnum;
+import com.dji.sample.control.model.param.*;
 import com.dji.sample.control.service.IControlService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
 
 /**
  * @author sean
@@ -24,6 +27,39 @@
     public ResponseResult createControlJob(@PathVariable String sn,
                                            @PathVariable("service_identifier") String serviceIdentifier,
                                            @RequestBody(required = false) RemoteDebugParam param) {
-        return controlService.controlDock(sn, serviceIdentifier, param);
+        return controlService.controlDockDebug(sn, serviceIdentifier, param);
     }
+
+    @PostMapping("/{sn}/jobs/fly-to-point")
+    public ResponseResult flyToPoint(@PathVariable String sn, @Valid @RequestBody FlyToPointParam param) {
+        return controlService.flyToPoint(sn, param);
+    }
+
+    @DeleteMapping("/{sn}/jobs/fly-to-point")
+    public ResponseResult flyToPointStop(@PathVariable String sn) {
+        return controlService.flyToPointStop(sn);
+    }
+
+    @PostMapping("/{sn}/jobs/takeoff-to-point")
+    public ResponseResult takeoffToPoint(@PathVariable String sn, @Valid @RequestBody TakeoffToPointParam param) {
+        return controlService.takeoffToPoint(sn, param);
+    }
+
+    @PostMapping("/{sn}/authority/flight")
+    public ResponseResult seizeFlightAuthority(@PathVariable String sn) {
+        return controlService.seizeAuthority(sn, DroneAuthorityEnum.FLIGHT, null);
+    }
+
+    @PostMapping("/{sn}/authority/payload")
+    public ResponseResult seizePayloadAuthority(@PathVariable String sn, @Valid @RequestBody DronePayloadParam param) {
+        return controlService.seizeAuthority(sn, DroneAuthorityEnum.PAYLOAD, param);
+    }
+
+    @PostMapping("/{sn}/payload/commands")
+    public ResponseResult payloadCommands(@PathVariable String sn, @Valid @RequestBody PayloadCommandsParam param) throws Exception {
+        param.setSn(sn);
+        return controlService.payloadCommands(param);
+    }
+
+
 }

--
Gitblit v1.9.3