From 6bcfae60f8c2eaa9c859add62bf14f8c2ce23537 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Mon, 10 Mar 2025 13:20:19 +0800
Subject: [PATCH] 调整业务包路径

---
 ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java |  147 ++++++++++++++++++++++++++++++-------------------
 1 files changed, 90 insertions(+), 57 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 6f6cdb6..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,33 +1,31 @@
 package com.ard.tianyu.service.impl;
 
 import com.ard.common.utils.ByteUtils;
+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.*;
@@ -48,7 +46,9 @@
 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.service.IMediaService;
 import io.netty.channel.Channel;
 import io.netty.channel.ChannelFuture;
 import lombok.extern.slf4j.Slf4j;
@@ -76,6 +76,8 @@
     @Resource
     private TyConfiguration tyConfiguration;
 
+    @Resource
+    private IMediaService mediaService;
 
     /**
      * 获取天宇token信息
@@ -96,7 +98,7 @@
     public List<BoxInfoReceiver> getBoxList() {
         //请求云盒列表
         try {
-            TyHttpCommonReceiver<List<BoxInfoReceiver>> boxListReveiver = tyClient.getBoxList(tyConfiguration.getAccessToken().convertFromDTO());
+            TyHttpCommonReceiver<List<BoxInfoReceiver>> boxListReveiver = tyClient.getBoxList();
             return boxListReveiver.getContent();
         } catch (Exception e) {
             log.error("获取云盒列表失败:{}", e.getMessage());
@@ -112,7 +114,7 @@
     @Override
     public BoxStreamUrlReceiver getBoxLiveUrl(String boxSn) {
 
-        TyHttpCommonReceiver<BoxStreamUrlReceiver> boxLiveUrl = tyClient.getBoxLiveUrl(boxSn, tyConfiguration.getAccessToken().convertFromDTO());
+        TyHttpCommonReceiver<BoxStreamUrlReceiver> boxLiveUrl = tyClient.getBoxLiveUrl(boxSn);
         return boxLiveUrl.getContent();
     }
 
@@ -123,7 +125,7 @@
      */
     @Override
     public List<BoxHistoryReceiver> getBoxHistory(BoxHistoryDTO boxHistoryDTO) {
-        TyHttpCommonReceiver<List<BoxHistoryReceiver>> boxHistory = tyClient.getBoxHistory(boxHistoryDTO, tyConfiguration.getAccessToken().convertFromDTO());
+        TyHttpCommonReceiver<List<BoxHistoryReceiver>> boxHistory = tyClient.getBoxHistory(boxHistoryDTO);
         return boxHistory.getContent();
     }
 
@@ -134,7 +136,7 @@
      */
     @Override
     public List<BoxPhotosReceiver> getBoxPhotos(BoxPhotosDTO boxPhotosDTO) {
-        TyHttpCommonReceiver<List<BoxPhotosReceiver>> boxPhotos = tyClient.getBoxPhotos(boxPhotosDTO, tyConfiguration.getAccessToken().convertFromDTO());
+        TyHttpCommonReceiver<List<BoxPhotosReceiver>> boxPhotos = tyClient.getBoxPhotos(boxPhotosDTO);
         return boxPhotos.getContent();
     }
 
@@ -143,7 +145,7 @@
      */
     @Override
     public Boolean updateBoxSettings(BoxSettingsDTO boxSettingsDTO) {
-        TyHttpCommonReceiver<?> result = tyClient.updateBoxSettings(boxSettingsDTO, tyConfiguration.getAccessToken().convertFromDTO());
+        TyHttpCommonReceiver<?> result = tyClient.updateBoxSettings(boxSettingsDTO);
         return result.getState() == 1;
     }
 
@@ -151,34 +153,37 @@
      * 设置返航高度
      */
     @Override
