diff --git a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/model/ProductAuthenticateModel.java b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/model/ProductAuthenticateModel.java
index feb01688..1bfe0e1b 100644
--- a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/model/ProductAuthenticateModel.java
+++ b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/model/ProductAuthenticateModel.java
@@ -37,6 +37,16 @@ public class ProductAuthenticateModel {
/** 产品秘钥 */
private String mqttSecret;
+ private int vertificateMethod;
+
+ public int getVertificateMethod() {
+ return vertificateMethod;
+ }
+
+ public void setVertificateMethod(int vertificateMethod) {
+ this.vertificateMethod = vertificateMethod;
+ }
+
public Integer getIsAuthorize() {
return isAuthorize;
}
diff --git a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/service/impl/ToolServiceImpl.java b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/service/impl/ToolServiceImpl.java
index 8bdd8b92..c9759ac8 100644
--- a/springboot/wumei-iot/src/main/java/com/ruoyi/iot/service/impl/ToolServiceImpl.java
+++ b/springboot/wumei-iot/src/main/java/com/ruoyi/iot/service/impl/ToolServiceImpl.java
@@ -200,6 +200,10 @@ public class ToolServiceImpl implements IToolService
*/
@Override
public ResponseEntity simpleMqttAuthentication(MqttAuthenticationModel mqttModel, ProductAuthenticateModel productModel) {
+ // 1=简单认证,2=加密认证,3=简单+加密认证
+ if(productModel.getVertificateMethod()!=1 && productModel.getVertificateMethod()!=3){
+ return returnUnauthorized(mqttModel, "设备简单认证,设备对应产品不支持简单认证");
+ }
String[] passwordArray = mqttModel.getPassword().split("&");
if (productModel.getIsAuthorize() == 1 && passwordArray.length != 2) {
return returnUnauthorized(mqttModel, "设备简单认证,产品启用授权码后,密码格式为:密码 & 授权码");
@@ -242,6 +246,10 @@ public class ToolServiceImpl implements IToolService
*/
@Override
public ResponseEntity encryptAuthentication(MqttAuthenticationModel mqttModel, ProductAuthenticateModel productModel) throws Exception {
+ // 1=简单认证,2=加密认证,3=简单+加密认证
+ if(productModel.getVertificateMethod()!=2 && productModel.getVertificateMethod()!=3){
+ return returnUnauthorized(mqttModel, "设备加密认证,设备对应产品不支持加密认证");
+ }
String decryptPassword = AESUtils.decrypt(mqttModel.getPassword(), productModel.getMqttSecret());
if (decryptPassword == null || decryptPassword.equals("")) {
return returnUnauthorized(mqttModel, "设备加密认证,mqtt密码解密失败");
diff --git a/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml b/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml
index df45e1d6..6538413f 100644
--- a/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml
+++ b/springboot/wumei-iot/src/main/resources/mapper/iot/DeviceMapper.xml
@@ -80,6 +80,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
@@ -171,7 +172,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"