From 2e91f8abdcb87feda9e237895d4460a19fd7aed8 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期五, 10 一月 2025 15:41:23 +0800 Subject: [PATCH] 2025年01月10日15:40:19 --- app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 77 ++++++++++++++++++++++++++++++-------- 1 files changed, 61 insertions(+), 16 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 9316532..e70f0e8 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java @@ -13,6 +13,7 @@ import android.os.SystemClock; import android.provider.Settings; import android.text.TextUtils; +import android.util.Log; import androidx.core.app.ActivityCompat; @@ -54,6 +55,7 @@ import com.hdl.photovoltaic.ui.bean.MemberBean; import com.hdl.photovoltaic.ui.bean.NotRunBean; import com.hdl.photovoltaic.ui.bean.OidBean; +import com.hdl.photovoltaic.ui.bean.QrcodeUrlBean; import com.hdl.photovoltaic.ui.bean.StaffBean; import com.hdl.photovoltaic.ui.bean.UnCountBean; import com.hdl.photovoltaic.ui.bean.UserRightTypeBean; @@ -141,6 +143,8 @@ if (!HDLUniMP.UNI_APP_ID.equals(appId)) { return; } + long startTime = System.currentTimeMillis(); + Log.d("===寮�濮嬫椂闂�===", String.valueOf(startTime)); String type = getKeyValue("type", data);//灏忕被 String logTag = getKeyValue("logTag", data);//鏍囪uni鎸囦护 String mode_type = "澶х被-" + topic + "---" + "灏忕被-" + type;//鐢ㄦ潵鎵撳嵃鐨� @@ -244,16 +248,15 @@ } } break; - //鐢电珯鐨勪氦浠樹簩缁寸爜(瀹夎鍟�) - case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURLQRCODE: { - uniGetDeliveryUrlQrcode(type, data, callback); - } - break; +// //鐢电珯鐨勪氦浠樹簩缁寸爜(瀹夎鍟�) +// case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURLQRCODE: { +// uniGetDeliveryUrlQrcode(type, data, callback); +// } +// break; //鐢电珯鐨勪氦浠楿RL(瀹夎鍟�) - case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURL: { + case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERYURLQRCODE: { uniGetDeliveryUrl(type, data, callback); } - break; //鐢电珯鎵嬪姩浜や粯(瀹夎鍟�) case HDLUniMP.UNI_EVENT_REPLY_HOME_DELIVERTOACCOUNT: { @@ -426,12 +429,18 @@ break; //閫嗗彉鍣ㄤ互澶綉閰嶇疆 case HDLUniMP.UNI_EVENT_REPLY_DEVICE_ETHERNET_SET: { - uniGetAndSetNetwork(mode_type, data, TopicApi.DELETING_GATEWAY_ETHERNET_EDIT, callback); + if (callback != null) { + uniSuccessCallback(type, "", callback); + } + //uniGetAndSetNetwork(mode_type, data, TopicApi.DELETING_GATEWAY_ETHERNET_EDIT, callback); } break; //閫嗗彉鍣ㄤ互澶綉鑾峰彇 case HDLUniMP.UNI_EVENT_REPLY_DEVICE_ETHERNET_GET: { - uniGetAndSetNetwork(mode_type, data, TopicApi.DELETING_GATEWAY_ETHERNET_GET, callback); + if (callback != null) { + uniSuccessCallback(type, "", callback); + } + //uniGetAndSetNetwork(mode_type, data, TopicApi.DELETING_GATEWAY_ETHERNET_GET, callback); } break; @@ -765,6 +774,8 @@ } catch (Exception e) { uniSuccessCallback(type, json, callback); } + long endTime = System.currentTimeMillis() - startTime; + Log.d("====鑰楁椂鏃堕棿====", String.valueOf(endTime)); } } } @@ -812,7 +823,7 @@ public void openUniMP(String path, JSONObject jsonObject) { JSONObject json = this.createdJSONObject(jsonObject, true); HDLUniMPSDKManager.getInstance().openUniMP(HDLUniMP.UNI_APP_ID, path, json, HdlUniLogic.this); - HdlLogLogic.print("uni---缁勮uni鍙戦�佹暟鎹牸寮�---" + json, false); +// HdlLogLogic.print("uni---缁勮uni鍙戦�佹暟鎹牸寮�---" + json, false); } /** @@ -841,7 +852,7 @@ //region ******uni鎺ュ彛鏂规硶****** /** - * link杩涜瀵嗙爜楠岃瘉 + * link杩涜鏈湴瀵嗙爜鐧诲綍楠岃瘉 */ private void uniCheckPasswordVerification(String type, Object data, DCUniMPJSCallback callback) { String password = getKeyValue("password", getKeyValue("data", data)); @@ -996,7 +1007,13 @@ HdlResidenceLogic.getInstance().getDeliveryUrl(homeId, new CloudCallBeak<String>() { @Override public void onSuccess(String obj) { - uniSuccessCallback(type, obj, callback); + try { + Gson g = new Gson(); + QrcodeUrlBean qrcodeUrlBean = g.fromJson(obj, QrcodeUrlBean.class); + uniSuccessCallback(type, qrcodeUrlBean.getDeliveryUrl(), callback); + } catch (Exception ignored) { + uniSuccessCallback(type, obj, callback); + } } @Override @@ -2359,8 +2376,9 @@ HdlDeviceLogic.getInstance().getCurrentHomeLocalAndCloudGatewayList(homeId, new CloudCallBeak<List<GatewayBean>>() { @Override public void onSuccess(List<GatewayBean> list) { + List<GatewayBean> newList = sortLogic(list); if (callback != null) { - uniSuccessCallback(type, list, callback); + uniSuccessCallback(type, newList, callback); } //EventBus浜嬩欢鍒嗗彂,杩涘叆浣忓畢寮�濮嬭闃呬富棰� BaseEventBus baseEventBus = new BaseEventBus(); @@ -2369,7 +2387,7 @@ baseEventBus.setData(homeId); EventBus.getDefault().post(baseEventBus); //杩涙潵浣忓畢璇︽儏閮借涓婁紶涓�娆id鍒楄〃鍒颁簯绔�; - HdlDeviceLogic.getInstance().uploadOidDataToCloud(homeId, list, false, null); + HdlDeviceLogic.getInstance().uploadOidDataToCloud(homeId, newList, false, null); } @Override @@ -2380,6 +2398,31 @@ } }); + } + + /** + * 杩涜鎺掑簭锛堥�嗗彉鍣�-璐熻浇涓績锛� + * + * @param list 婧愭暟鎹� + * @return 杩斿洖鍒楄〃 + */ + private List<GatewayBean> sortLogic(List<GatewayBean> list) { + if (list == null || list.size() == 0) { + return new ArrayList<>(); + } + List<GatewayBean> newList = new ArrayList<>(); + List<GatewayBean> inverterList = new ArrayList<>(); + List<GatewayBean> lcList = new ArrayList<>(); + for (int i = 0; i < list.size(); i++) { + if (list.get(i).getSpk().equals(HdlDeviceLogic.getInstance().INVERTER_DEVICE_SPK)) { + inverterList.add(list.get(i)); + } else { + lcList.add(list.get(i)); + } + } + newList.addAll(inverterList); + newList.addAll(lcList); + return newList; } /** @@ -2754,12 +2797,14 @@ //HdlLogLogic.print("uni---鍙戦��---ModBus---" + Arrays.toString(modBusBean.getData()), true); //鍙戦�乵odbus鍗忚 - HDLModBusConnect.getInstance().Send(modBusBean.getMac(), modBusBean.getData(), new ModbusCallBack() { + long startTime = System.currentTimeMillis(); + HDLModBusConnect.getInstance().asyncSend(modBusBean.getMac(), modBusBean.getData(), new ModbusCallBack() { @Override public void onSuccess(int[] data) { uniSuccessCallback(type, data, callback); // HdlLogLogic.print("uni---鎺ユ敹---ModBus---" + Arrays.toString(data), true); - + long endTime = System.currentTimeMillis() - startTime; + Log.d("====Mobus鑰楁椂鏃堕棿====", String.valueOf(endTime)); } @Override -- Gitblit v1.8.0