-    public void updateReturnHeight(ReturnHeightSettingDTO returnHeightSettingDTO) {
+    public Boolean updateReturnHeight(ReturnHeightSettingDTO returnHeightSettingDTO) {
         ReturnHeightSettingCmd returnHeightSettingCmd = new ReturnHeightSettingCmd(returnHeightSettingDTO);
         this.sendMessage(tyConfiguration.getIpPort(), returnHeightSettingCmd);
+        return true;
     }
 
     /**
      * 设置返航点
      */
     @Override
-    public void updateReturnPoint(ReturnPointSettingDTO returnPointSettingDTO) {
+    public Boolean updateReturnPoint(ReturnPointSettingDTO returnPointSettingDTO) {
         ReturnPointSettingCmd returnPointSettingCmd = new ReturnPointSettingCmd(returnPointSettingDTO);
         this.sendMessage(tyConfiguration.getIpPort(), returnPointSettingCmd);
+        return true;
     }
 
     /**
      * 设置视频码流
      */
     @Override
-    public void updateVideoStream(VideoStreamSettingDTO videoStreamSettingDTO) {
+    public Boolean updateVideoStream(VideoStreamSettingDTO videoStreamSettingDTO) {
         VideoStreamSettingCmd videoStreamSettingCmd = new VideoStreamSettingCmd(videoStreamSettingDTO);
         this.sendMessage(tyConfiguration.getIpPort(), videoStreamSettingCmd);
+        return true;
     }
 
     /**
      * 注册天宇平台
      */
     @Override
-    public void registerMessage() {
+    public Boolean registerMessage() {
         try {
             AccessTokenReceiver tyToken = tyConfiguration.getAccessToken();
             RegisterCmd registerMessage = new RegisterCmd(tyToken.getCompanyId(), tyToken.getAccessToken().getBytes());
@@ -186,59 +191,68 @@
         } catch (Exception e) {
             log.error("注册天宇平台失败:{}", e.getMessage());
         }
+        return true;
     }
 
     /**
      * 云台控制基于角度
      */
+    @RequireUavControl(UavControlType.PAYLOAD)
     @Override
-    public void angleControl(AngleControlDTO angleControlDto) {
+    public Boolean angleControl(AngleControlDTO angleControlDto) {
         AngleControlCmd controlAngleCommand = new AngleControlCmd(angleControlDto);
         this.sendMessage(tyConfiguration.getIpPort(), controlAngleCommand);
+        return true;
     }
 
     /**
      * 云台绝对值控制(基于角度)
      */
+    @RequireUavControl(UavControlType.PAYLOAD)
     @Override
-    public void absAngleControl(AbsAngleControlDTO absAngleControlDto) {
+    public Boolean absAngleControl(AbsAngleControlDTO absAngleControlDto) {
         AbsAngleControlCmd absAngleControlCommand = new AbsAngleControlCmd(absAngleControlDto);
         this.sendMessage(tyConfiguration.getIpPort(), absAngleControlCommand);
+        return true;
     }
 
     /**
      * 云台转动(基于速度)
      */
+    @RequireUavControl(UavControlType.PAYLOAD)
     @Override
-    public void speedControl(SpeedControlDTO speedControlDto) {
+    public Boolean speedControl(SpeedControlDTO speedControlDto) {
         SpeedControlCmd speedControlCommand = new SpeedControlCmd(speedControlDto);
         this.sendMessage(tyConfiguration.getIpPort(), speedControlCommand);
+        return true;
     }
 
     /**
      * 设置相机模式
      */
     @Override
-    public void updateCameraMode(CameraModeDTO cameraModeDTO) {
+    public Boolean updateCameraMode(CameraModeDTO cameraModeDTO) {
         CameraModeCmd cameraModeCommand = new CameraModeCmd(cameraModeDTO);
         this.sendMessage(tyConfiguration.getIpPort(), cameraModeCommand);
+        return true;
     }
 
     /**
      * 拍照
      */
     @Override
-    public void capturePic(CapturePicDTO capturePicDto) {
+    public Boolean capturePic(CapturePicDTO capturePicDto) {
         updateCameraMode(CameraModeDTO.builder().boxSn(capturePicDto.getBoxSn()).actionParam((byte) 0x01).build());
         CapturePicCmd capturePicCommand = new CapturePicCmd(capturePicDto);
         this.sendMessage(tyConfiguration.getIpPort(), capturePicCommand);
+        return true;
     }
 
     /**
      * 录像
      */
     @Override
-    public void record(RecordDTO recordDto) {
+    public Boolean record(RecordDTO recordDto) {
         BaseCmd baseCmd;
         if (recordDto.getIsRecord()) {
             updateCameraMode(CameraModeDTO.builder().boxSn(recordDto.getBoxSn()).actionParam((byte) 0x02).build());
@@ -247,150 +261,168 @@
             baseCmd = new RecordStopCmd(recordDto);
         }
         this.sendMessage(tyConfiguration.getIpPort(), baseCmd);
+        return true;
     }
 
     /**
      * 变倍
      */
     @Override
-    public void zoom(ZoomDTO zoomDTO) {
+    public Boolean zoom(ZoomDTO zoomDTO) {
         ZoomCmd zoomCommand = new ZoomCmd(zoomDTO);
         this.sendMessage(tyConfiguration.getIpPort(), zoomCommand);
+        return true;
     }
 
     /**
      * 变倍到指定倍数
      */
     @Override
-    public void zoomToLevel(ZoomToLevelDTO zoomToLevelDTO) {
+    public Boolean zoomToLevel(ZoomToLevelDTO zoomToLevelDTO) {
         ZoomToLevelCmd zoomToLevelCommand = new ZoomToLevelCmd(zoomToLevelDTO);
         this.sendMessage(tyConfiguration.getIpPort(), zoomToLevelCommand);
+        return true;
     }
 
     /**
      * 切换摄像头
      */
     @Override
-    public void switchCamera(SwitchCameraDTO switchCameraDTO) {
+    public Boolean switchCamera(SwitchCameraDTO switchCameraDTO) {
         SwitchCameraCmd switchCameraCmd = new SwitchCameraCmd(switchCameraDTO);
         this.sendMessage(tyConfiguration.getIpPort(), switchCameraCmd);
+        return true;
     }
 
     /**
      * 切换视频源
      */
     @Override
-    public void switchSource(SwitchSourceDTO switchSourceDTO) {
+    public Boolean switchSource(SwitchSourceDTO switchSourceDTO) {
         SwitchSourceCmd switchSourceCmd = new SwitchSourceCmd(switchSourceDTO);
         this.sendMessage(tyConfiguration.getIpPort(), switchSourceCmd);
+        return true;
     }
 
     /**
      * 打开或关闭照片回传
      */
     @Override
-    public void photoReturnToggle(PhotoReturnToggleDTO photoReturnToggleDTO) {
+    public Boolean photoReturnToggle(PhotoReturnToggleDTO photoReturnToggleDTO) {
         PhotoReturnToggleCmd photoReturnToggleCmd = new PhotoReturnToggleCmd(photoReturnToggleDTO);
         this.sendMessage(tyConfiguration.getIpPort(), photoReturnToggleCmd);
+        return true;
     }
 
     /**
      * 切换无人机控制权
      */
     @Override
-    public void switchUavControl(SwitchUavControlDTO switchUavControlDTO) {
+    public Boolean switchUavControl(SwitchUavControlDTO switchUavControlDTO) {
         SwitchUavControlCmd switchUavControlCmd = new SwitchUavControlCmd(switchUavControlDTO);
         this.sendMessage(tyConfiguration.getIpPort(), switchUavControlCmd);
+        return true;
     }
 
     /**
      * 起飞
      */
+    @RequireUavControl(UavControlType.FLY)
     @Override
-    public void takeOff(TakeOffDTO takeOffDTO) {
+    public Boolean takeOff(TakeOffDTO takeOffDTO) {
         TakeOffCmd takeOffCmd = new TakeOffCmd(takeOffDTO);
         this.sendMessage(tyConfiguration.getIpPort(), takeOffCmd);
+        return true;
     }
 
     /**
      * 返航
      */
     @Override
-    public void returnHome(ReturnHomeDTO returnHomeDTO) {
+    public Boolean returnHome(ReturnHomeDTO returnHomeDTO) {
         ReturnHomeCmd returnHomeCmd = new ReturnHomeCmd(returnHomeDTO);
         this.sendMessage(tyConfiguration.getIpPort(), returnHomeCmd);
+        return true;
     }
 
     /**
      * 取消返航
      */
     @Override
-    public void returnHomeCancel(ReturnHomeCancelDTO returnHomeCancelDTO) {
+    public Boolean returnHomeCancel(ReturnHomeCancelDTO returnHomeCancelDTO) {
         ReturnHomeCancelCmd returnHomeCancelCmd = new ReturnHomeCancelCmd(returnHomeCancelDTO);
         this.sendMessage(tyConfiguration.getIpPort(), returnHomeCancelCmd);
+        return true;
     }
 
     /**
      * 降落
      */
     @Override
-    public void land(LandDTO landDTO) {
+    public Boolean land(LandDTO landDTO) {
         LandCmd landCmd = new LandCmd(landDTO);
         this.sendMessage(tyConfiguration.getIpPort(), landCmd);
+        return true;
     }
 
     /**
      * 取消降落
      */
     @Override
-    public void landCancel(LandCancelDTO landCancelDTO) {
+    public Boolean landCancel(LandCancelDTO landCancelDTO) {
         LandCancelCmd landCancelCmd = new LandCancelCmd(landCancelDTO);
         this.sendMessage(tyConfiguration.getIpPort(), landCancelCmd);
+        return true;
     }
 
     /**
      * 强制降落
      */
     @Override
-    public void landForced(LandForcedDTO landForcedDTO) {
+    public Boolean landForced(LandForcedDTO landForcedDTO) {
         LandForcedCmd landForcedCmd = new LandForcedCmd(landForcedDTO);
         this.sendMessage(tyConfiguration.getIpPort(), landForcedCmd);
+        return true;
     }
 
     /**
      * 方向控制
      */
     @Override
-    public void flyControl(FlyControlDTO flyControlDTO) {
+    public Boolean flyControl(FlyControlDTO flyControlDTO) {
         FlyControlCmd flyControlCmd = new FlyControlCmd(flyControlDTO);
         this.sendMessage(tyConfiguration.getIpPort(), flyControlCmd);
+        return true;
     }
 
     /**
      * 指点飞行控制
      */
     @Override
-    public void flyPointControl(FlyPointControlDTO flyPointControlDTO) {
+    public Boolean flyPointControl(FlyPointControlDTO flyPointControlDTO) {
         FlyPointControlCmd flyPointControlCmd = new FlyPointControlCmd(flyPointControlDTO);
         this.sendMessage(tyConfiguration.getIpPort(), flyPointControlCmd);
+        return true;
     }
 
     /**
      * 停止指点飞行控制
      */
     @Override
-    public void flyPointControlCancel(FlyPointControlCancelDTO flyPointControlCancelDTO) {
+    public Boolean flyPointControlCancel(FlyPointControlCancelDTO flyPointControlCancelDTO) {
         FlyPointControlCancelCmd flyPointControlCancelCmd = new FlyPointControlCancelCmd(flyPointControlCancelDTO);
         this.sendMessage(tyConfiguration.getIpPort(), flyPointControlCancelCmd);
+        return true;
     }
 
     /**
      * 紧急制动
      */
     @Override
-    public void emeragencyBrake(EmeragencyBrakeDTO emeragencyBrakeDTO) {
+    public Boolean emeragencyBrake(EmeragencyBrakeDTO emeragencyBrakeDTO) {
         EmergencyBrakeCmd emergencyBrakeCmd = new EmergencyBrakeCmd(emeragencyBrakeDTO);
         this.sendMessage(tyConfiguration.getIpPort(), emergencyBrakeCmd);
+        return true;
     }
 
     /**
@@ -783,4 +815,5 @@
             log.error("发送消息异常:{}", e.getMessage());
         }
     }
+
 }
\ No newline at end of file

--
Gitblit v1.9.3