app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/other/HdlMqttLogic.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/src/main/java/com/hdl/photovoltaic/config/UserConfigManage.java
@@ -47,6 +47,8 @@ private String homeId; //是否登录状态 private boolean isLogin; //本地通讯秘钥 private String localSecret; //是否是B端账号登录 private boolean isB_account; @@ -156,6 +158,14 @@ isB_account = b; } public String getLocalSecret() { return localSecret == null ? "" : localSecret; } public void setLocalSecret(String localSecret) { this.localSecret = localSecret; } /** * 当前住宅 */ app/src/main/java/com/hdl/photovoltaic/internet/api/HttpApi.java
@@ -1,9 +1,7 @@ package com.hdl.photovoltaic.internet.api; public class HttpApi { /** * -----用户管理--------- */ //region -----用户管理--------- //获取账号区域信息 public static final String POST_RegionByUserAccount = "/smart-footstone/region/regionByUserAccount"; //登录接口 @@ -28,10 +26,8 @@ public static final String POST_GET_IMAGE_URL = "/home-wisdom/app/images/get_image_url"; //退出登录 public static final String POST_GET_IMAGE_LOGOUT = "basis-footstone/mgmt/user/oauth/logout"; /** * ------电站管理(住宅)-------- */ //endregion //region -----电站管理(住宅)--------- //电站列表 public static final String POST_PowerStation_List = "/home-wisdom/app/powerStation/page"; //电站创建 @@ -42,10 +38,9 @@ public static final String POST_PowerStation_Info = "/home-wisdom/app/powerStation/info"; //电站编辑 public static final String POST_PowerStation_Edit = "/home-wisdom/app/powerStation/edit"; //endregion /** * ------设备管理-------- */ //region -----设备管理--------- //添加逆变器 public static final String POST_Device_Add = "/home-wisdom/app/device/independentRegister"; //获取逆变器列表 @@ -56,6 +51,9 @@ public static final String POST_Device_ChildDevices_List = "/home-wisdom/app/powerStation/childDevices"; //全量更新OID public static final String POST_Device_Oid = "/home-wisdom/program/device/oid/add"; //获取逆变器(获取设备远程通讯信息) public static final String POST_Device_remoteInfo = "/home-wisdom/program/device/remoteInfo"; //endregion } app/src/main/java/com/hdl/photovoltaic/other/HdlDeviceLogic.java
@@ -4,6 +4,7 @@ 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.UserConfigManage; import com.hdl.photovoltaic.internet.HttpClient; @@ -24,6 +25,8 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; import io.reactivex.rxjava3.disposables.Disposable; /** * 设备逻辑的界面 @@ -85,13 +88,13 @@ /** * 获取逆变器列表 * * @param inverterDeviceBean 逆变器对象 * @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() { app/src/main/java/com/hdl/photovoltaic/other/HdlMqttLogic.java
New file @@ -0,0 +1,79 @@ package com.hdl.photovoltaic.other; import com.google.gson.Gson; 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.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.CloudInverterChildDeviceBean; import java.lang.reflect.Type; import java.util.List; import io.reactivex.rxjava3.disposables.Disposable; /** * mqtt的逻辑 */ public class HdlMqttLogic { private static volatile HdlMqttLogic sHdlMqttLogic; /** * 获取当前对象 * * @return HdlAccountLogic */ public static synchronized HdlMqttLogic getInstance() { if (sHdlMqttLogic == null) { synchronized (HdlMqttLogic.class) { if (sHdlMqttLogic == null) { sHdlMqttLogic = new HdlMqttLogic(); } } } return sHdlMqttLogic; } /** * 获取逆变器(获取设备远程通讯信息) * * @param homeId 住宅Id * @param spk spk * @param mac 设备mac * @param cloudCallBeak 回调 */ public void getDeviceRemoteInfo(String homeId, String spk, String mac, CloudCallBeak<String> cloudCallBeak) { String requestUrl = HttpApi.POST_Device_remoteInfo; JsonObject json = new JsonObject(); json.addProperty("homeId", homeId); json.addProperty("spk", spk); json.addProperty("mac", mac); HttpClient.getInstance().requestHttp(requestUrl, json.toString(), true, true, new BaseSuccessFailureCallBeak() { @Override public void onSuccess(HttpResponsePack httpResponsePack) { // if (httpResponsePack != null && httpResponsePack.getData() != null) { // Gson gson = new Gson(); // String json = gson.toJson(httpResponsePack.getData()); // Type typeOfT = new TypeToken<List<CloudInverterChildDeviceBean>>() { // }.getType(); // if (cloudCallBeak != null) { // cloudCallBeak.onSuccess("list"); // } // } } @Override public void onFailure(Exception exception) { if (cloudCallBeak != null) { cloudCallBeak.onFailure(exception); } } }); } } app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
@@ -12,6 +12,10 @@ import com.hdl.photovoltaic.listener.CloudCallBeak; import com.hdl.photovoltaic.ui.bean.HouseInfoBean; import com.hdl.photovoltaic.ui.bean.HouseIdBean; 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.config.HDLLinkConfig; import java.util.ArrayList; import java.util.List; @@ -502,21 +506,44 @@ /** * 切换住宅 * * @param homeId 住宅id * @param houseIdBean 住宅Id对象 */ public Boolean switchHouse(String homeId) { public void switchHouse(HouseIdBean houseIdBean) { String oidHomeId = UserConfigManage.getInstance().getHomeId(); HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentHomeRootPath()); UserConfigManage.getInstance().setHomeId(homeId); HdlFileLogic.getInstance().createDirectory(); HdlThreadLogic.runThread(new Runnable() { @Override public void run() { //搜索一下住宅设备 if (houseIdBean.getHomeId().equals(oidHomeId)) { return; } }, null, null); return true; //删除旧的住宅文件夹 HdlFileLogic.getInstance().deleteDirectory(HdlFileLogic.getInstance().getCurrentHomeRootPath()); //重新设置住宅id UserConfigManage.getInstance().setHomeId(houseIdBean.getHomeId()); //重新设置本地通讯秘钥 UserConfigManage.getInstance().setLocalSecret(houseIdBean.getLocalSecret()); //重新创建住宅文件夹 HdlFileLogic.getInstance().createDirectory(); //配置本地通信的信息 initLocalLinkSdk(); HdlDeviceLogic.getInstance().searchGateway(new GatewayCallBack() { @Override public void onSuccess(List<GatewayBean> gatewayBeanList) { } @Override public void onError(HDLLinkException e) { } }); } /** * 配置本地通信的信息(tcp通信用到) */ private void initLocalLinkSdk() { HDLLinkConfig.getInstance().setHomeId(UserConfigManage.getInstance().getHomeId()); HDLLinkConfig.getInstance().setLocalSecret(UserConfigManage.getInstance().getLocalSecret()); } app/src/main/java/com/hdl/photovoltaic/ui/bean/HouseIdBean.java
@@ -10,6 +10,7 @@ private String power;//发电功率 private String todayElectricity;//今天发电量 private int powerStationStatus;//电站状态(电站状态 1:正常(运行),2:离线,3:连接中,4:故障) private String localSecret;//本地通讯秘钥 public String getHomeId() { return homeId == null ? "" : homeId; @@ -66,5 +67,12 @@ public void setPowerStationStatus(int powerStationStatus) { this.powerStationStatus = powerStationStatus; } public String getLocalSecret() { return localSecret == null ? "" : localSecret; } public void setLocalSecret(String localSecret) { this.localSecret = localSecret; } } app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListFragment.java
@@ -104,7 +104,7 @@ public void onClick(int position, HouseIdBean houseIdBean) { //点击住宅详情 HdlLogLogic.print("====点击住宅详情" + position); HdlResidenceLogic.getInstance().switchHouse(houseIdBean.getHomeId()); HdlResidenceLogic.getInstance().switchHouse(houseIdBean); String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS + "?homeId=" + houseIdBean.getHomeId(); HdlUniLogic.getInstance().openUniMP(path, null); } app/src/main/java/com/hdl/photovoltaic/uni/HDLUniMP.java
@@ -69,8 +69,6 @@ */ public static class UniCallBackBaseBean implements Serializable { private String path;//打开小程序路径(暂时用不上) private String code;//状态码 private String mes;//信息描述 private String type;//功能类型 @@ -118,14 +116,6 @@ public void setType(String type) { this.type = type; } public String getPath() { return path == null ? "" : path; } public void setPath(String path) { this.path = path; }