mac
2023-12-22 c48f6e1e7f7fc4ca3db8ecadf441d6da942ceb8f
app/src/main/java/com/hdl/photovoltaic/other/HdlResidenceLogic.java
@@ -16,6 +16,7 @@
import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean;
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;
@@ -55,7 +56,7 @@
    }
    /**
     * 获取住宅列表
     * 获取缓存住宅列表
     *
     * @return 住宅列表
     */
@@ -71,7 +72,7 @@
    }
    /**
     * 获取住宅ID列表
     * 获取缓存住宅ID列表
     *
     * @return 住宅ID列表
     */
@@ -93,7 +94,7 @@
    /**
     * 获取住宅列表
     * 获取住宅列表,包括获取住宅id列表,住宅详情列表;
     *
     * @param cloudCallBeak -
     */
@@ -447,6 +448,70 @@
    }
    /**
     * 用户自定义配置温度单位
     *
     * @param homeId        住宅id
     * @param tempType      温度单位类型 (C :摄氏度, F :华氏度)
     * @param cloudCallBeak -
     */
    public void setResidenceTemperatureUnit(String homeId, String tempType, CloudCallBeak<Boolean> cloudCallBeak) {
        String requestUrl = HttpApi.POST_C_F_CustomConfig;
        JsonObject json = new JsonObject();
        json.addProperty("homeId", homeId);
        json.addProperty("tempType", tempType);
        HttpClient.getInstance().requestHttp(requestUrl, json.toString(), new CloudCallBeak<String>() {
            @Override
            public void onSuccess(String str) {
                if (cloudCallBeak != null) {
                    cloudCallBeak.onSuccess(true);
                }
            }
            @Override
            public void onFailure(HDLException e) {
                if (cloudCallBeak != null) {
                    cloudCallBeak.onFailure(e);
                }
            }
        });
    }
    /**
     * 获取用户自定义配置温度单位详情
     *
     * @param homeId        住宅id
     * @param cloudCallBeak -
     */
    public void getResidenceTemperatureUnit(String homeId, CloudCallBeak<String> cloudCallBeak) {
        String requestUrl = HttpApi.POST_C_F_CustomConfigInfo;
        JsonObject json = new JsonObject();
        json.addProperty("homeId", homeId);
        List<MessageBean> list = new ArrayList<>();
        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);
                }
            }
        });
    }
    /**
     * 添加【住宅详情】到本地缓存
     *
@@ -509,6 +574,21 @@
    }
    /**
     * 获取住宅Id对象
     *
     * @param homeId 住宅id
     * @return 列表索引
     */
    public HouseIdBean getHouseId(String homeId) {
        for (int i = 0; i < houseIdList.size(); i++) {
            if (houseIdList.get(i).getHomeId().equals(homeId)) {
                return houseIdList.get(i);
            }
        }
        return null;
    }
    /**
     * 切换住宅
     *
     * @param houseIdBean 住宅Id对象
@@ -538,7 +618,35 @@
        //重新创建住宅文件夹
        HdlFileLogic.getInstance().createDirectory();
        //进去住宅详情搜索一下逆变器列表,目的是建立通讯通道;
        HdlDeviceLogic.getInstance().searchGateway(null);
        HdlDeviceLogic.getInstance().searchCurrentHomeGateway(null);
    }
    /**
     * 电站数据(统计)
     *
     * @param homeId 住宅id
     */
    public void getResidenceInverterAllInfo(String homeId, CloudCallBeak<Bitmap> cloudCallBeak) {
        String requestUrl = HttpApi.POST_inverter_allInfo;
        JsonObject json = new JsonObject();
        json.addProperty("homeId", homeId);
        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);
                }
            }
        });
    }
    static class HouseBeanClass {