From b2d2e6dcf6ec38a2f24721f2bc925d634a6eb78d Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期二, 05 十二月 2023 18:31:01 +0800 Subject: [PATCH] 2023年12月05日18:30:40 --- app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 49 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java index 27b5ee8..b6834cd 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java @@ -103,14 +103,11 @@ * 鑾峰彇褰撳墠浣忓畢鐨勩�愪富銆戦�嗗彉鍣ㄥ垪琛� */ public GatewayBean getCurrentHomeMainGateway() { - List<GatewayBean> list = HDLLinkLocalGateway.getInstance().getGatewayList(); + List<GatewayBean> list = this.getCurrentHomeGatewayList(); if (list.size() > 0) { for (int i = 0; i < list.size(); i++) { GatewayBean gatewayBean = list.get(i); - if (TextUtils.isEmpty(gatewayBean.getDevice_mac())) { - continue; - } - if (gatewayBean.getMaster().equals(GatewayMasterType.MasterTrue) && gatewayBean.getHomeId().equals(UserConfigManage.getInstance().getHomeId())) { + if (gatewayBean.getMaster().equals(GatewayMasterType.MasterTrue)) { //鎵惧埌杩斿洖 return gatewayBean; } @@ -563,8 +560,8 @@ } /** - * 鑾峰彇閫嗗彉鍣ㄥ垪琛� - * 娉ㄦ剰:鏈夊缃戜互浜戠璁惧涓哄噯,鏈湴瀛樺湪锛屼簯绔病鏈夊垯鍒犻櫎锛涘唴缃戜互鏈湴涓轰富,鎼滅储澶氬皯涓澶囧氨鏄剧ず澶氬皯涓紱 + * 鑾峰彇閫嗗彉鍣ㄥ垪琛�(鏁村悎浜戠鍜屾湰鍦板垪琛�) + * 娉ㄦ剰:鏈夊缃戯紝浠ヤ簯绔澶囦负鍑�,鏈湴瀛樺湪锛屼簯绔病鏈夊垯鍒犻櫎锛涘唴缃戯紝浠ユ湰鍦颁负涓�,鎼滅储澶氬皯涓澶囧氨鏄剧ず澶氬皯涓紱 * * @param cloudCallBeak 杩斿洖閫嗗彉鍣ㄥ垪琛� */ @@ -667,7 +664,7 @@ @Override public void onError(HDLLinkException e) { - //澶栫綉鍙湁1鎯呭喌(鏈湴鎼滅储閫嗗彉鍣ㄥ垪琛ㄥけ璐ヤ簡) + //澶栫綉鍙湁1绉嶆儏鍐�(鏈湴鎼滅储閫嗗彉鍣ㄥ垪琛ㄥけ璐ヤ簡) HdlDeviceLogic.getInstance().getCloudInverterDeviceList(UserConfigManage.getInstance().getHomeId(), new CloudCallBeak<List<CloudInverterDeviceBean>>() { @Override public void onSuccess(List<CloudInverterDeviceBean> list) { @@ -824,6 +821,50 @@ HDLLinkLocalGateway.getInstance().refreshGatewayByHomeIdAndSpk(UserConfigManage.getInstance().getHomeId(), spks, true, gatewayCallBack); } + /** + * 鍒ゆ柇鏄湰鍦拌繛鎺� + * + * @param deviceMac 璁惧mac + * @return true=鏈湴杩炴帴 + */ + public boolean isLocalConnect(String deviceMac) { + GatewayBean gatewayBean = HDLLinkLocalGateway.getInstance().getLocalGateway(deviceMac); + return gatewayBean == null; + } + + /** + * 妫�娴嬮�嗗彉鍣ㄦ湁娌℃湁杩炴帴涓婁簯 + * + * @param deviceMac 璁惧mac + */ + public void checkInverterConnectedCloud(String deviceMac, CloudCallBeak<CloudInverterDeviceBean> cloudCallBeak) { + this.getCloudInverterDeviceList(UserConfigManage.getInstance().getHomeId(), new CloudCallBeak<List<CloudInverterDeviceBean>>() { + @Override + public void onSuccess(List<CloudInverterDeviceBean> list) { + CloudInverterDeviceBean cloudInverterDeviceBean = null; + if (list != null && list.size() > 0) { + for (int i = 0; i < list.size(); i++) { + if (list.get(i).getOsn().equals(deviceMac)) { + cloudInverterDeviceBean = list.get(i); + break; + } + + } + } + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(cloudInverterDeviceBean); + } + } + + @Override + public void onFailure(HDLException e) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(e); + } + } + }); + } + /** * 鍒锋柊閫嗗彉鍣ㄧ紦瀛樹俊鎭�(鍖呮嫭璁剧疆mqtt绉橀挜锛� -- Gitblit v1.8.0