From ab4fde3dd12361b4092fd52060a66017a060236b Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 29 六月 2023 15:34:20 +0800 Subject: [PATCH] Merge branch 'hxb' into wjc --- app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 51 insertions(+), 9 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 063f4ab..b0e1592 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java @@ -8,6 +8,7 @@ import com.google.gson.Gson; import com.hdl.photovoltaic.HDLApp; import com.hdl.photovoltaic.bean.BaseEventBus; +import com.hdl.photovoltaic.bean.ModBusBean; import com.hdl.photovoltaic.config.ConstantManage; import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.listener.CloudCallBeak; @@ -16,9 +17,12 @@ import com.hdl.photovoltaic.uni.HDLUniMPSDKManager; import com.hdl.photovoltaic.uni.UniToAndroidBean; 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.common.utils.LogUtils; import com.hdl.sdk.link.core.bean.gateway.GatewayBean; import com.hdl.sdk.link.core.callback.GatewayCallBack; +import com.hdl.sdk.link.core.callback.ModbusCallBack; import com.hdl.sdk.link.core.connect.HDLModBusConnect; import org.greenrobot.eventbus.EventBus; @@ -51,6 +55,8 @@ } return sHdlUniLogic; } + + //region ******銆愬師鐢熴�戝拰銆愬皬绋嬪簭銆戦�氳鐨勬柟娉� onOtherUniMPEventReceive();openUniMP();sendUni();****** /** * 鍘熺敓鎺ユ敹鍒皍ni鍙戞潵鐨勬暟鎹� @@ -102,25 +108,20 @@ HDLUniMP.UniCallBackBaseBean callBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); callBackBaseBean.setType(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_LIST); callBackBaseBean.setData(gatewayBeanList); - sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, callBackBaseBean); +// sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, callBackBaseBean); + uniCallbackData(callBackBaseBean, callback); } @Override public void onError(HDLLinkException e) { //鍙戦�佸け璐� - HDLUniMP.UniCallBackBaseBean callBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); - callBackBaseBean.setType(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_LIST); - callBackBaseBean.setCode(e.getCode() + ""); - callBackBaseBean.setCode(e.getMsg()); - sendUni(HDLUniMP.UNI_EVENT_NOTIFICATION_DEVICE_MODEL, callBackBaseBean); + uniCallbackData(null, e.getCode()+"", "", callback); } }); } break; case HDLUniMP.UNI_EVENT_REPLY_DEVICE_MODBUS_SEND: { - - //鍙戦�乵odbus鍗忚 -// HDLModBusConnect.getInstance().Send(uniToAndroidBean.getGatewayOid(), null, ); + sendModBus(data,callback); } } @@ -157,6 +158,38 @@ } /** + * 鍙戦�乵odbus鍗忚鏁版嵁 + * @param data modbus鏁版嵁 + * @param callback 鍥炶皟 + */ + void sendModBus(Object data,DCUniMPJSCallback callback) + { + String tempData = getKeyValue("data", data); + if(tempData==null){ + LogUtils.i("data鍐呭涓虹┖"); + return; + } + ModBusBean modBusBean = com.alibaba.fastjson.JSONObject.parseObject(JSON.toJSONString(tempData), ModBusBean.class); + if(modBusBean.getOid()==null || modBusBean.getData()==null) { + LogUtils.i("鍐呭涓虹┖,oid="+modBusBean.getOid()+" data="+modBusBean.getData()); + return; + } + + //鍙戦�乵odbus鍗忚 + HDLModBusConnect.getInstance().Send(modBusBean.getOid(), modBusBean.getData(), new ModbusCallBack() { + @Override + public void onSuccess(byte []data) { + uniCallbackData(data, callback); + } + + @Override + public void onError(HDLLinkException e) { + uniCallbackData(null,e.getCode()+"","澶辫触",callback); + } + }); + } + + /** * 鍘熺敓鎵撳紑uni鎸囧畾椤甸潰 * * @param path 鎵撳紑璺緞 @@ -190,6 +223,10 @@ public void checkRemoveOtherUniMPEventCallBack() { HDLUniMPSDKManager.getInstance().checkRemoveOtherUniMPEventCallBack(this); } + //endregion + + + //region ******涓�鑸柟娉�****** /** * 缁勮uni鍙戦�佹暟鎹牸寮� @@ -242,6 +279,10 @@ } + private void uniCallbackData(Object obj, DCUniMPJSCallback callback) { + uniCallbackData(obj,HDLLinkCode.HDL_SUCCESS+"",HDLLinkCode.HDL_SUCCESS.getMsg(),callback); + } + /** * 褰撳墠瀵硅薄杞� JSONObject * @@ -284,6 +325,7 @@ return ""; } } + //endregion } -- Gitblit v1.8.0