From 23d38b1e7374c20698702b6ab3feb1e92e82c4d3 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 04 十二月 2024 19:22:17 +0800
Subject: [PATCH] 2024年12月04日19:22:16

---
 app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java |   55 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 53 insertions(+), 2 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 67b7d2e..9316532 100644
--- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
+++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java
@@ -79,6 +79,7 @@
 import com.hdl.sdk.link.gateway.HDLLinkLocalGateway;
 
 import org.greenrobot.eventbus.EventBus;
+import org.json.JSONArray;
 import org.json.JSONObject;
 
 
@@ -247,6 +248,12 @@
                     case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURLQRCODE: {
                         uniGetDeliveryUrlQrcode(type, data, callback);
                     }
+                    break;
+                    //鐢电珯鐨勪氦浠楿RL(瀹夎鍟�)
+                    case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURL: {
+                        uniGetDeliveryUrl(type, data, callback);
+                    }
+
                     break;
                     //鐢电珯鎵嬪姩浜や粯(瀹夎鍟�)
                     case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERTOACCOUNT: {
@@ -717,8 +724,23 @@
                             HdlESLocalJsonLogic.getInstance().getHdlESLocalJson(url, deviceModel, new CloudCallBeak<String>() {
                                 @Override
                                 public void onSuccess(String obj) {
+//                                    if (callback != null) {
+//                                        uniSuccessCallback(type, obj, callback);
+//                                    }
+                                    String s = HdlESLocalJsonLogic.getInstance().readHdlESLocalJson(url, deviceModel);
+                                    //鏈湴缂撳瓨鏁版嵁
                                     if (callback != null) {
-                                        uniSuccessCallback(type, obj, callback);
+                                        try {
+                                            if (s.startsWith("{")) {
+                                                uniSuccessCallback(type, new Gson().fromJson(s, JsonObject.class), callback);
+                                            } else if (s.startsWith("[")) {
+                                                uniSuccessCallback(type, new Gson().fromJson(s, JsonArray.class), callback);
+                                            } else {
+                                                uniSuccessCallback(type, s, callback);
+                                            }
+                                        } catch (Exception e) {
+                                            uniSuccessCallback(type, s, callback);
+                                        }
                                     }
                                 }
 
@@ -732,7 +754,17 @@
                         } else {
                             //鏈湴缂撳瓨鏁版嵁
                             if (callback != null) {
-                                uniSuccessCallback(type, json, callback);
+                                try {
+                                    if (json.startsWith("{")) {
+                                        uniSuccessCallback(type, new Gson().fromJson(json, JsonObject.class), callback);
+                                    } else if (json.startsWith("[")) {
+                                        uniSuccessCallback(type, new Gson().fromJson(json, JsonArray.class), callback);
+                                    } else {
+                                        uniSuccessCallback(type, json, callback);
+                                    }
+                                } catch (Exception e) {
+                                    uniSuccessCallback(type, json, callback);
+                                }
                             }
                         }
                     }
@@ -957,6 +989,25 @@
     }
 
     /**
+     * 鐢电珯鐨勪氦浠楿Rl(瀹夎鍟�)
+     */
+    private void uniGetDeliveryUrl(String type, Object data, DCUniMPJSCallback callback) {
+        String homeId = getKeyValue("homeId", getKeyValue("data", data));
+        HdlResidenceLogic.getInstance().getDeliveryUrl(homeId, new CloudCallBeak<String>() {
+            @Override
+            public void onSuccess(String obj) {
+                uniSuccessCallback(type, obj, callback);
+            }
+
+            @Override
+            public void onFailure(HDLException e) {
+                uniExceptionCallback(type, e, callback);
+            }
+        });
+
+    }
+
+    /**
      * 鑾峰彇褰撳墠璐﹀彿鍦ㄥ叕鍙哥殑韬唤
      */
     private void uniGetUserRightType(String type, Object data, DCUniMPJSCallback callback) {

--
Gitblit v1.8.0