From ba84a556dc93fcf75e6ec76f999344d3f96ad788 Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期五, 02 二月 2024 18:05:24 +0800 Subject: [PATCH] 2024年02月02日18:04:36 --- app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java | 385 +++++++++++++++++++++++++++++++----------------------- 1 files changed, 223 insertions(+), 162 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 c425f7c..6720846 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlUniLogic.java @@ -1,13 +1,25 @@ package com.hdl.photovoltaic.other; +import android.Manifest; import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; import android.content.ServiceConnection; +import android.content.pm.PackageManager; +import android.location.Location; +import android.location.LocationListener; +import android.location.LocationManager; import android.os.IBinder; +import android.provider.Settings; import android.text.TextUtils; import android.util.Log; +import androidx.annotation.NonNull; +import androidx.core.app.ActivityCompat; + import com.google.gson.Gson; +import com.google.gson.JsonObject; import com.hdl.linkpm.sdk.core.exception.HDLException; import com.hdl.linkpm.sdk.device.bean.DeviceOidInfoBean; import com.hdl.linkpm.sdk.ota.bean.CloudDeviceFirmwaresBean; @@ -25,11 +37,13 @@ import com.hdl.photovoltaic.listener.LinkCallBack; import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean; import com.hdl.photovoltaic.ui.bean.DeviceTimeBean; +import com.hdl.photovoltaic.ui.bean.Geolocation; import com.hdl.photovoltaic.ui.bean.OidBean; import com.hdl.photovoltaic.uni.HDLUniMP; import com.hdl.photovoltaic.uni.HDLUniMPSDKManager; import com.hdl.photovoltaic.utils.NetworkUtils; import com.hdl.photovoltaic.utils.WifiUtils; +import com.hdl.photovoltaic.widget.ConfirmationCancelDialog; import com.hdl.sdk.link.common.exception.HDLLinkCode; import com.hdl.sdk.link.common.exception.HDLLinkException; import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus; @@ -93,6 +107,7 @@ return; } String type = getKeyValue("type", data);//灏忕被 + String mode_type = "澶х被->" + topic + "--->灏忕被->" + type;//鐢ㄦ潵鎵撳嵃鐨� if (HDLUniMP.UNI_EVENT_REPLY_HOME_MODEL.equals(topic)) { //浣忓畢妯″潡 switch (type) { @@ -133,60 +148,60 @@ } if (callback != null) { - uniCallbackData(null, callback); + uniCallbackData(type, null, callback); } } else if (HDLUniMP.UNI_EVENT_REPLY_DEVICE_MODEL.equals(topic)) { //璁惧妯″潡 switch (type) { //娣诲姞閫嗗彉鍣ㄥ埌浜戠 case HDLUniMP.UNI_EVENT_REPLY_DEVICE_ADD: { - this.uniAddInverterDeviceToCloud(data, callback); + this.uniAddInverterDeviceToCloud(mode_type, data, callback); } break; //鍒犻櫎浜戠閫嗗彉鍣� case HDLUniMP.UNI_EVENT_REPLY_DEVICE_DEL: { - this.uniDelInverterDevice(data, callback); + this.uniDelInverterDevice(mode_type, data, callback); } break; //灞�鍩熺綉鎼滅储閫嗗彉鍣ㄥ垪琛� case HDLUniMP.UNI_EVENT_REPLY_DEVICE_NET_LIST: { - this.uniSearchGateway(callback); + this.uniSearchGateway(mode_type, callback); } break; //鑾峰彇閫嗗彉鍣ㄥ垪琛� case HDLUniMP.UNI_EVENT_REPLY_DEVICE_LIST: { - this.uniGetCurrentHomeLocalAndCloudGatewayList(data, callback); + this.uniGetCurrentHomeLocalAndCloudGatewayList(mode_type, data, callback); } break; //modBus鍗忚涓撶敤 case HDLUniMP.UNI_EVENT_REPLY_DEVICE_MODBUS_SEND: { - sendModBus(data, callback); + sendModBus(mode_type, data, callback); } break; //鑾峰彇oid鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_DEVICE_OID: { - this.uniGetInverterOidList(data, callback); + this.uniGetInverterOidList(mode_type, data, callback); } break; //閫嗗彉鍣ㄦ椂闂磋鍙� case HDLUniMP.UNI_EVENT_REPLY_DEVICE_TIME: { - this.uniGetInverterTime(data, callback); + this.uniGetInverterTime(mode_type, data, callback); } break; //閫嗗彉鍣ㄦ椂闂寸紪杈� case HDLUniMP.UNI_EVENT_REPLY_DEVICE_TIME_EDIT: { - this.uniEditInverterTime(data, callback); + this.uniEditInverterTime(mode_type, data, callback); } break; //閫嗗彉鍣ㄤ笂浼犳暟鎹埌浜戠 case HDLUniMP.UNI_EVENT_REPLY_DEVICE_UPLOADING_DATA: { - this.uniUploadDataToCloud(data, callback); + this.uniUploadDataToCloud(mode_type, data, callback); } break; //閫嗗彉鍣ㄦ竻绌轰綇瀹卛d case HDLUniMP.UNI_EVENT_REPLY_DEVICE_CLEAR_DATA: { - this.uniClearInverterHomeId(data, callback); + this.uniClearInverterHomeId(mode_type, data, callback); } break; @@ -199,14 +214,14 @@ //鑾峰彇wifi鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_WIFI_LIST: { if (callback != null) { - uniCallbackData(wifiUtils.getScanResult(), callback); + uniCallbackData(mode_type, wifiUtils.getScanResult(), callback); } } break; //褰撳墠wifi璇︽儏 case HDLUniMP.UNI_EVENT_REPLY_WIFI_INFO: { if (callback != null) { - uniCallbackData(wifiUtils.getCurrentConnectWifiInfo(), callback); + uniCallbackData(mode_type, wifiUtils.getCurrentConnectWifiInfo(), callback); } } break; @@ -222,107 +237,109 @@ switch (type) { //鍚戜簯绔幏鍙杘id鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_OTA_CLOUD_OID_LIST: { - this.uniGetCloudOidList(data, callback); + this.uniGetCloudOidList(mode_type, data, callback); } break; //褰撳墠璁惧鍥轰欢鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_LIST: { - this.uniGetCurrentDeviceFirmwares(data, callback); + this.uniGetCurrentDeviceFirmwares(mode_type, data, callback); } break; //璁惧鏂板浐浠跺垪琛� case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_NEW_LIST: { - this.uniGetNewDeviceFirmwares(data, callback); + this.uniGetNewDeviceFirmwares(mode_type, data, callback); } break; //璁惧鏈湴鍥轰欢鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_LOCAL: { - this.uniGetLocalFirmwares(data, callback); + this.uniGetLocalFirmwares(mode_type, data, callback); } break; //璁惧鍥轰欢涓嬭浇 case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_DOWNLOAD: { - this.uniDeviceFirmwareDownload(data, callback); + this.uniDeviceFirmwareDownload(mode_type, data, callback); } break; //璁惧鍥轰欢鍗囩骇 case HDLUniMP.UNI_EVENT_REPLY_OTA_FIRMWARES_UPGRADE: { - this.uniUpgradeDeviceFirmware(data, callback); + this.uniUpgradeDeviceFirmware(mode_type, data, callback); } break; //褰撳墠璁惧椹卞姩鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_LIST: { - this.uniGetCurrentGatewayDrivers(data, callback); + this.uniGetCurrentGatewayDrivers(mode_type, data, callback); } break; //璁惧鏂伴┍鍔ㄥ垪琛� case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_NEW: { - this.uniGetNewGatewayDrivers(data, callback); + this.uniGetNewGatewayDrivers(mode_type, data, callback); } break; //璁惧鏈湴椹卞姩鍒楄〃 case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_LOCAL: { - this.uniGetLocalDrivers(data, callback); + this.uniGetLocalDrivers(mode_type, data, callback); } break; //璁惧椹卞姩涓嬭浇 case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_DOWNLOAD: { - this.uniGatewayDriverDownload(data, callback); + this.uniGatewayDriverDownload(mode_type, data, callback); } break; //璁惧椹卞姩鍗囩骇 case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_UPGRADE: { - this.uniUpgradeGatewayDriver(data, callback); + this.uniUpgradeGatewayDriver(mode_type, data, callback); } break; //璁惧鍙栨秷椹卞姩,鍥轰欢涓嬭浇鍗囩骇鏂囦欢 case HDLUniMP.UNI_EVENT_REPLY_OTA_DRIVER_CANCEL_DOWNLOAD: { - this.uniCancelDownloadingUpgradeFile(data, callback); -// HdlThreadLogic.runSubThread(new Runnable() { -// @Override -// public void run() { -// HdlLogLogic.print("褰撳墠绾跨▼鍚嶇О鍙栨秷涓嬭浇====" + Thread.currentThread().getName()); -// uniCancelDownloadingUpgradeFile(data, callback); -// } -// }); + this.uniCancelDownloadingUpgradeFile(mode_type, data, callback); } break; //璁惧椹卞姩,鍥轰欢鍙栨秷鍗囩骇 case HDLUniMP.UNI_EVENT_REPLY_OTA_CANCEL_UPGRADE: { - - this.uniCancelUpgrade(data, callback); + this.uniCancelUpgrade(mode_type, data, callback); } break; //鎵撳紑鏈嶅姟 case HDLUniMP.UNI_EVENT_REPLY_OTA_OPEN_SERVICE: { - this.uniOpenService(data, callback); + this.uniOpenService(mode_type, data, callback); } break; //鍏抽棴鏈嶅姟 case HDLUniMP.UNI_EVENT_REPLY_OTA_CLOSE_SERVICE: { - this.uniCloseService(data, callback); + this.uniCloseService(mode_type, data, callback); } break; } } else if (HDLUniMP.UNI_EVENT_REPLY_OTHER_MODEL.equals(topic)) { + //鍏跺畠妯″潡 switch (type) { //鑾峰彇娓╁害鍗曚綅 case HDLUniMP.UNI_EVENT_REPLY_OTHER_UNIT: { - uniCallbackData(UserConfigManage.getInstance().getTemperature_unit(), callback); + uniCallbackData(mode_type, UserConfigManage.getInstance().getTemperature_unit(), callback); } break; //鑾峰彇褰撳墠app璇█ case HDLUniMP.UNI_EVENT_REPLY_OTHER_APP_LANGUAGE: { - uniCallbackData(UserConfigManage.getInstance().getCurrentAppLanguage(), callback); + uniCallbackData(mode_type, UserConfigManage.getInstance().getCurrentAppLanguage(), callback); } break; + //鑾峰彇浣嶇疆淇℃伅 + case HDLUniMP.UNI_EVENT_REPLY_OTHER_LOCATION_INFO: { + this.uniGetLocationInfo(mode_type, data, callback); + } + //涓撻棬鏀堕泦uni鏃ュ織 + case HDLUniMP.UNI_EVENT_REPLY_OTHER_UNI_LOG: { + String customizeContentFormat = getKeyValue("customizeContentFormat", getKeyValue("data", data)); + HdlLogLogic.print("uni--->log--->" + customizeContentFormat, true); + } } } - HdlLogLogic.print("uni鍙戞潵鐨勬暟鎹�--->澶х被--->" + topic + "\r\n" + data, true); + HdlLogLogic.print("uni--->鍙戦��--->" + mode_type + "\r\n" + data, true); } catch (Exception e) { - HdlLogLogic.print("uni鍙戞潵鐨勬暟鎹�--->" + e.getMessage(), true); + HdlLogLogic.print("uni--->鍙戦��--->" + e.getMessage(), true); } } @@ -366,21 +383,63 @@ //region ******uni鎺ュ彛鏂规硶****** /** + * 鑾峰彇浣嶇疆淇℃伅,鍖呮嫭缁忕含搴� + */ + private void uniGetLocationInfo(String type, Object data, DCUniMPJSCallback callback) { + + + // 鍒濆鍖朙ocationManager瀵硅薄 + LocationManager locationManager = (LocationManager) HDLApp.getInstance().getSystemService(Context.LOCATION_SERVICE); + Geolocation geolocation = new Geolocation(); + //INTERNET 鍏佽浣跨敤缃戠粶 + //ACCESS_FINE_LOCATION 鍏佽浣跨敤GPS瀹氫綅 + //ACCESS_COARSE_LOCATION 鍏佽浣跨敤WIFI鐑偣鎴栧熀绔欐潵鑾峰彇绮楃暐鐨勫畾浣� + if (ActivityCompat.checkSelfPermission(HDLApp.getInstance(), Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(HDLApp.getInstance(), Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + geolocation.setResult(-2); + geolocation.setDes(HDLApp.getInstance().getString(R.string.exception_no_location_information_permission)); + uniCallbackData(type, geolocation, callback); + return; + } + // 鍒ゆ柇璁惧鏄惁鏀寔瀹氫綅鍔熻兘 + if (!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { + geolocation.setResult(-1); + geolocation.setDes(HDLApp.getInstance().getString(R.string.exception_the_location_function_is_not_enabled)); + //todo 鎻愮ず鐢ㄦ埛鎵撳紑瀹氫綅鍔熻兘鎴栬�呭紩瀵肩敤鎴峰幓绯荤粺璁剧疆椤甸潰鎵撳紑瀹氫綅鍔熻兘 + uniCallbackData(type, geolocation, callback); + return; + } + Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); + if (location == null) { + geolocation.setResult(-3); + geolocation.setDes(HDLApp.getInstance().getString(R.string.exception_the_location_function_is_not_enabled)); + uniCallbackData(type, geolocation, callback); + return; + } + geolocation.setResult(0); + geolocation.setDes(HDLApp.getInstance().getString(R.string.succeed)); + geolocation.setLongitude(location.getLatitude());//绾害 + geolocation.setLatitude(location.getLongitude());//缁忓害 + uniCallbackData(type, geolocation, callback); + HdlLogLogic.print("缁忕含搴�--->缁忓害:" + location.getLongitude() + "绾害:" + location.getLatitude(), true); + + } + + /** * 鍚戜簯绔幏鍙栭�嗗彉鍣╫id鍒楄〃 * 鍓嶆彁鏉′欢:瑕佷笂浼犻�嗗彉鍣╫id鍒楄〃缁欎簯绔� * * @param callback - */ - private void uniGetCloudOidList(Object data, DCUniMPJSCallback callback) { + private void uniGetCloudOidList(String type, Object data, DCUniMPJSCallback callback) { HdlOtaLogic.getInstance().getCloudOidList(new CloudCallBeak<List<DeviceOidInfoBean>>() { @Override public void onSuccess(List<DeviceOidInfoBean> obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -389,17 +448,17 @@ * 鍚戜簯绔幏鍙栥�愬綋鍓嶈澶囧浐浠躲�戝垪琛� * 鍓嶆彁鏉′欢:璁惧鑷姩涓婃姤oid淇℃伅缁欎簯绔� */ - private void uniGetCurrentDeviceFirmwares(Object data, DCUniMPJSCallback callback) { + private void uniGetCurrentDeviceFirmwares(String type, Object data, DCUniMPJSCallback callback) { String deviceOidId = getKeyValue("deviceOidId", getKeyValue("data", data));//浜戠涓婅澶噄d HdlOtaLogic.getInstance().getCurrentDeviceFirmwares(deviceOidId, new CloudCallBeak<List<DeviceFirmwareBean>>() { @Override public void onSuccess(List<DeviceFirmwareBean> obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -408,18 +467,18 @@ * 鍚戜簯绔幏鍙栥�愯澶囨柊鍥轰欢銆戝垪琛� * 鍓嶆彁鏉′欢:瑕侀�氳繃骞冲彴杞欢涓婁紶鏂板浐浠� */ - private void uniGetNewDeviceFirmwares(Object data, DCUniMPJSCallback callback) { + private void uniGetNewDeviceFirmwares(String type, Object data, DCUniMPJSCallback callback) { String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//纭欢鍨嬪彿 String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//绯荤粺闀滃儚id HdlOtaLogic.getInstance().getNewDeviceFirmwares(hardwareModel, osImageId, new CloudCallBeak<List<CloudDeviceFirmwaresBean>>() { @Override public void onSuccess(List<CloudDeviceFirmwaresBean> obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -427,11 +486,11 @@ /** * 鑾峰彇銆愯澶囨湰鍦板浐浠躲�戝垪琛� */ - private void uniGetLocalFirmwares(Object data, DCUniMPJSCallback callback) { + private void uniGetLocalFirmwares(String type, Object data, DCUniMPJSCallback callback) { try { - String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//纭欢鍨嬪彿 +// String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//纭欢鍨嬪彿 String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//绯荤粺闀滃儚id - String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//鍥轰欢鐗堟湰id +// String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//鍥轰欢鐗堟湰id // String oid = getKeyValue("oid", getKeyValue("data", data));//鍥轰欢oid List<DeviceFirmwareBean> list = new ArrayList<>(); String driverFileList = HdlFileLogic.getInstance().getFirmwareRootPath(); @@ -453,7 +512,7 @@ } } if (callback != null) { - this.uniCallbackData(list, callback); + this.uniCallbackData(type, list, callback); } } catch (Exception ignored) { } @@ -462,8 +521,8 @@ /** * 鍚戜簯绔彂璧枫�愯澶囧浐浠朵笅杞姐�戞寚浠� */ - private void uniDeviceFirmwareDownload(Object data, DCUniMPJSCallback callback) { - String deviceOidId = getKeyValue("deviceOidId", getKeyValue("data", data));//浜戠涓婅澶噄d + private void uniDeviceFirmwareDownload(String type, Object data, DCUniMPJSCallback callback) { +// String deviceOidId = getKeyValue("deviceOidId", getKeyValue("data", data));//浜戠涓婅澶噄d String oid = getKeyValue("oid", getKeyValue("data", data));//璇ュ浐浠剁殑oid String imageId = getKeyValue("imageId", getKeyValue("data", data));//鍥轰欢闀滃儚id String version = getKeyValue("version", getKeyValue("data", data));//鍥轰欢鐗堟湰 @@ -486,11 +545,9 @@ } if (isBoolean) { - HdlLogLogic.print("鍐欏叆鏂板浐浠舵枃浠跺埌鍐呭瓨鎴愬姛.", true); - uniCallbackData(null, 0, "鍐欏叆鏂伴┍鍔ㄦ枃浠跺埌鍐呭瓨鎴愬姛", callback); + uniCallbackData(type, null, 0, "鍐欏叆鏂伴┍鍔ㄦ枃浠跺埌鍐呭瓨鎴愬姛", callback); } else { - HdlLogLogic.print("涓嬭浇鍥轰欢鍗囩骇鏂囦欢澶辫触.", true); - uniCallbackData(null, -2, "涓嬭浇鍥轰欢鍗囩骇鏂囦欢澶辫触", callback); + uniCallbackData(type, null, -2, "涓嬭浇鍥轰欢鍗囩骇鏂囦欢澶辫触", callback); } } }); @@ -499,8 +556,7 @@ @Override public void onFailure(HDLException e) { - HdlLogLogic.print("涓嬭浇鍥轰欢鏂囦欢鍒板唴瀛樺け璐�.", true); - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -508,14 +564,14 @@ /** * 鍚戜簯绔彂璧枫�愯澶囧浐浠躲�戝崌绾TA鎸囦护 */ - private void uniUpgradeDeviceFirmware(Object data, DCUniMPJSCallback callback) { + private void uniUpgradeDeviceFirmware(String type, Object data, DCUniMPJSCallback callback) { String homeId = UserConfigManage.getInstance().getHomeId(); String deviceMac = getKeyValue("mac", getKeyValue("data", data));//閫嗗彉鍣ㄨ澶噈ac锛堟煡鎵緎ocket锛� String deviceOidId = getKeyValue("deviceOidId", getKeyValue("data", data));//浜戠涓婅澶噄d String oid = getKeyValue("oid", getKeyValue("data", data));//鍗囩骇鍥轰欢鐨刼id String firmwareVersionId = getKeyValue("firmwareVersionId", getKeyValue("data", data));//鍥轰欢鐗堟湰id String version = getKeyValue("version", getKeyValue("data", data));//鍥轰欢鐗堟湰 - String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//浜戠涓婃枃浠禡D5 +// String hardwareModel = getKeyValue("hardwareModel", getKeyValue("data", data));//浜戠涓婃枃浠禡D5 String imageId = getKeyValue("imageId", getKeyValue("data", data));//鍥轰欢闀滃儚id String module = "FW#" + imageId;//妯″潡淇℃伅(HW锛氱‖浠�) @@ -536,7 +592,7 @@ String firmwarePathFileName = HdlFileLogic.getInstance().getFirmwarePathFileName(oid, imageId, version); byte[] data = HdlFileLogic.getInstance().readFileByte(firmwarePathFileName); if (data == null || data.length == 0) { - uniCallbackData(null, -2, "鏈湴鎵句笉鍒板崌绾у浐浠舵枃浠�,璇蜂笅杞藉ソ鍥轰欢鏂囦欢,鍐嶉噸鏂板崌绾�.", callback); + uniCallbackData(type, null, -2, "鏈湴鎵句笉鍒板崌绾у浐浠舵枃浠�,璇蜂笅杞藉ソ鍥轰欢鏂囦欢,鍐嶉噸鏂板崌绾�.", callback); return; } String md5 = HDLMD5Utils.encodeMD5(data);//缃戝叧鍥轰欢闇�瑕� @@ -551,15 +607,14 @@ @Override public void onError(HDLLinkException e) { - HdlLogLogic.print("閫氱煡缁欑綉鍏冲崌绾у浐浠舵枃浠跺湴鍧�澶辫触,鏃犳硶鍗囩骇.", true); - uniCallbackData(null, -2, "閫氱煡缁欑綉鍏冲崌绾у浐浠舵枃浠跺湴鍧�澶辫触,鏃犳硶鍗囩骇,", callback); + uniCallbackData(type, null, -2, "閫氱煡缁欑綉鍏冲崌绾у浐浠舵枃浠跺湴鍧�澶辫触,鏃犳硶鍗囩骇,", callback); } }); } @Override public void onServiceDisconnected(ComponentName name) { - uniCallbackData(null, -2, "鏈湴鏈嶅姟鏈夊紓甯稿け璐�,鏃犳硶鍗囩骇,", callback); + uniCallbackData(type, null, -2, "鏈湴鏈嶅姟鏈夊紓甯稿け璐�,鏃犳硶鍗囩骇,", callback); } }); } else { @@ -570,23 +625,23 @@ public void onSuccess(CloudInverterDeviceBean cloudInverterDeviceBean) { //1锛氳繛鎺ヤ腑,2锛氭晠闅�,3锛氳繍琛�,4锛氱绾�,6:閫嗗彉鍣ㄨ繛涓嶄笂浜�(鑷畾涔�) if (cloudInverterDeviceBean == null) { - uniCallbackData(null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); + uniCallbackData(type, null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); return; } if (cloudInverterDeviceBean.getDeviceStatus() != 3) { - uniCallbackData(null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); + uniCallbackData(type, null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); return; } //4:杩愯 HdlOtaLogic.getInstance().upgradeDeviceFirmware(deviceOidId, firmwareVersionId, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); @@ -594,7 +649,7 @@ @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -609,23 +664,23 @@ public void onSuccess(CloudInverterDeviceBean cloudInverterDeviceBean) { //1锛氳繛鎺ヤ腑,2锛氭晠闅�,3锛氳繍琛�,4锛氱绾�,6:閫嗗彉鍣ㄨ繛涓嶄笂浜�(鑷畾涔�) if (cloudInverterDeviceBean == null) { - uniCallbackData(null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); + uniCallbackData(type, null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); return; } if (cloudInverterDeviceBean.getDeviceStatus() != 3) { - uniCallbackData(null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); + uniCallbackData(type, null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); return; } //4:杩愯 HdlOtaLogic.getInstance().upgradeDeviceFirmware(deviceOidId, firmwareVersionId, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); @@ -633,7 +688,7 @@ @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -645,17 +700,17 @@ * 鍚戜簯绔幏鍙栥�愬綋鍓嶈澶囬┍鍔ㄣ�戝垪琛� * 鍓嶆彁鏉′欢:璁惧鑷姩涓婃姤oid淇℃伅缁欎簯绔� */ - private void uniGetCurrentGatewayDrivers(Object data, DCUniMPJSCallback callback) { + private void uniGetCurrentGatewayDrivers(String type, Object data, DCUniMPJSCallback callback) { String deviceOid = getKeyValue("oid", getKeyValue("data", data)); HdlOtaLogic.getInstance().getCurrentGatewayDrivers(deviceOid, new CloudCallBeak<List<GatewayDriverBean>>() { @Override public void onSuccess(List<GatewayDriverBean> obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -664,18 +719,18 @@ * 鍚戜簯绔幏鍙栥�愯澶囨柊椹卞姩銆戝垪琛� * 鍓嶆彁鏉′欢:瑕侀�氳繃骞冲彴杞欢涓婁紶鏂伴┍鍔� */ - private void uniGetNewGatewayDrivers(Object data, DCUniMPJSCallback callback) { + private void uniGetNewGatewayDrivers(String type, Object data, DCUniMPJSCallback callback) { String driveCode = getKeyValue("driveCode", getKeyValue("data", data));//椹卞姩缂栧彿鎴栭┍鍔ㄥ悕绉� String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//椹卞姩绫诲瀷id HdlOtaLogic.getInstance().getNewGatewayDrivers(driveCode, osImageId, new CloudCallBeak<CloudGatewayDriversBean>() { @Override public void onSuccess(CloudGatewayDriversBean obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -683,11 +738,11 @@ /** * 鑾峰彇銆愯澶囨湰鍦伴┍鍔ㄣ�戝垪琛� */ - private void uniGetLocalDrivers(Object data, DCUniMPJSCallback callback) { + private void uniGetLocalDrivers(String type, Object data, DCUniMPJSCallback callback) { try { String driveCode = getKeyValue("driveCode", getKeyValue("data", data));//椹卞姩缂栧彿鎴栭┍鍔ㄥ悕绉� - String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//椹卞姩绫诲瀷id - String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//椹卞姩绫诲瀷id +// String osImageId = getKeyValue("osImageId", getKeyValue("data", data));//椹卞姩绫诲瀷id +// String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//椹卞姩绫诲瀷id List<GatewayDriverBean> list = new ArrayList<>(); String driverFileList = HdlFileLogic.getInstance().getDriveRootPath(); File file = new File(driverFileList); @@ -706,10 +761,10 @@ } } if (callback != null) { - this.uniCallbackData(list, callback); + this.uniCallbackData(type, list, callback); } } catch (Exception exception) { - this.uniCallbackData(new ArrayList<>(), callback); + this.uniCallbackData(type, new ArrayList<>(), callback); } } @@ -717,13 +772,13 @@ /** * 鍚戜簯绔彂璧枫�愯澶囬┍鍔ㄤ笅杞姐�戞寚浠� */ - private void uniGatewayDriverDownload(Object data, DCUniMPJSCallback callback) { + private void uniGatewayDriverDownload(String type, Object data, DCUniMPJSCallback callback) { - String deviceOid = getKeyValue("oid", getKeyValue("data", data));//閫嗗彉鍣ㄨ澶噊id +// String deviceOid = getKeyValue("oid", getKeyValue("data", data));//閫嗗彉鍣ㄨ澶噊id String driverCode = getKeyValue("driverCode", getKeyValue("data", data));//椹卞姩缂栫爜 - String imageId = getKeyValue("imageId", getKeyValue("data", data));//椹卞姩闀滃儚id +// String imageId = getKeyValue("imageId", getKeyValue("data", data));//椹卞姩闀滃儚id String version = getKeyValue("version", getKeyValue("data", data));//椹卞姩鐗堟湰 - String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//椹卞姩鐗堟湰id +// String driverVersionId = getKeyValue("driverVersionId", getKeyValue("data", data));//椹卞姩鐗堟湰id String localUrl = getKeyValue("localUrl", getKeyValue("data", data));//鍌ㄥ瓨鍦ㄦ湰鍦伴┍鍔ㄦ枃浠惰矾寰� String url = getKeyValue("url", getKeyValue("data", data));//浜戠涓婃枃浠跺湴鍧� String md5 = getKeyValue("md5", getKeyValue("data", data));//浜戠涓婃枃浠禡D5 @@ -743,11 +798,9 @@ HdlFileLogic.getInstance().deleteFile(drivePathFileName);//涓嬭浇澶辫触锛屽垹闄や笉瀹屾暣椹卞姩鏂囦欢; } if (isBoolean) { - HdlLogLogic.print("鍐欏叆鏂伴┍鍔ㄦ枃浠跺埌鍐呭瓨鎴愬姛.", true); - uniCallbackData(null, 0, "鍐欏叆鏂伴┍鍔ㄦ枃浠跺埌鍐呭瓨鎴愬姛", callback); + uniCallbackData(type, null, 0, "鍐欏叆鏂伴┍鍔ㄦ枃浠跺埌鍐呭瓨鎴愬姛", callback); } else { - HdlLogLogic.print("涓嬭浇椹卞姩鍗囩骇鏂囦欢澶辫触.", true); - uniCallbackData(null, -2, "涓嬭浇椹卞姩鍗囩骇鏂囦欢澶辫触", callback); + uniCallbackData(type, null, -2, "涓嬭浇椹卞姩鍗囩骇鏂囦欢澶辫触", callback); } } }); @@ -756,8 +809,7 @@ @Override public void onFailure(HDLException e) { - HdlLogLogic.print("涓嬭浇椹卞姩鏂囦欢鍒板唴瀛樺け璐�.", true); - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -765,7 +817,7 @@ /** * 鍚戜簯绔彂璧枫�愯澶囬┍鍔ㄣ�戝崌绾TA鎸囦护 */ - private void uniUpgradeGatewayDriver(Object data, DCUniMPJSCallback callback) { + private void uniUpgradeGatewayDriver(String type, Object data, DCUniMPJSCallback callback) { String homeId = UserConfigManage.getInstance().getHomeId(); String deviceMac = getKeyValue("mac", getKeyValue("data", data));//閫嗗彉鍣ㄨ澶噈ac锛堟煡鎵緎ocket锛� @@ -792,7 +844,7 @@ String drivePathFileName = HdlFileLogic.getInstance().getDrivePathFileName(driverCode, version); byte[] data = HdlFileLogic.getInstance().readFileByte(drivePathFileName); if (data == null || data.length == 0) { - uniCallbackData(null, -2, "鏈湴鎵句笉鍒板崌绾ч┍鍔ㄦ枃浠�,璇蜂笅杞藉ソ椹卞姩鏂囦欢,鍐嶉噸鏂板崌绾�.", callback); + uniCallbackData(type, null, -2, "鏈湴鎵句笉鍒板崌绾ч┍鍔ㄦ枃浠�,璇蜂笅杞藉ソ椹卞姩鏂囦欢,鍐嶉噸鏂板崌绾�.", callback); return; } String md5 = HDLMD5Utils.encodeMD5(data);//缃戝叧椹卞姩闇�瑕� @@ -807,15 +859,14 @@ @Override public void onError(HDLLinkException e) { - HdlLogLogic.print("閫氱煡缁欑綉鍏冲崌绾ч┍鍔ㄦ枃浠跺湴鍧�澶辫触,鏃犳硶鍗囩骇.", true); - uniCallbackData(null, -2, "閫氱煡缁欑綉鍏冲崌绾ч┍鍔ㄦ枃浠跺湴鍧�澶辫触,鏃犳硶鍗囩骇,", callback); + uniCallbackData(type, null, -2, "閫氱煡缁欑綉鍏冲崌绾ч┍鍔ㄦ枃浠跺湴鍧�澶辫触,鏃犳硶鍗囩骇,", callback); } }); } @Override public void onServiceDisconnected(ComponentName name) { - uniCallbackData(null, -2, "鏈湴鏈嶅姟鏈夊紓甯稿け璐�,鏃犳硶鍗囩骇,", callback); + uniCallbackData(type, null, -2, "鏈湴鏈嶅姟鏈夊紓甯稿け璐�,鏃犳硶鍗囩骇,", callback); } }); } else { @@ -826,23 +877,23 @@ public void onSuccess(CloudInverterDeviceBean cloudInverterDeviceBean) { //1锛氳繛鎺ヤ腑,2锛氭晠闅�,3锛氳繍琛�,4锛氱绾�,6:閫嗗彉鍣ㄨ繛涓嶄笂浜�(鑷畾涔�) if (cloudInverterDeviceBean == null) { - uniCallbackData(null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); + uniCallbackData(type, null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); return; } if (cloudInverterDeviceBean.getDeviceStatus() != 3) { - uniCallbackData(null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); + uniCallbackData(type, null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); return; } //4:杩愯 HdlOtaLogic.getInstance().upgradeGatewayDriver(deviceOid, driverVersionId, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); @@ -850,7 +901,7 @@ @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -865,23 +916,23 @@ public void onSuccess(CloudInverterDeviceBean cloudInverterDeviceBean) { //1锛氳繛鎺ヤ腑,2锛氭晠闅�,3锛氳繍琛�,4锛氱绾�,6:閫嗗彉鍣ㄨ繛涓嶄笂浜�(鑷畾涔�) if (cloudInverterDeviceBean == null) { - uniCallbackData(null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); + uniCallbackData(type, null, 6, HDLApp.getInstance().getString(R.string.ota_binding_cloud_upgrade_fails), callback); return; } if (cloudInverterDeviceBean.getDeviceStatus() != 3) { - uniCallbackData(null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); + uniCallbackData(type, null, cloudInverterDeviceBean.getDeviceStatus(), HDLApp.getInstance().getString(R.string.ota_not_cloud_upgrade_fails), callback); return; } //4:杩愯 HdlOtaLogic.getInstance().upgradeGatewayDriver(deviceOid, driverVersionId, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(obj, callback); + uniCallbackData(type, obj, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); @@ -889,7 +940,7 @@ @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -900,15 +951,15 @@ /** * 鍙栨秷涓嬭浇銆愰┍鍔�,鍥轰欢銆戝崌绾ф枃浠� */ - private void uniCancelDownloadingUpgradeFile(Object data, DCUniMPJSCallback callback) { + private void uniCancelDownloadingUpgradeFile(String type, Object data, DCUniMPJSCallback callback) { HdlOtaLogic.getInstance().stopDownloadUpgradeFile(); - uniCallbackData(null, 0, "鍙栨秷涓嬭浇鎴愬姛.", callback); + uniCallbackData(type, null, 0, "鍙栨秷涓嬭浇鎴愬姛.", callback); } /** * 鍙栨秷銆愰┍鍔�,鍥轰欢銆戝崌绾� */ - private void uniCancelUpgrade(Object data, DCUniMPJSCallback callback) { + private void uniCancelUpgrade(String type, Object data, DCUniMPJSCallback callback) { HdlOtaLogic.getInstance().cancelUpgrade("", new LinkCallBack<Boolean>() { @Override public void onSuccess(Boolean obj) { @@ -925,7 +976,7 @@ /** * 寮�鍚湇鍔� */ - private void uniOpenService(Object data, DCUniMPJSCallback callback) { + private void uniOpenService(String type, Object data, DCUniMPJSCallback callback) { HdlOtaLogic.getInstance().startLocalService(new ServiceConnection() { @Override public void onServiceConnected(ComponentName name, IBinder service) { @@ -941,7 +992,7 @@ /** * 鍏抽棴鏈嶅姟 */ - private void uniCloseService(Object data, DCUniMPJSCallback callback) { + private void uniCloseService(String type, Object data, DCUniMPJSCallback callback) { HdlOtaLogic.getInstance().unLocalService(); } @@ -973,17 +1024,17 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniClearInverterHomeId(Object data, DCUniMPJSCallback callback) { + private void uniClearInverterHomeId(String type, Object data, DCUniMPJSCallback callback) { String mac = getKeyValue("mac", getKeyValue("data", data)); HdlDeviceLogic.getInstance().clearInverterHomeId(mac, new LinkCallBack<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(null, callback); + uniCallbackData(type, null, callback); } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -994,7 +1045,7 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniUploadDataToCloud(Object data, DCUniMPJSCallback callback) { + private void uniUploadDataToCloud(String type, Object data, DCUniMPJSCallback callback) { String mac = getKeyValue("mac", getKeyValue("data", data)); HdlDeviceLogic.getInstance().uploadDataToCloud(UserConfigManage.getInstance().getHomeId(), mac, null); } @@ -1005,19 +1056,20 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniEditInverterTime(Object data, DCUniMPJSCallback callback) { + private void uniEditInverterTime(String type, Object data, DCUniMPJSCallback callback) { String mac = getKeyValue("mac", getKeyValue("data", data)); String date = getKeyValue("date", getKeyValue("data", data)); String time = getKeyValue("time", getKeyValue("data", data)); - HdlDeviceLogic.getInstance().editGatewayTime(mac, date, time, new LinkCallBack<Boolean>() { + String timezone = getKeyValue("timezone", getKeyValue("data", data)); + HdlDeviceLogic.getInstance().editGatewayTime(mac, date, time, timezone, new LinkCallBack<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(true, callback); + uniCallbackData(type, true, callback); } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -1028,19 +1080,19 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniGetInverterTime(Object data, DCUniMPJSCallback callback) { + private void uniGetInverterTime(String type, Object data, DCUniMPJSCallback callback) { String mac = getKeyValue("mac", getKeyValue("data", data)); HdlDeviceLogic.getInstance().getGatewayTime(mac, new LinkCallBack<DeviceTimeBean>() { @Override public void onSuccess(DeviceTimeBean deviceTimeBean) { if (callback != null) { - uniCallbackData(deviceTimeBean, callback); + uniCallbackData(type, deviceTimeBean, callback); } } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -1051,19 +1103,19 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniGetInverterOidList(Object data, DCUniMPJSCallback callback) { + private void uniGetInverterOidList(String type, Object data, DCUniMPJSCallback callback) { String mac = getKeyValue("mac", getKeyValue("data", data)); HdlDeviceLogic.getInstance().getInverterOidList(mac, new LinkCallBack<List<OidBean>>() { @Override public void onSuccess(List<OidBean> list) { if (callback != null) { - uniCallbackData(list, callback); + uniCallbackData(type, list, callback); } } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); @@ -1075,7 +1127,7 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniAddInverterDeviceToCloud(Object data, DCUniMPJSCallback callback) { + private void uniAddInverterDeviceToCloud(String type, Object data, DCUniMPJSCallback callback) { String mac = getKeyValue("mac", getKeyValue("data", data)); String homeId = UserConfigManage.getInstance().getHomeId(); HdlDeviceLogic.getInstance().setGatewayRemoteParam(homeId, mac, new LinkCallBack<Boolean>() { @@ -1086,33 +1138,33 @@ public void onSuccess(Boolean obj) { GatewayBean gatewayBean = HDLLinkLocalGateway.getInstance().getLocalGateway(mac); if (gatewayBean == null) { - uniCallbackData(null, -100, HDLApp.getInstance().getString(R.string.The_gateway_cannot_be_found_locally), callback); + uniCallbackData(type, null, -100, HDLApp.getInstance().getString(R.string.The_gateway_cannot_be_found_locally), callback); return; } HdlDeviceLogic.getInstance().addInverterDeviceToCloud(homeId, mac, gatewayBean.getGatewayType(), gatewayBean.getSid(), gatewayBean.getOid(), gatewayBean.getDevice_name(), new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(null, callback); + uniCallbackData(type, null, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -1123,18 +1175,18 @@ * @param data uni鏁版嵁 * @param callback uni鍥炶皟 */ - private void uniDelInverterDevice(Object data, DCUniMPJSCallback callback) { + private void uniDelInverterDevice(String type, Object data, DCUniMPJSCallback callback) { String deviceId = getKeyValue("deviceId", getKeyValue("data", data)); String homeId = UserConfigManage.getInstance().getHomeId(); HdlDeviceLogic.getInstance().delInverterDevice(homeId, deviceId, new CloudCallBeak<Boolean>() { @Override public void onSuccess(Boolean obj) { - uniCallbackData(null, callback); + uniCallbackData(type, null, callback); } @Override public void onFailure(HDLException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } }); } @@ -1145,17 +1197,20 @@ * * @param callback uni鍥炶皟 */ - private void uniSearchGateway(DCUniMPJSCallback callback) { + private void uniSearchGateway(String type, DCUniMPJSCallback callback) { + + HdlDeviceLogic.getInstance().searchCurrentHomeGateway(new GatewayCallBack() { @Override public void onSuccess(List<GatewayBean> gatewayBeanList) { - uniCallbackData(gatewayBeanList, callback); + uniCallbackData(type, gatewayBeanList, callback); } @Override public void onError(HDLLinkException e) { //鍙戦�佸け璐� - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); + } }); @@ -1166,11 +1221,17 @@ * * @param callback uni鍥炶皟 */ - private void uniGetCurrentHomeLocalAndCloudGatewayList(Object data, DCUniMPJSCallback callback) { + private void uniGetCurrentHomeLocalAndCloudGatewayList(String type, Object data, DCUniMPJSCallback callback) { String homeId = getKeyValue("homeId", getKeyValue("data", data)); HdlDeviceLogic.getInstance().getCurrentHomeLocalAndCloudGatewayList(homeId, new CloudCallBeak<List<GatewayBean>>() { @Override public void onSuccess(List<GatewayBean> list) { + if (list == null || list.size() == 0) { + if (callback != null) { + uniCallbackData(type, list, callback); + } + return; + } GatewayBean gatewayBean = HdlDeviceLogic.getInstance().queryCurrentHomeMainGateway(list, homeId); if (gatewayBean != null) { //杩涙潵浣忓畢璇︽儏閮借涓婁紶涓�娆id鍒楄〃鍒颁簯绔�; @@ -1180,19 +1241,16 @@ BaseEventBus baseEventBus = new BaseEventBus(); baseEventBus.setType(HDLUniMP.UNI_EVENT_REPLY_DEVICE_LIST); baseEventBus.setData(list); - EventBus.getDefault().post(baseEventBus); if (callback != null) { - uniCallbackData(list, callback); + uniCallbackData(type, list, callback); } - - } @Override public void onFailure(HDLException e) { if (callback != null) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); } } }); @@ -1214,7 +1272,7 @@ * @param data modbus鏁版嵁 * @param callback 鍥炶皟 */ - private void sendModBus(Object data, DCUniMPJSCallback callback) { + private void sendModBus(String type, Object data, DCUniMPJSCallback callback) { String tempData = getKeyValue("data", data); if (TextUtils.isEmpty(tempData)) { HdlLogLogic.print("data鍐呭涓虹┖--->", false); @@ -1228,22 +1286,24 @@ // modBusBean.setOid("0101050217BBC400"); // } if (modBusBean.getMac() == null || modBusBean.getData() == null) { - HdlLogLogic.print("鍐呭涓虹┖--->oid--->" + modBusBean.getMac() + " data--->" + Arrays.toString(modBusBean.getData()), false); + HdlLogLogic.print("uni--->鍙戦��--->ModBus--->鍙戦�佸け璐�,(mac鎴栬�卭id)涓虹┖." + Arrays.toString(modBusBean.getData()), true); return; } - + HdlLogLogic.print("uni--->鍙戦��--->ModBus--->" + Arrays.toString(modBusBean.getData()), true); //鍙戦�乵odbus鍗忚 HDLModBusConnect.getInstance().Send(modBusBean.getMac(), modBusBean.getData(), new ModbusCallBack() { @Override public void onSuccess(int[] data) { - Log.d("data", Arrays.toString(data)); - uniCallbackData(data, callback); + uniCallbackData(type, data, callback); + HdlLogLogic.print("uni--->鎺ユ敹--->ModBus--->" + Arrays.toString(data), true); + } @Override public void onError(HDLLinkException e) { - uniCallbackData(null, e.getCode(), e.getMsg(), callback); + uniCallbackData(type, null, e.getCode(), e.getMsg(), callback); + HdlLogLogic.print("uni--->鎺ユ敹--->ModBus--->" + e.getMsg() + "(" + e.getCode() + ")", true); } }); } @@ -1276,7 +1336,7 @@ uniCallBackBaseBean.setData(data); return getJSONObject(uniCallBackBaseBean); } catch (Exception e) { - HdlLogLogic.print("uni--->缁勮uni鍙戦�佹暟鎹牸寮忔湁寮傚父--->" + e.getMessage(), false); + HdlLogLogic.print("uni--->缁勮鍙戦�佺粰uni鏁版嵁鏍煎紡鏈夊紓甯�--->" + e.getMessage(), false); } return new JSONObject(); } @@ -1286,12 +1346,13 @@ * 缁勮uni鍙戦�佹暟鎹牸寮� * 鍥炶皟鏁版嵁缁檜ni灏忕▼搴�,缁熶竴鍦ㄨ繖閲屽鐞�; * + * @param type 璇锋眰鐨勫皬绫� * @param obj 闄勫姞鏁版嵁 * @param code 鐘舵�佺爜-鎴愬姛锛�0锛夋垨鑰呭け璐ワ紙-2锛� * @param msg 缁撴灉鎻忚堪鐨勪俊鎭� * @param callback 鍥炶皟 */ - private void uniCallbackData(Object obj, int code, String msg, DCUniMPJSCallback callback) { + private void uniCallbackData(String type, Object obj, int code, String msg, DCUniMPJSCallback callback) { HDLUniMP.UniCallBackBaseBean uniCallBackBaseBean = new HDLUniMP.UniCallBackBaseBean(); try { uniCallBackBaseBean.setCode(code); @@ -1300,18 +1361,18 @@ if (callback != null) { callback.invoke(getJSONObject(uniCallBackBaseBean)); // callback.invoke(uniCallBackBaseBean); - HdlLogLogic.print("uni--->缁勮uni鍙戦�佹暟鎹牸寮�--->" + new Gson().toJson(uniCallBackBaseBean), false); + HdlLogLogic.print("uni--->鎺ユ敹--->" + type + "--->" + new Gson().toJson(uniCallBackBaseBean), true); } } catch (Exception e) { - HdlLogLogic.print("uni--->缁勮uni鍙戦�佹暟鎹牸寮�--->" + e.getMessage(), false); + HdlLogLogic.print("uni--->鎺ユ敹--->" + type + "--->" + e.getMessage(), false); } } - private void uniCallbackData(Object obj, DCUniMPJSCallback callback) { - uniCallbackData(obj, HDLLinkCode.HDL_SUCCESS.getCode(), HDLLinkCode.HDL_SUCCESS.getMsg(), callback); + private void uniCallbackData(String type, Object obj, DCUniMPJSCallback callback) { + uniCallbackData(type, obj, HDLLinkCode.HDL_SUCCESS.getCode(), HDLLinkCode.HDL_SUCCESS.getMsg(), callback); } /** -- Gitblit v1.8.0