From 0582b05b1f9dc97a71a72e4784452e5a43510256 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期二, 29 十月 2024 17:23:48 +0800
Subject: [PATCH] 2024年10月29日17:21:51

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java |   68 +++++++++++++++++++++++-----------
 1 files changed, 46 insertions(+), 22 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
index 5a804ba..664e55c 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -10,6 +10,7 @@
 import android.location.Location;
 import android.location.LocationManager;
 import android.os.IBinder;
+import android.os.SystemClock;
 import android.provider.Settings;
 import android.text.TextUtils;
 
@@ -19,6 +20,7 @@
 import com.google.gson.JsonArray;
 import com.google.gson.JsonObject;
 import com.google.gson.reflect.TypeToken;
+import com.hdl.link.error.HDLLinkCode;
 import com.hdl.linkpm.sdk.core.exception.HDLException;
 import com.hdl.linkpm.sdk.device.bean.DeviceOidInfoBean;
 import com.hdl.linkpm.sdk.ota.bean.CloudDeviceFirmwaresBean;
@@ -29,6 +31,7 @@
 import com.hdl.linkpm.sdk.utils.HDLMD5Utils;
 import com.hdl.photovoltaic.HDLApp;
 import com.hdl.photovoltaic.R;
+import com.hdl.photovoltaic.bean.LocalResponse;
 import com.hdl.photovoltaic.bean.ModBusBean;
 import com.hdl.photovoltaic.bean.PageNumberObject;
 import com.hdl.photovoltaic.config.AppConfigManage;
@@ -60,7 +63,6 @@
 import com.hdl.photovoltaic.uni.HDLUniMPSDKManager;
 import com.hdl.photovoltaic.utils.NetworkUtils;
 import com.hdl.photovoltaic.utils.WifiUtils;
-import com.hdl.sdk.link.common.exception.HDLLinkCode;
 import com.hdl.sdk.link.common.exception.HDLLinkException;
 import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
 import com.hdl.sdk.link.core.bean.gateway.GatewayBean;
