From 9f781b1841fb490179918e844bdd6ddd1773e441 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 08 十月 2024 13:34:19 +0800
Subject: [PATCH] 修改bug
---
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/IotInterfaceFallbackFactory.java | 40 ++++++
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java | 24 ++--
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/api/IotInterfaceUtil.java | 30 ++--
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/SendMessageController.java | 2
ruoyi-service/ruoyi-account/pom.xml | 5
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDeviceResp.java | 69 +++++++++++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/IotInterfaceController.java | 48 ++++++++
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/IotInterfaceClient.java | 38 ++++++
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java | 32 ++++
ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports | 3
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java | 4
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDevice.java | 27 ++++
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPile.java | 4
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/DeleteDeviceResp.java | 19 +++
14 files changed, 309 insertions(+), 36 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPile.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPile.java
index e1d69a9..fe22081 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPile.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPile.java
@@ -96,4 +96,8 @@
@ApiModelProperty(value = "设备状态(1=工作中,2=离线,3=故障)")
@TableField("status")
private Integer status;
+
+ @ApiModelProperty(value = "iotd设备id")
+ @TableField("iotd_device_id")
+ private String iotdDeviceId;
}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/IotInterfaceFallbackFactory.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/IotInterfaceFallbackFactory.java
new file mode 100644
index 0000000..c7050fa
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/factory/IotInterfaceFallbackFactory.java
@@ -0,0 +1,40 @@
+package com.ruoyi.integration.api.factory;
+
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.integration.api.feignClient.IotInterfaceClient;
+import com.ruoyi.integration.api.feignClient.SwitchwayGateClient;
+import com.ruoyi.integration.api.vo.AddDevice;
+import com.ruoyi.integration.api.vo.AddDeviceResp;
+import com.ruoyi.integration.api.vo.DeleteDeviceResp;
+import com.ruoyi.integration.api.vo.SwitchwayGateReq;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * 充电桩服务降级处理
+ *
+ * @author ruoyi
+ */
+@Component
+public class IotInterfaceFallbackFactory implements org.springframework.cloud.openfeign.FallbackFactory<IotInterfaceClient> {
+ private static final Logger log = LoggerFactory.getLogger(IotInterfaceFallbackFactory.class);
+
+ @Override
+ public IotInterfaceClient create(Throwable throwable) {
+ log.error("调用失败:{}", throwable.getMessage());
+ return new IotInterfaceClient() {
+
+
+ @Override
+ public R<AddDeviceResp> addDevice(AddDevice addDevice) {
+ return R.fail("添加设备失败:" + throwable.getMessage());
+ }
+
+ @Override
+ public R<DeleteDeviceResp> deleteDevice(String deviceId) {
+ return R.fail("删除设备失败:" + throwable.getMessage());
+ }
+ };
+ }
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/IotInterfaceClient.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/IotInterfaceClient.java
new file mode 100644
index 0000000..13f7b58
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/feignClient/IotInterfaceClient.java
@@ -0,0 +1,38 @@
+package com.ruoyi.integration.api.feignClient;
+
+import com.ruoyi.common.core.constant.ServiceNameConstants;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.integration.api.factory.IotInterfaceFallbackFactory;
+import com.ruoyi.integration.api.vo.AddDevice;
+import com.ruoyi.integration.api.vo.AddDeviceResp;
+import com.ruoyi.integration.api.vo.DeleteDeviceResp;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestParam;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 10:24
+ */
+@FeignClient(contextId = "IotInterfaceClient", value = ServiceNameConstants.INTEGRATION_SERVICE, fallbackFactory = IotInterfaceFallbackFactory.class)
+public interface IotInterfaceClient {
+
+
+ /**
+ * 添加设备
+ * @param addDevice
+ * @return
+ */
+ @PostMapping("/iotInterface/addDevice")
+ R<AddDeviceResp> addDevice(@RequestBody AddDevice addDevice);
+
+
+ /**
+ * 删除设备
+ * @param deviceId
+ * @return
+ */
+ @PostMapping("/iotInterface/deleteDevice")
+ R<DeleteDeviceResp> deleteDevice(@RequestParam("deviceId") String deviceId);
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDevice.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDevice.java
new file mode 100644
index 0000000..9479517
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDevice.java
@@ -0,0 +1,27 @@
+package com.ruoyi.integration.api.vo;
+
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 10:26
+ */
+@Data
+public class AddDevice {
+ /**
+ * 产品ID
+ */
+ private String productId;
+ /**
+ * 设备标识码 设备编号
+ */
+ private String nodeId;
+ /**
+ * 设备名称
+ */
+ private String deviceName;
+ /**
+ * 设备描述
+ */
+ private String description;
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDeviceResp.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDeviceResp.java
new file mode 100644
index 0000000..8fbe429
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/AddDeviceResp.java
@@ -0,0 +1,69 @@
+package com.ruoyi.integration.api.vo;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 10:37
+ */
+@Data
+public class AddDeviceResp {
+ private int httpStatusCode;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("app_id")
+ private String appId;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("app_name")
+ private String appName;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("device_id")
+ private String deviceId;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("node_id")
+ private String nodeId;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("gateway_id")
+ private String gatewayId;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("device_name")
+ private String deviceName;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("node_type")
+ private String nodeType;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("description")
+ private String description;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("fw_version")
+ private String fwVersion;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("sw_version")
+ private String swVersion;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("device_sdk_version")
+ private String deviceSdkVersion;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("product_id")
+ private String productId;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("product_name")
+ private String productName;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("status")
+ private String status;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("create_time")
+ private String createTime;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("connection_status_update_time")
+ private String connectionStatusUpdateTime;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("active_time")
+ private String activeTime;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("extension_info")
+ private Object extensionInfo;
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/DeleteDeviceResp.java b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/DeleteDeviceResp.java
new file mode 100644
index 0000000..55376fd
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/vo/DeleteDeviceResp.java
@@ -0,0 +1,19 @@
+package com.ruoyi.integration.api.vo;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 10:40
+ */
+@Data
+public class DeleteDeviceResp {
+ @JsonIgnore
+ private int httpStatusCode;
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ @JsonProperty("body")
+ private String body;
+}
diff --git a/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index fa602cc..5ed2383 100644
--- a/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/ruoyi-api/ruoyi-api-integration/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -4,4 +4,5 @@
com.ruoyi.integration.api.factory.SendMessageFallbackFactory
com.ruoyi.integration.api.factory.PlatformStartChargingReplyFallbackFactory
com.ruoyi.integration.api.factory.PlatformStopChargingReplyFallbackFactory
-com.ruoyi.integration.api.factory.SwitchwayGateFallbackFactory
\ No newline at end of file
+com.ruoyi.integration.api.factory.SwitchwayGateFallbackFactory
+com.ruoyi.integration.api.factory.IotInterfaceFallbackFactory
\ No newline at end of file
diff --git a/ruoyi-service/ruoyi-account/pom.xml b/ruoyi-service/ruoyi-account/pom.xml
index 23763ed..a464162 100644
--- a/ruoyi-service/ruoyi-account/pom.xml
+++ b/ruoyi-service/ruoyi-account/pom.xml
@@ -16,11 +16,6 @@
<dependencies>
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-mock</artifactId>
- <version>2.0.8</version>
- </dependency>
- <dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-api-order</artifactId>
</dependency>
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
index b640f7d..778b2b8 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
@@ -63,11 +63,11 @@
private WeixinProperties wxConfig;
@Autowired
private RestTemplate wxRestTemplate;
- /**
- * 上传文件存储在本地的根路径
- */
- @Value("${file.path}")
- private String localFilePath;
+// /**
+// * 上传文件存储在本地的根路径
+// */
+// @Value("${file.path}")
+// private String localFilePath;
@ApiOperation(value = "通过code获得openid,获取用户信息",tags = {"微信小程序登录"})
@PostMapping("/openIdByJsCode")
public AjaxResult<Map<String, Object>> openIdByJsCode(@RequestBody AppletUserEncrypteData data) {
@@ -99,9 +99,9 @@
public AjaxResult<Map<String, Object>> openIdByJsCode(@RequestBody AppletUserDecodeData appletUserDecodeData) {
return AjaxResult.success(appUserService.wxLogin(appletUserDecodeData, null));
}
- public static MultipartFile convertInputStreamToMultipartFile(InputStream inputStream, String fileName, String contentType) throws IOException {
- return new MockMultipartFile(fileName, fileName, contentType, inputStream);
- }
+// public static MultipartFile convertInputStreamToMultipartFile(InputStream inputStream, String fileName, String contentType) throws IOException {
+// return new MockMultipartFile(fileName, fileName, contentType, inputStream);
+// }
@ApiOperation(value = "获取微信小程序二维码",tags = {"获取微信小程序二维码"})
@PostMapping("/getQRCode")
public AjaxResult getQRCode() {
@@ -132,10 +132,10 @@
System.err.println(Base64.encodeBase64String(result));
inputStream = new ByteArrayInputStream(result);
String finalFileName = System.currentTimeMillis() + "" + new SecureRandom().nextInt(0x0400) + ".jpeg";
- MultipartFile multipartFile = convertInputStreamToMultipartFile(inputStream, finalFileName, "image/jpeg");
- String name = FileUploadUtils.upload(localFilePath, multipartFile);
- System.err.println(name);
- return AjaxResult.success(name);
+// MultipartFile multipartFile = convertInputStreamToMultipartFile(inputStream, finalFileName, "image/jpeg");
+// String name = FileUploadUtils.upload(localFilePath, multipartFile);
+// System.err.println(name);
+ return AjaxResult.success(null);
} catch (Exception e) {
System.err.println("调用小程序生成微信永久小程序码URL接口异常" + e);
} finally {
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java
index 0a3d4e7..002eb28 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingGunServiceImpl.java
@@ -116,6 +116,8 @@
return AjaxResult.error("接口编码已存在");
}
this.save(dto);
+ //下发硬件充电二维码
+
return AjaxResult.success();
}
@@ -141,6 +143,8 @@
return AjaxResult.error("接口编码已存在");
}
this.updateById(dto);
+ //下发硬件充电二维码
+
return AjaxResult.success();
}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
index d95c38f..96f1155 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
@@ -23,12 +23,17 @@
import com.ruoyi.chargingPile.service.ISiteService;
import com.ruoyi.chargingPile.service.TChargingGunService;
import com.ruoyi.chargingPile.service.TChargingPileService;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.integration.api.feignClient.IotInterfaceClient;
import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
+import com.ruoyi.integration.api.vo.AddDevice;
+import com.ruoyi.integration.api.vo.AddDeviceResp;
+import com.ruoyi.integration.api.vo.DeleteDeviceResp;
import com.ruoyi.order.api.feignClient.ChargingOrderAccountingStrategyClient;
import com.ruoyi.order.api.feignClient.ChargingOrderClient;
import com.ruoyi.order.api.model.TChargingOrder;
@@ -93,6 +98,9 @@
@Resource
private SysUserRoleClient sysUserRoleClient;
+ @Resource
+ private IotInterfaceClient iotInterfaceClient;
+
@@ -151,7 +159,20 @@
if(count > 0){
return AjaxResult.error("设备编号已存在");
}
- this.save(chargingPile);
+ //调用华为Iot创建设备
+ AddDevice addDevice = new AddDevice();
+ addDevice.setProductId("66da68d21837002b28b34ec0");
+ addDevice.setNodeId(chargingPile.getCode());
+ addDevice.setDeviceName(chargingPile.getName());
+ addDevice.setDescription(chargingPile.getNumber().toString());
+ AddDeviceResp deviceResp = iotInterfaceClient.addDevice(addDevice).getData();
+ if(null != deviceResp){
+ int httpStatusCode = deviceResp.getHttpStatusCode();
+ if(httpStatusCode == 201){
+ chargingPile.setIotdDeviceId(deviceResp.getDeviceId());
+ this.save(chargingPile);
+ }
+ }
return AjaxResult.success();
}
@@ -227,7 +248,6 @@
@Override
public AjaxResult delChargingPile(Integer[] ids) {
//检查是否有关联数据
- //接口
long count = chargingGunService.count(new LambdaQueryWrapper<TChargingGun>().in(TChargingGun::getChargingPileId, Arrays.asList(ids))
.eq(TChargingGun::getDelFlag, 0));
if(count > 0){
@@ -235,7 +255,13 @@
}
for (Integer id : ids) {
TChargingPile chargingPile = this.getById(id);
- this.removeById(chargingPile);
+ //调用华为Iot删除设备
+ if(StringUtils.isNotEmpty(chargingPile.getIotdDeviceId())){
+ DeleteDeviceResp deviceResp = iotInterfaceClient.deleteDevice(chargingPile.getIotdDeviceId()).getData();
+ if(null != deviceResp && deviceResp.getHttpStatusCode() == 201){
+ this.removeById(chargingPile);
+ }
+ }
}
return AjaxResult.success();
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/IotInterfaceController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/IotInterfaceController.java
new file mode 100644
index 0000000..e68a21f
--- /dev/null
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/IotInterfaceController.java
@@ -0,0 +1,48 @@
+package com.ruoyi.integration.iotda.controller;
+
+import com.huaweicloud.sdk.iotda.v5.model.AddDeviceResponse;
+import com.huaweicloud.sdk.iotda.v5.model.DeleteDeviceResponse;
+import com.ruoyi.common.core.domain.R;
+import com.ruoyi.integration.api.vo.AddDevice;
+import com.ruoyi.integration.api.vo.AddDeviceResp;
+import com.ruoyi.integration.api.vo.DeleteDeviceResp;
+import com.ruoyi.integration.iotda.utils.api.IotInterfaceUtil;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/10/8 10:29
+ */
+@RestController
+@RequestMapping("/iotInterface")
+public class IotInterfaceController {
+
+ @Resource
+ private IotInterfaceUtil iotInterfaceUtil;
+
+
+
+
+
+ /**
+ * 添加设备
+ * @return
+ */
+ @PostMapping("/addDevice")
+ public R<AddDeviceResp> addDevice(@RequestBody AddDevice addDevice){
+ return iotInterfaceUtil.addDeviceRequest(addDevice.getProductId(), addDevice.getNodeId(), addDevice.getDeviceName(), addDevice.getDescription());
+ }
+
+
+ /**
+ * 删除设备
+ * @param deviceId
+ * @return
+ */
+ @PostMapping("/deleteDevice")
+ public R<DeleteDeviceResp> deleteDevice(@RequestParam("deviceId") String deviceId){
+ return iotInterfaceUtil.deleteDeviceRequest(deviceId);
+ }
+}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/SendMessageController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/SendMessageController.java
index 53b62e4..c7bbf3d 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/SendMessageController.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/controller/SendMessageController.java
@@ -228,5 +228,5 @@
public String platformRemoteUpdate(@RequestBody PlatformRemoteUpdate platformRemoteUpdate){
return iotMessageProduce.sendMessage(platformRemoteUpdate.getCharging_pile_code(), ServiceIdMenu.PLATFORM_REMOTE_UPDATE.getKey(),messageUtil.platformRemoteUpdate(platformRemoteUpdate));
}
-
+
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/api/IotInterfaceUtil.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/api/IotInterfaceUtil.java
index 7582df9..0f2fb02 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/api/IotInterfaceUtil.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/iotda/utils/api/IotInterfaceUtil.java
@@ -1,22 +1,19 @@
package com.ruoyi.integration.iotda.utils.api;
-import com.huaweicloud.sdk.core.auth.AbstractCredentials;
-import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
-import com.huaweicloud.sdk.iotda.v5.IoTDAClient;
import com.huaweicloud.sdk.iotda.v5.model.*;
+import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.CodeGenerateUtils;
-import com.ruoyi.common.core.utils.uuid.UUID;
+import com.ruoyi.integration.api.vo.AddDeviceResp;
+import com.ruoyi.integration.api.vo.DeleteDeviceResp;
import com.ruoyi.integration.iotda.builder.IotBuilder;
-import com.ruoyi.integration.iotda.config.IotAccountConfig;
import com.ruoyi.integration.iotda.config.IotDAConfig;
-import com.ruoyi.integration.iotda.constant.IotConstant;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
-import org.springframework.web.bind.annotation.RestController;
import java.text.MessageFormat;
import java.util.ArrayList;
@@ -26,7 +23,7 @@
* iot接口调用工具类
*/
@Slf4j
-@RestController
+@Component
public class IotInterfaceUtil {
private static final String dataFormat = "json";
@@ -118,7 +115,7 @@
* @param description 设备描述
* @return AddDeviceResponse
*/
- public AddDeviceResponse addDeviceRequest(String productId,String nodeId,String deviceName,String description) {
+ public R<AddDeviceResp> addDeviceRequest(String productId,String nodeId,String deviceName,String description) {
AddDeviceRequest request = new AddDeviceRequest();
AddDevice body = new AddDevice();
body.withDeviceId(nodeId);
@@ -130,7 +127,10 @@
try {
AddDeviceResponse response = iotBuilder.buildIot().addDevice(request);
log.info("创建设备:{}",response.toString());
- return response;
+
+ AddDeviceResp addDeviceResp = new AddDeviceResp();
+ BeanUtils.copyProperties(response, addDeviceResp);
+ return R.ok(addDeviceResp);
} catch (ConnectionException e) {
e.printStackTrace();
} catch (RequestTimeoutException e) {
@@ -142,7 +142,7 @@
System.out.println(e.getErrorCode());
System.out.println(e.getErrorMsg());
}
- return null;
+ return R.fail();
}
/**
@@ -234,13 +234,15 @@
* @param deviceId 设备ID 使用已有设备编号
* @return DeleteDeviceResponse
*/
- public DeleteDeviceResponse deleteDeviceRequest(String deviceId) {
+ public R<DeleteDeviceResp> deleteDeviceRequest(String deviceId) {
DeleteDeviceRequest request = new DeleteDeviceRequest();
request.withDeviceId(deviceId);
try {
DeleteDeviceResponse response = iotBuilder.buildIot().deleteDevice(request);
log.info("删除设备:{}",response.toString());
- return response;
+ DeleteDeviceResp deleteDeviceResp = new DeleteDeviceResp();
+ BeanUtils.copyProperties(response, deleteDeviceResp);
+ return R.ok(deleteDeviceResp);
} catch (ConnectionException e) {
e.printStackTrace();
} catch (RequestTimeoutException e) {
@@ -252,6 +254,6 @@
System.out.println(e.getErrorCode());
System.out.println(e.getErrorMsg());
}
- return null;
+ return R.fail();
}
}
\ No newline at end of file
--
Gitblit v1.7.1