| | |
| | | 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; |
| | |
| | | } |
| | | |
| | | 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(); |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | /** |
| | | * 电站状态概览(安装商) |
| | | */ |
| | | 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 - |
| | |
| | | //重新创建住宅文件夹 |
| | | HdlFileLogic.getInstance().createDirectory(); |
| | | //进去住宅详情搜索一下逆变器列表,目的是建立通讯通道; |
| | | HdlDeviceLogic.getInstance().searchCurrentHomeGateway(null); |
| | | HdlDeviceLogic.getInstance().searchCurrentHomeGateway(houseIdBean.getHomeId(),null); |
| | | } |
| | | |
| | | |
| | |
| | | }); |
| | | } |
| | | |
| | | /** |
| | | * 电站授权安装商(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); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 电站手动交付(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); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | } |
| | | /** |
| | | * 添加推送Token |
| | | * |