@@ -180,10 +182,7 @@
                     case HDLUniMP.UNI_EVENT_REPLY_HOME_ADD: {
                         String url = getKeyValue("url", getKeyValue("data", data));
                         //EventBus浜嬩欢鍒嗗彂
-                        HdlCommonLogic.getInstance().postEventBusSticky(
-                                HDLUniMP.UNI_EVENT_REPLY_HOME_ADD,
-                                HDLUniMP.UNI_EVENT_REPLY_HOME_ADD,
-                                url);
+                        HdlCommonLogic.getInstance().postEventBusSticky(HDLUniMP.UNI_EVENT_REPLY_HOME_ADD, HDLUniMP.UNI_EVENT_REPLY_HOME_ADD, url);
 
                         if (callback != null) {
                             uniSuccessCallback(type, null, callback);
@@ -200,10 +199,7 @@
                     //鍒涘缓鐢电珯
                     case HDLUniMP.UNI_EVENT_REPLY_HOME_CREATION: {
                         //EventBus浜嬩欢鍒嗗彂
-                        HdlCommonLogic.getInstance().postEventBus(
-                                HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL,
-                                HDLUniMP.UNI_EVENT_REPLY_HOME_CREATION,
-                                getKeyValue("data", data));
+                        HdlCommonLogic.getInstance().postEventBus(HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL, HDLUniMP.UNI_EVENT_REPLY_HOME_CREATION, getKeyValue("data", data));
                         if (callback != null) {
                             uniSuccessCallback(type, null, callback);
                         }
@@ -238,10 +234,7 @@
                     //浣忓畢銆愮數绔欍�戠紪杈�
                     case HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT: {
                         //EventBus浜嬩欢鍒嗗彂
-                        HdlCommonLogic.getInstance().postEventBus(
-                                HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL,
-                                HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT,
-                                getKeyValue("data", data));
+                        HdlCommonLogic.getInstance().postEventBus(HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL, HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT, getKeyValue("data", data));
                         if (callback != null) {
                             uniSuccessCallback(type, null, callback);
                         }
@@ -680,20 +673,26 @@
                         if (callback != null) {
                             uniSuccessCallback(type, jsonObject, callback);
                         }
-                        HdlLogLogic.print("uni---log---" + localSecret, true);
+                        HdlLogLogic.print("uni---log---鏈湴瀵嗛挜鑾峰彇---" + localSecret, true);
 
                     }
                     break;
                     //鏈湴瀵嗛挜璁剧疆
                     case HDLUniMP.UNI_EVENT_REPLY_OTHER_LOCAL_ENCRYPT_SET: {
                         String local_encrypt = getKeyValue("local_encrypt", getKeyValue("data", data));
-                        //閲嶆柊璁剧疆鏈湴閫氳绉橀挜
-                        UserConfigManage.getInstance().setLocalSecret(local_encrypt);
-                        UserConfigManage.getInstance().Save();
-                        //閰嶇疆鏈湴閫氫俊鐨勪俊鎭�
-                        HDLLinkConfig.getInstance().setLocalSecret(local_encrypt);
-                        HdlLogLogic.print("uni---log---" + local_encrypt, true);
-
+                        if (!TextUtils.isEmpty(local_encrypt)) {
+                            //閲嶆柊璁剧疆鏈湴閫氳绉橀挜
+                            UserConfigManage.getInstance().setLocalSecret(local_encrypt);
+                            UserConfigManage.getInstance().Save();
+                            //閰嶇疆鏈湴閫氫俊鐨勪俊鎭�
+                            HDLLinkConfig.getInstance().setLocalSecret(local_encrypt);
+                            HdlLogLogic.print("uni---log---鏈湴瀵嗛挜璁剧疆---" + local_encrypt, true);
+                        }
+                    }
+                    break;
+                    //link杩涜瀵嗙爜楠岃瘉
+                    case HDLUniMP.UNI_EVENT_REPLY_OTHER_Password_verifiy: {
+                        uniCheckPasswordVerification(mode_type, data, callback);
                     }
                     break;
                 }
@@ -744,6 +743,31 @@
     //region ******uni鎺ュ彛鏂规硶******
 
     /**
+     * link杩涜瀵嗙爜楠岃瘉
+     */
+    private void uniCheckPasswordVerification(String type, Object data, DCUniMPJSCallback callback) {
+        String password = getKeyValue("password", getKeyValue("data", data));
+        String mac = getKeyValue("mac", getKeyValue("data", data));
+        HdlDeviceLogic.getInstance().getPasswordVerification(mac, password, new LinkCallBack<LocalResponse>() {
+            @Override
+            public void onSuccess(LocalResponse obj) {
+
+                if (callback != null) {
+                    uniCallbackData(type, obj.getObjects(), obj.getCode(), obj.getMsg(), callback);
+                }
+            }
+
+            @Override
+            public void onError(HDLLinkException e) {
+
+                if (callback != null) {
+                    uniCallbackData(type, null, e.getCode(), e.getMsg(), callback);
+                }
+            }
+        });
+    }
+
+    /**
      * 鐢电珯鍒犻櫎
      */
     private void uniGetDelResidence(String type, Object data, DCUniMPJSCallback callback) {
@@ -778,7 +802,7 @@
                         HdlUniLogic.getInstance().openUniMP(path, null);
                     } else {
                         HouseIdBean houseIdBean = HouseIdList.get(0);//榛樿鎷跨涓�涓�
-                        HdlResidenceLogic.getInstance().switchHouse(houseIdBean);
+                        HdlResidenceLogic.getInstance().switchHouse(houseIdBean,true);
                         JsonObject jsonObject = new JsonObject();
                         jsonObject.addProperty("homeId", houseIdBean.getHomeId());
                         jsonObject.addProperty("homeName", houseIdBean.getHomeName());

--
Gitblit v1.8.0