From 145de2dcd3124f236e7d06bcdee17c7be08048b1 Mon Sep 17 00:00:00 2001 From: panlili2024 <14743743+panlili2024@user.noreply.gitee.com> Date: 星期一, 11 十一月 2024 18:34:13 +0800 Subject: [PATCH] 修改搜索按照index索引 --- HDL_TTLSDK485/src/main/java/com/hdl/sdk/ttl/HDLDeviceManger/Core/HandleSearch.java | 47 +++++++++++++++++++++-------------------------- 1 files changed, 21 insertions(+), 26 deletions(-) diff --git a/HDL_TTLSDK485/src/main/java/com/hdl/sdk/ttl/HDLDeviceManger/Core/HandleSearch.java b/HDL_TTLSDK485/src/main/java/com/hdl/sdk/ttl/HDLDeviceManger/Core/HandleSearch.java index 4fee86d..0735237 100644 --- a/HDL_TTLSDK485/src/main/java/com/hdl/sdk/ttl/HDLDeviceManger/Core/HandleSearch.java +++ b/HDL_TTLSDK485/src/main/java/com/hdl/sdk/ttl/HDLDeviceManger/Core/HandleSearch.java @@ -4,6 +4,7 @@ import com.hdl.sdk.ttl.Config.Configuration; import com.hdl.sdk.ttl.HDLDeviceManger.Bean.DevicesData; +import com.hdl.sdk.ttl.HDLDeviceManger.Bean.ListRemarks; import com.hdl.sdk.ttl.HDLDeviceManger.Bean.RemarkTimes; import com.hdl.sdk.ttl.HDLDeviceManger.Bean.SearchCountBean; import com.hdl.sdk.ttl.HDLDeviceManger.EventBusEvent.DevicesInfoEvent; @@ -603,6 +604,7 @@ remarkTimer.cancel(); remarkTimer = null; } + if ((HDLDeviceManager.listRemarks != null && HDLDeviceManager.listRemarks.size() == 0) || isSearching) { isRefreshAllDevicesState = false; if (HDLDeviceManager.devicesDataList != null && HDLDeviceManager.devicesDataList.size() > 0) { @@ -620,7 +622,7 @@ } //鍒ゆ柇鏄惁鑾峰彇璁惧澶囨敞瀹屽叏锛岃嫢瀹屽叏鍒欒繑鍥炴墍鏈夎澶囧垪琛ㄣ�� - if (HDLDeviceManager.listRemarks != null && HDLDeviceManager.listRemarks.size() != 0 && pos == -1) { + if (pos == -1) { if (!isRefreshAllDevicesState) { HandleSearch.OnDeviceListGetSuccessCallBack(); } else { @@ -630,46 +632,39 @@ isRefreshAllDevicesState = false; HandleSearch.OnDeviceListGetSuccessCallBack(); } - return; } remarkTimer = new Timer(); final int newPos = pos; - final RemarkTimes remarkTimes = new RemarkTimes(); - remarkTimes.setCount(0); - if (remarkTimer == null) { - return; - } + ListRemarks listRemark = HDLDeviceManager.listRemarks.get(newPos); remarkTimer.schedule(new TimerTask() { @Override public void run() { - if (remarkTimes.getCount() < 1) { - remarkTimes.setCount(remarkTimes.getCount() + 1); + listRemark.setSendCount(listRemark.getSendCount() + 1); + if (listRemark.getSendCount() < 3 && !listRemark.isCallBack()) { if (newPos < HDLDeviceManager.listRemarks.size()) { - HDLLog.I("----->鍙戦�佽幏鍙栧娉ㄥ懡浠ゃ�傚叡" + HDLDeviceManager.listRemarks.size() + "涓ā鍧椼�傜" - + newPos + "涓ā鍧椼�傜 " + (HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getChannelNum()) - + " 鍥炶矾锛屽瓙缃戝彿锛�" + HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getDeviceSubnetID() - + "锛岃澶囧彿锛�" + HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getDeviceDeviceID() - + " 绗� " + remarkTimes.getCount() + " 娆�"); + HDLLog.I("----->鍙戦�佽幏鍙栧娉ㄥ懡浠ゃ�傚叡" + HDLDeviceManager.listRemarks.size() + "涓紝绗�" + + newPos + "涓ā鍧椼�傜 " + (listRemark.getAppliancesInfo().getDeviceIndex()) + + " 搴忓彿锛屽瓙缃戝彿锛�" + listRemark.getAppliancesInfo().getDeviceSubnetID() + + "锛岃澶囧彿锛�" + listRemark.getAppliancesInfo().getDeviceDeviceID() + + " 绗� " + listRemark.getSendCount() + " 娆�"); HDLCommand.cusSendCommand(Configuration.DEVICES_READ_FROM_GATEWAY_COMMAND, - HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getSourceSubnetID() - , HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getSourceDeviceID(), + listRemark.getAppliancesInfo().getSourceSubnetID() + , listRemark.getAppliancesInfo().getSourceDeviceID(), new byte[]{ - (byte) HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getDeviceSubnetID(), - (byte) HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getDeviceDeviceID(), - (byte) HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getChannelNum(), - (byte) HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getBigType(), - (byte) HDLDeviceManager.listRemarks.get(newPos).getAppliancesInfo().getLittleType(), + (byte) listRemark.getAppliancesInfo().getDeviceSubnetID(), + (byte) listRemark.getAppliancesInfo().getDeviceDeviceID(), + (byte) listRemark.getAppliancesInfo().getDeviceIndex(), + (byte) listRemark.getAppliancesInfo().getBigType(), + (byte) listRemark.getAppliancesInfo().getLittleType(), }); } } else { - - if (HDLDeviceManager.listRemarks != null - && HDLDeviceManager.listRemarks.size() != 0 - && newPos < HDLDeviceManager.listRemarks.size()) { - HDLDeviceManager.listRemarks.get(newPos).setCallBack(true); + if (!listRemark.isCallBack()) { + HDLLog.I("----->鑾峰彇澶囨敞鍛戒护瓒呮椂 绗� " + (listRemark.getAppliancesInfo().getDeviceIndex()) + " 搴忓彿锛屽瓙缃戝彿锛�" + listRemark.getAppliancesInfo().getDeviceSubnetID() + "锛岃澶囧彿锛�" + listRemark.getAppliancesInfo().getDeviceDeviceID()); } + listRemark.setCallBack(true); getDevRemarks(); } } -- Gitblit v1.8.0