| | |
| | | import com.google.gson.JsonArray; |
| | | import com.google.gson.JsonObject; |
| | | import com.google.gson.reflect.TypeToken; |
| | | import com.hdl.hdlhttp.HxHttp; |
| | | 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.TcpClient; |
| | | import com.hdl.photovoltaic.internet.api.HttpApi; |
| | | import com.hdl.photovoltaic.internet.api.TopicApi; |
| | | import com.hdl.photovoltaic.listener.BaseSuccessFailureCallBeak; |
| | | import com.hdl.photovoltaic.listener.CloudCallBeak; |
| | | import com.hdl.photovoltaic.ui.bean.CloudInverterChildDeviceBean; |
| | |
| | | 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.sdk.link.core.callback.HDLLinkCallBack; |
| | | import com.hdl.sdk.link.gateway.HDLLinkLocalGateway; |
| | | |
| | | import java.lang.reflect.Type; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | import io.reactivex.rxjava3.disposables.Disposable; |
| | | |
| | | /** |
| | | * 设备逻辑的界面 |
| | |
| | | /** |
| | | * 获取逆变器列表 |
| | | * |
| | | * @param inverterDeviceBean 逆变器对象 |
| | | * @param cloudCallBeak 回调 |
| | | * @param homeId 住宅id |
| | | * @param cloudCallBeak 回调 |
| | | */ |
| | | public void getInverterDeviceList(InverterDeviceBean inverterDeviceBean, CloudCallBeak<CloudInverterDeviceBean> cloudCallBeak) { |
| | | public void getInverterDeviceList(String homeId, CloudCallBeak<CloudInverterDeviceBean> cloudCallBeak) { |
| | | String requestUrl = HttpApi.POST_Device_List; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("homeId", UserConfigManage.getInstance().getHomeId()); |
| | | json.addProperty("homeId", homeId); |
| | | // json.addProperty("zoneType", "password");//区域 |
| | | |
| | | HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() { |
| | |
| | | * 全量更新OID |
| | | * |
| | | * @param oidList oid列表 |
| | | * @param cloudCallBeak 回调 |
| | | * @param cloudCallBeak 回调update |
| | | */ |
| | | public void fullRenewalOid(List<OidBean> oidList, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | public void fullUpdateOid(List<OidBean> oidList, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | String requestUrl = HttpApi.POST_Device_ChildDevices_List; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("operationSource", "PROGRAM_ENERGY");// |
| | |
| | | } |
| | | |
| | | |
| | | public void searchGateway(GatewayCallBack gatewayCallBack) |
| | | { |
| | | List<String> spks = new ArrayList<>(); |
| | | spks.add("energy.hdl_inverter"); |
| | | /** |
| | | * 设置网关远程参数 |
| | | * |
| | | * @param mac 设备mac |
| | | * @param cloudCallBeak 回调update |
| | | */ |
| | | public void steGatewayParam(String mac, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | String requestUrl = TopicApi.GATEWAY_SEND_REMOTE_EDIT; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("homeId", UserConfigManage.getInstance().getHomeId()); |
| | | json.addProperty("server_addr", AppConfigManage.getUserRegionUrl()); |
| | | json.addProperty("local_secret", UserConfigManage.getInstance().getLocalSecret()); |
| | | TcpClient.getInstance().sendDataToLinkGateway(mac, true, requestUrl, json, "", new HDLLinkCallBack() { |
| | | @Override |
| | | public void onSuccess(String msg) { |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void onError(HDLLinkException e) { |
| | | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /** |
| | | * 编辑网关参数 |
| | | * |
| | | * @param mac 设备mac |
| | | * @param cloudCallBeak 回调update |
| | | */ |
| | | public void steEditGatewayParam(String mac, CloudCallBeak<Boolean> cloudCallBeak) { |
| | | String requestUrl = TopicApi.GATEWAY_SEND_EDIT; |
| | | JsonObject json = new JsonObject(); |
| | | json.addProperty("master", "true"); |
| | | TcpClient.getInstance().sendDataToLinkGateway(mac, true, requestUrl, json, "", new HDLLinkCallBack() { |
| | | @Override |
| | | public void onSuccess(String msg) { |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void onError(HDLLinkException e) { |
| | | |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 搜索网关列表 |
| | | * |
| | | * @param gatewayCallBack - |
| | | */ |
| | | public void searchGateway(GatewayCallBack gatewayCallBack) { |
| | | List<String> spks = this.getGatewaySpk(); |
| | | //网关搜索 |
| | | HDLLinkLocalGateway.getInstance().refreshGatewayByHomeIdAndSpk(UserConfigManage.getInstance().getHomeId(), spks, true, gatewayCallBack); |
| | | } |
| | | |
| | | /** |
| | | * 获取网关spk列表 |
| | | * |
| | | * @return - |
| | | */ |
| | | private List<String> getGatewaySpk() { |
| | | List<String> spks = new ArrayList<>(); |
| | | spks.add("energy.hdl_inverter"); |
| | | return spks; |
| | | } |
| | | } |