From 16fd4235f692777cfd9cceff5090e5450e2173b3 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Tue, 04 Mar 2025 13:59:05 +0800
Subject: [PATCH] 优化包结构、增加载荷飞控权限

---
 ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java |   72 ++++++++++++++---------------------
 1 files changed, 29 insertions(+), 43 deletions(-)

diff --git a/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
index 9fba16d..be7e8b4 100644
--- a/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
@@ -1,34 +1,31 @@
 package com.ard.tianyu.service.impl;
 
 import com.ard.common.utils.ByteUtils;
-import com.ard.tianyu.aspect.annotation.CheckControlAuthority;
+import com.ard.tianyu.aspect.annotation.RequireUavControl;
 import com.ard.tianyu.config.TyConfiguration;
-import com.ard.tianyu.http.TyClient;
-import com.ard.tianyu.model.cache.TyTcpServerCache;
-import com.ard.tianyu.model.cache.UavSignalInfoCache;
-import com.ard.tianyu.model.cache.UavStateCache;
-import com.ard.tianyu.model.cache.UavTelemetryDataCache;
-import com.ard.tianyu.model.dto.BoxHistoryDTO;
-import com.ard.tianyu.model.dto.BoxPhotosDTO;
-import com.ard.tianyu.model.dto.BoxSettingsDTO;
-import com.ard.tianyu.model.dto.camera.*;
-import com.ard.tianyu.model.dto.control.AbsAngleControlDTO;
-import com.ard.tianyu.model.dto.control.AngleControlDTO;
-import com.ard.tianyu.model.dto.control.SpeedControlDTO;
-import com.ard.tianyu.model.dto.converter.realdata.UavSignalInfoConverter;
-import com.ard.tianyu.model.dto.converter.realdata.UavStateConverter;
-import com.ard.tianyu.model.dto.converter.realdata.UavTelemetryDataConverter;
-import com.ard.tianyu.model.dto.converter.wayline.PlanLineDataConverter;
-import com.ard.tianyu.model.dto.manual.*;
-import com.ard.tianyu.model.dto.settings.ReturnHeightSettingDTO;
-import com.ard.tianyu.model.dto.settings.ReturnPointSettingDTO;
-import com.ard.tianyu.model.dto.settings.VideoStreamSettingDTO;
-import com.ard.tianyu.model.dto.signal.SignalInfo;
-import com.ard.tianyu.model.dto.speaker.*;
-import com.ard.tianyu.model.dto.state.UavState;
-import com.ard.tianyu.model.dto.telemetry.TelemetryData;
-import com.ard.tianyu.model.dto.wayline.*;
-import com.ard.tianyu.model.receiver.*;
+import com.ard.tianyu.domain.dto.camera.*;
+import com.ard.tianyu.domain.dto.manual.*;
+import com.ard.tianyu.domain.dto.speaker.*;
+import com.ard.tianyu.domain.dto.wayline.*;
+import com.ard.tianyu.domain.receiver.*;
+import com.ard.tianyu.forest.TyClient;
+import com.ard.tianyu.domain.cache.TyTcpServerCache;
+import com.ard.tianyu.domain.cache.UavSignalInfoCache;
+import com.ard.tianyu.domain.cache.UavStateCache;
+import com.ard.tianyu.domain.cache.UavTelemetryDataCache;
+import com.ard.tianyu.domain.dto.BoxHistoryDTO;
+import com.ard.tianyu.domain.dto.BoxPhotosDTO;
+import com.ard.tianyu.domain.dto.BoxSettingsDTO;
+import com.ard.tianyu.domain.dto.control.AbsAngleControlDTO;
+import com.ard.tianyu.domain.dto.control.AngleControlDTO;
+import com.ard.tianyu.domain.dto.control.SpeedControlDTO;
+import com.ard.tianyu.domain.dto.converter.wayline.PlanLineDataConverter;
+import com.ard.tianyu.domain.dto.settings.ReturnHeightSettingDTO;
+import com.ard.tianyu.domain.dto.settings.ReturnPointSettingDTO;
+import com.ard.tianyu.domain.dto.settings.VideoStreamSettingDTO;
+import com.ard.tianyu.domain.dto.signal.SignalInfo;
+import com.ard.tianyu.domain.dto.state.UavState;
+import com.ard.tianyu.domain.dto.telemetry.TelemetryData;
 import com.ard.tianyu.netty.command.*;
 import com.ard.tianyu.netty.TyNettyTcpClient;
 import com.ard.tianyu.netty.command.camera.*;
@@ -49,8 +46,8 @@
 import com.ard.tianyu.netty.handler.ErrorCodeEnum;
 import com.ard.tianyu.netty.protobuf.TelemetryDataPB;
 import com.ard.tianyu.service.ITyService;
+import com.ard.tianyu.websocket.domain.UavControlType;
 import com.ard.tianyu.websocket.utils.WebSocketUtil;
-import com.ard.vtdu.domain.ArdVtdu;
 import com.ard.vtdu.service.IMediaService;
 import io.netty.channel.Channel;
 import io.netty.channel.ChannelFuture;
@@ -200,6 +197,7 @@
     /**
      * 云台控制基于角度
      */
+    @RequireUavControl(UavControlType.PAYLOAD)
     @Override
     public Boolean angleControl(AngleControlDTO angleControlDto) {
         AngleControlCmd controlAngleCommand = new AngleControlCmd(angleControlDto);
@@ -210,6 +208,7 @@
     /**
      * 云台绝对值控制(基于角度)
      */
+    @RequireUavControl(UavControlType.PAYLOAD)
     @Override
     public Boolean absAngleControl(AbsAngleControlDTO absAngleControlDto) {
         AbsAngleControlCmd absAngleControlCommand = new AbsAngleControlCmd(absAngleControlDto);
@@ -220,6 +219,7 @@
     /**
      * 云台转动(基于速度)
      */
+    @RequireUavControl(UavControlType.PAYLOAD)
     @Override
     public Boolean speedControl(SpeedControlDTO speedControlDto) {
         SpeedControlCmd speedControlCommand = new SpeedControlCmd(speedControlDto);
@@ -327,7 +327,7 @@
     /**
      * 起飞
      */
-    @CheckControlAuthority
+    @RequireUavControl(UavControlType.FLY)
     @Override
     public Boolean takeOff(TakeOffDTO takeOffDTO) {
         TakeOffCmd takeOffCmd = new TakeOffCmd(takeOffDTO);
@@ -590,20 +590,6 @@
     public void wayLineEnd(WayLineEndDTO wayLineEndDTO) {
         WayLineEndCmd wayLineEndCmd = new WayLineEndCmd(wayLineEndDTO);
         this.sendMessage(tyConfiguration.getIpPort(), wayLineEndCmd);
-    }
-
-    /**
-     * 点播
-     */
-    @Override
-    public ArdVtdu play(String boxSn) {
-        BoxStreamUrlReceiver boxLiveUrl = getBoxLiveUrl(boxSn);
-        if(boxLiveUrl == null||boxLiveUrl.getRtsp() == null) {
-            return null;
-        }
-        ArdVtdu ardVtdu = ArdVtdu.builder().name(boxSn).rtspSource(boxLiveUrl.getRtsp()).build();
-        ardVtdu = mediaService.addPath(ardVtdu);
-        return ardVtdu;
     }
 
     /**

--
Gitblit v1.9.3