From 3ccff7173fb73322f7785d8eaedc90a1b5d8765d Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期二, 10 十二月 2024 22:44:03 +0800 Subject: [PATCH] 2024年12月10日22:43:59 --- app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java | 197 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 177 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java index e404185..67f887a 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java @@ -8,27 +8,18 @@ import com.google.gson.Gson; import com.google.gson.JsonObject; import com.hdl.linkpm.sdk.core.exception.HDLException; -import com.hdl.photovoltaic.bean.HttpResponsePack; import com.hdl.photovoltaic.config.AppConfigManage; import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.internet.HttpClient; import com.hdl.photovoltaic.internet.api.HttpApi; -import com.hdl.photovoltaic.listener.BaseSuccessFailureCallBeak; import com.hdl.photovoltaic.listener.CloudCallBeak; -import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean; import com.hdl.photovoltaic.ui.bean.ContactBean; -import com.hdl.photovoltaic.ui.bean.DeviceBean; import com.hdl.photovoltaic.ui.bean.HouseInfoBean; import com.hdl.photovoltaic.ui.bean.HouseIdBean; -import com.hdl.photovoltaic.ui.bean.MessageBean; -import com.hdl.sdk.link.common.exception.HDLLinkException; -import com.hdl.sdk.link.core.bean.gateway.GatewayBean; -import com.hdl.sdk.link.core.callback.GatewayCallBack; +import com.hdl.photovoltaic.ui.bean.StatusOverviewBean; import com.hdl.sdk.link.core.config.HDLLinkConfig; import com.hdl.sdk.link.core.utils.mqtt.MqttRecvClient; -import com.hdl.sdk.link.gateway.HDLLinkLocalGateway; -import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -77,10 +68,10 @@ } public void clearHouseList() { - if (houseInfoList == null) { - return; + if (mHouseIdList != null && mHouseIdList.size() > 0) { + mHouseIdList.clear(); } - if (houseInfoList.size() > 0) { + if (houseInfoList != null && houseInfoList.size() > 0) { houseInfoList.clear(); } } @@ -581,6 +572,37 @@ } /** + * 鐢电珯鐘舵�佹瑙�(瀹夎鍟�) + */ + public void getStatusOverview(CloudCallBeak<StatusOverviewBean> cloudCallBeak) { + String requestUrl = HttpApi.POST_statusOverview; + JsonObject json = new JsonObject(); +// json.addProperty("zoneType", zoneType);//鍖哄煙 + HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { + @Override + public void onSuccess(String jsonStr) { + if (TextUtils.isEmpty(jsonStr)) { + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(new StatusOverviewBean()); + } + } + Gson gson = new Gson(); + StatusOverviewBean statusOverviewBean = gson.fromJson(jsonStr, StatusOverviewBean.class); + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(statusOverviewBean); + } + } + + @Override + public void onFailure(HDLException e) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(e); + } + } + }); + } + + /** * 娣诲姞浣忓畢(鐢电珯)鍒颁簯绔� * * @param houseInfoBean - @@ -837,13 +859,16 @@ /** * 鍒囨崲浣忓畢 * - * @param houseIdBean 浣忓畢Id瀵硅薄 + * @param houseIdBean 浣忓畢Id瀵硅薄 + * @param checkStationId 琛ㄧず鏄惁鍚姩妫�楠岀數绔橧d鐨勯�昏緫锛坱rue琛ㄧず妫�娴�,鍚﹀垯涓嶆楠岋級 */ - public void switchHouse(HouseIdBean houseIdBean) { + public void switchHouse(HouseIdBean houseIdBean, boolean checkStationId) { String homeId = UserConfigManage.getInstance().getHomeId(); - if (houseIdBean.getHomeId().equals(homeId)) { - HdlLogLogic.print("鐐瑰嚮鍚屼竴涓綇瀹�--->" + homeId); - return; + if (checkStationId) { + if (houseIdBean.getHomeId().equals(homeId)) { + HdlLogLogic.print("鐐瑰嚮鍚屼竴涓綇瀹�--->" + homeId); + return; + } } //璁㈤槄瑕佸叏閮ㄥ彇娑� if (MqttRecvClient.getInstance() != null) { @@ -865,7 +890,7 @@ //閲嶆柊鍒涘缓浣忓畢鏂囦欢澶� HdlFileLogic.getInstance().createDirectory(); //杩涘幓浣忓畢璇︽儏鎼滅储涓�涓嬮�嗗彉鍣ㄥ垪琛�,鐩殑鏄缓绔嬮�氳閫氶亾; - HdlDeviceLogic.getInstance().searchCurrentHomeGateway(null); + HdlDeviceLogic.getInstance().searchCurrentHomeGateway(houseIdBean.getHomeId(), null); } @@ -874,7 +899,8 @@ * * @param homeId 浣忓畢id */ - public void getResidenceInverterAllInfo(String homeId, CloudCallBeak<Bitmap> cloudCallBeak) { + public void getResidenceInverterAllInfo(String + homeId, CloudCallBeak<Bitmap> cloudCallBeak) { String requestUrl = HttpApi.POST_inverter_allInfo; JsonObject json = new JsonObject(); json.addProperty("homeId", homeId); @@ -896,6 +922,137 @@ }); } + /** + * 鐢电珯鎺堟潈瀹夎鍟嗭紙C绔級 + * 鎻忚堪锛氫氦浠樺悗鐨勪綇瀹咃紝C绔敤鎴峰彲浠ュ紑鍚巿鏉冨悗瀹夎鍟嗗彲浠ョ户缁皟璇曠數绔� + * + * @param homeId 鐢电珯id + * @param debugPerm 鎺堟潈鐘舵�侊紙true鍙互缁х画璋冭瘯锛� + * @param cloudCallBeak - + */ + public void homeUpdateDebugPerm(String homeId, boolean debugPerm, CloudCallBeak< + Boolean> cloudCallBeak) { + String requestUrl = HttpApi.C_POST_HOME_UPDATEDEBUGPERM; + JsonObject json = new JsonObject(); + json.addProperty("homeId", homeId); + json.addProperty("debugPerm", debugPerm); +// json.addProperty("zoneType", memberBean.getId());//鍖哄煙 + + HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { + @Override + public void onSuccess(String jsonStr) { + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(true); + } + } + + @Override + public void onFailure(HDLException e) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(e); + } + } + }); + + } + + /** + * 鑾峰彇鐢电珯浜や粯浜岀淮鐮侊紙B绔級 + * 鎻忚堪锛氬畨瑁呭晢鐢电珯鐨勪氦浠樹簩缁寸爜 + * + * @param homeId 鐢电珯id + * @param cloudCallBeak - + */ + public void getDeliveryUrlQrcode(String homeId, CloudCallBeak<String> cloudCallBeak) { + String requestUrl = HttpApi.POST_getDeliveryUrlQrcode; + JsonObject json = new JsonObject(); + json.addProperty("homeId", homeId); +// json.addProperty("zoneType", memberBean.getId());//鍖哄煙 + + HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { + @Override + public void onSuccess(String jsonStr) { + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(jsonStr); + } + } + + @Override + public void onFailure(HDLException e) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(e); + } + } + }); + + } + + + /** + * 鑾峰彇鐢电珯浜や粯URl锛圔绔級 + * 鎻忚堪锛氬畨瑁呭晢鐢电珯鐨勪氦浠楿Rl + * + * @param homeId 鐢电珯id + * @param cloudCallBeak - + */ + public void getDeliveryUrl(String homeId, CloudCallBeak<String> cloudCallBeak) { + String requestUrl = HttpApi.POST_getDeliveryUrl; + JsonObject json = new JsonObject(); + json.addProperty("homeId", homeId); +// json.addProperty("zoneType", memberBean.getId());//鍖哄煙 + + HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { + @Override + public void onSuccess(String jsonStr) { + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(jsonStr); + } + } + + @Override + public void onFailure(HDLException e) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(e); + } + } + }); + + } + + + /** + * 鐢电珯鎵嬪姩浜や粯(B绔�) + * 鎻忚堪锛氬畨瑁呭晢鎵嬪姩浜や粯鐢电珯缁欐寚瀹氱殑C绔处鍙� + * + * @param homeId 鐢电珯id + * @param account C绔处鍙� + * @param cloudCallBeak - + */ + public void getDeliverToAccount(String homeId, String + account, CloudCallBeak<Boolean> cloudCallBeak) { + String requestUrl = HttpApi.POST_deliverToAccount; + JsonObject json = new JsonObject(); + json.addProperty("homeId", homeId); + json.addProperty("account", account);//C绔处鍙� +// json.addProperty("zoneType", memberBean.getId());//鍖哄煙 + + HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() { + @Override + public void onSuccess(String jsonStr) { + if (cloudCallBeak != null) { + cloudCallBeak.onSuccess(true); + } + } + + @Override + public void onFailure(HDLException e) { + if (cloudCallBeak != null) { + cloudCallBeak.onFailure(e); + } + } + }); + + } /** * 娣诲姞鎺ㄩ�乀oken -- Gitblit v1.8.0