From 910ec1a919fc1c91e1dd2c5faa3bd57c43975fb0 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Tue, 22 Oct 2024 08:47:25 +0800
Subject: [PATCH] 优化:增加业务接口
---
ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java | 41 +++++++++++++
ard-work/src/main/java/com/ard/tianyu/http/TyClient.java | 3
ard-work/src/main/java/com/ard/tianyu/controller/UavTest.java | 19 ++---
ard-work/src/main/java/com/ard/tianyu/service/ITyService.java | 29 +++++++++
ard-work/src/main/java/com/ard/tianyu/model/receiver/BoxReceiver.java | 24 ++++++++
ard-work/src/main/java/com/ard/tianyu/config/TyConfiguration.java | 15 +---
6 files changed, 107 insertions(+), 24 deletions(-)
diff --git a/ard-work/src/main/java/com/ard/tianyu/config/TianyuConfiguration.java b/ard-work/src/main/java/com/ard/tianyu/config/TyConfiguration.java
similarity index 83%
rename from ard-work/src/main/java/com/ard/tianyu/config/TianyuConfiguration.java
rename to ard-work/src/main/java/com/ard/tianyu/config/TyConfiguration.java
index 75a70eb..d93dfe2 100644
--- a/ard-work/src/main/java/com/ard/tianyu/config/TianyuConfiguration.java
+++ b/ard-work/src/main/java/com/ard/tianyu/config/TyConfiguration.java
@@ -1,6 +1,6 @@
package com.ard.tianyu.config;
-import com.ard.tianyu.http.TYClient;
+import com.ard.tianyu.http.TyClient;
import com.ard.tianyu.model.dto.TokenDTO;
import com.ard.tianyu.model.receiver.AccessTokenReceiver;
import com.ard.tianyu.model.receiver.BoxReceiver;
@@ -25,7 +25,7 @@
@Slf4j
@Data
@ConfigurationProperties(prefix = "tianyu")
-public class TianyuConfiguration {
+public class TyConfiguration {
private String endpoint;
@@ -52,8 +52,9 @@
encryptstr = DigestUtils.md5DigestAsHex(sb.getBytes());
return encryptstr;
}
+
@Resource
- private TYClient tyClient;
+ private TyClient tyClient;
private AccessTokenReceiver accessToken;
@@ -72,12 +73,4 @@
return accessToken;
}
- private List<BoxReceiver> boxList;
-
- public List<BoxReceiver> getBoxList(){
- //请求云盒列表
- TyHttpCommonReceiver<List<BoxReceiver>> getBoxList = tyClient.getBoxList(getAccessToken().convertFromDTO());
- boxList = getBoxList.getContent();
- return boxList;
- }
}
diff --git a/ard-work/src/main/java/com/ard/controller/UavTest.java b/ard-work/src/main/java/com/ard/tianyu/controller/UavTest.java
similarity index 64%
rename from ard-work/src/main/java/com/ard/controller/UavTest.java
rename to ard-work/src/main/java/com/ard/tianyu/controller/UavTest.java
index e5257f2..2a2509f 100644
--- a/ard-work/src/main/java/com/ard/controller/UavTest.java
+++ b/ard-work/src/main/java/com/ard/tianyu/controller/UavTest.java
@@ -1,13 +1,10 @@
-package com.ard.controller;
+package com.ard.tianyu.controller;
import com.alibaba.fastjson2.JSONObject;
import com.ard.common.core.domain.AjaxResult;
-import com.ard.tianyu.config.TianyuConfiguration;
-import com.ard.tianyu.http.TYClient;
-import com.ard.tianyu.model.dto.TokenDTO;
-import com.ard.tianyu.model.receiver.AccessTokenReceiver;
+import com.ard.tianyu.config.TyConfiguration;
import com.ard.tianyu.model.receiver.BoxReceiver;
-import com.ard.tianyu.model.receiver.TyHttpCommonReceiver;
+import com.ard.tianyu.service.ITyService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
@@ -23,24 +20,24 @@
* @author liusuyi
* @date 2024年10月21日13:52
**/
-@Api(tags = "测试接口")
+@Api(tags = "无人机接口")
@RequestMapping("/uav")
@RestController
public class UavTest {
@Resource
- TianyuConfiguration tianyuConfiguration;
+ private ITyService tyService;
@ApiOperation("获取天宇token信息")
@GetMapping("/getToken")
- public String getToken() {
- return JSONObject.toJSONString(tianyuConfiguration.getAccessToken());
+ public AjaxResult getToken() {
+ return AjaxResult.success(tyService.getAccessToken());
}
@ApiOperation("获取天宇盒子列表")
@GetMapping("/getBoxList")
public AjaxResult getBoxList() {
- List<BoxReceiver> BoxList = tianyuConfiguration.getBoxList();
+ List<BoxReceiver> BoxList = tyService.getBoxList();
//{"state":0,"content":{"companyId":4127,"accessToken":"sOONT0MMVdoKcMBibb40xxgrUrq0Hw9RFiajic3KOzoNtk"}}
return AjaxResult.success(BoxList);
}
diff --git a/ard-work/src/main/java/com/ard/tianyu/http/TYClient.java b/ard-work/src/main/java/com/ard/tianyu/http/TyClient.java
similarity index 90%
rename from ard-work/src/main/java/com/ard/tianyu/http/TYClient.java
rename to ard-work/src/main/java/com/ard/tianyu/http/TyClient.java
index 8dab578..ec6c518 100644
--- a/ard-work/src/main/java/com/ard/tianyu/http/TYClient.java
+++ b/ard-work/src/main/java/com/ard/tianyu/http/TyClient.java
@@ -5,7 +5,6 @@
import com.ard.tianyu.model.receiver.BoxReceiver;
import com.ard.tianyu.model.receiver.TyHttpCommonReceiver;
import com.dtflys.forest.annotation.*;
-import org.springframework.util.MultiValueMap;
import java.util.List;
import java.util.Map;
@@ -19,7 +18,7 @@
@BaseRequest(
baseURL = "http://#{tianyu.endpoint}" // 默认域名
)
-public interface TYClient {
+public interface TyClient {
@Post(TyConst.POST_TOKEN)
TyHttpCommonReceiver<AccessTokenReceiver> getToken(@JSONBody TokenDTO tokenDTO);
diff --git a/ard-work/src/main/java/com/ard/tianyu/model/receiver/BoxReceiver.java b/ard-work/src/main/java/com/ard/tianyu/model/receiver/BoxReceiver.java
index abf886b..6e63d39 100644
--- a/ard-work/src/main/java/com/ard/tianyu/model/receiver/BoxReceiver.java
+++ b/ard-work/src/main/java/com/ard/tianyu/model/receiver/BoxReceiver.java
@@ -8,27 +8,51 @@
@JsonIgnoreProperties(ignoreUnknown = true)
public class BoxReceiver {
+ /**
+ * 云盒SN编号
+ */
@JsonProperty("boxSn")
private String boxSn;
+ /**
+ * 云盒别名
+ */
@JsonProperty("boxName")
private String boxName;
+ /**
+ * 云盒版本号
+ */
@JsonProperty("boxVersion")
private String boxVersion;
+ /**
+ * 启动时间
+ */
@JsonProperty("startTime")
private String startTime;
+ /**
+ * 云盒在线状态
+ */
@JsonProperty("onLine")
private Integer onLine;
+ /**
+ * 视频服务器地址
+ */
@JsonProperty("videoServer")
private String videoServer;
+ /**
+ * 视频服务器端口
+ */
@JsonProperty("videoPort")
private Integer videoPort;
+ /**
+ * 任务编号
+ */
@JsonProperty("lastTaskId")
private Integer lastTaskId;
diff --git a/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java b/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java
new file mode 100644
index 0000000..d057f79
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/service/ITyService.java
@@ -0,0 +1,29 @@
+package com.ard.tianyu.service;
+
+import com.ard.tianyu.model.receiver.AccessTokenReceiver;
+import com.ard.tianyu.model.receiver.BoxReceiver;
+
+import java.util.List;
+
+/**
+ * ITyService
+ *
+ * @author liusuyi
+ * @date 2024年10月22日8:36
+ **/
+public interface ITyService {
+
+ /**
+ * 获取天宇token信息
+ * @return
+ */
+ AccessTokenReceiver getAccessToken();
+
+
+ /**
+ * 获取云盒列表
+ * @return
+ */
+ List<BoxReceiver> getBoxList();
+
+}
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
new file mode 100644
index 0000000..572bf5e
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/tianyu/service/impl/TyServiceImpl.java
@@ -0,0 +1,41 @@
+package com.ard.tianyu.service.impl;
+
+import com.ard.tianyu.config.TyConfiguration;
+import com.ard.tianyu.http.TyClient;
+import com.ard.tianyu.model.receiver.AccessTokenReceiver;
+import com.ard.tianyu.model.receiver.BoxReceiver;
+import com.ard.tianyu.model.receiver.TyHttpCommonReceiver;
+import com.ard.tianyu.service.ITyService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * TyServiceImpl
+ *
+ * @author liusuyi
+ * @date 2024年10月22日8:37
+ **/
+@Service
+public class TyServiceImpl implements ITyService {
+
+ @Resource
+ private TyClient tyClient;
+ @Resource
+ private TyConfiguration tyConfiguration;
+
+
+ @Override
+ public AccessTokenReceiver getAccessToken() {
+ return tyConfiguration.getAccessToken();
+ }
+
+ @Override
+ public List<BoxReceiver> getBoxList() {
+ //请求云盒列表
+ TyHttpCommonReceiver<List<BoxReceiver>> boxListReveiver = tyClient.getBoxList(tyConfiguration.getAccessToken().convertFromDTO());
+ return boxListReveiver.getContent();
+ }
+}
--
Gitblit v1.9.3