mac
2024-03-20 5ca2b601848c62607d88fee5afdae6af80f6eea7
app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseListEditActivity.java
@@ -16,12 +16,16 @@
import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch;
import com.hdl.photovoltaic.enums.ShowErrorMode;
import com.hdl.photovoltaic.listener.CloudCallBeak;
import com.hdl.photovoltaic.listener.LinkCallBack;
import com.hdl.photovoltaic.other.HdlCommonLogic;
import com.hdl.photovoltaic.other.HdlDeviceLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.other.HdlThreadLogic;
import com.hdl.photovoltaic.ui.bean.CloudInverterDeviceBean;
import com.hdl.photovoltaic.ui.bean.HouseIdBean;
import com.hdl.photovoltaic.ui.newC.adapter.HouseListAdapter;
import com.hdl.photovoltaic.widget.DelayedConfirmationCancelDialog;
import com.hdl.sdk.link.common.exception.HDLLinkException;
import com.hdl.sdk.link.core.bean.eventbus.BaseEventBus;
import org.greenrobot.eventbus.EventBus;
@@ -132,22 +136,23 @@
                    delayedConfirmationCancelDialog.setYesOnclickListener(new DelayedConfirmationCancelDialog.onYesOnclickListener() {
                        @Override
                        public void Confirm() {
                            //删除住宅
                            HdlResidenceLogic.getInstance().delResidence(houseIdBean.getHomeId(), new CloudCallBeak<Boolean>() {
                                @Override
                                public void onSuccess(Boolean obj) {
                                    HdlResidenceLogic.getInstance().delHouseId(houseIdBean.getHomeId());
                                    initData();//初始化缓存数据
                                    houseListAdapter.setList(houseListBeanIDList);//重新刷新列表
                                    nullDataUpdateUi(houseListBeanIDList);//检测数据是否为空
                                    delayedConfirmationCancelDialog.dismiss();
                                }
                                @Override
                                public void onFailure(HDLException e) {
                                    HdlThreadLogic.toast(_mActivity, e);
                                }
                            });
                            delayedConfirmationCancelDialog.dismiss();
                            delete(houseIdBean.getHomeId());
//                            //删除住宅
//                            HdlResidenceLogic.getInstance().delResidence(houseIdBean.getHomeId(), new CloudCallBeak<Boolean>() {
//                                @Override
//                                public void onSuccess(Boolean obj) {
//                                    HdlResidenceLogic.getInstance().delHouseId(houseIdBean.getHomeId());
//                                    initData();//初始化缓存数据
//                                    houseListAdapter.setList(houseListBeanIDList);//重新刷新列表
//                                    nullDataUpdateUi(houseListBeanIDList);//检测数据是否为空
//                                }
//
//                                @Override
//                                public void onFailure(HDLException e) {
//                                    HdlThreadLogic.toast(_mActivity, e);
//                                }
//                            });
                        }
                    });
                    delayedConfirmationCancelDialog.setNoOnclickListener(new DelayedConfirmationCancelDialog.onNoOnclickListener() {
@@ -177,6 +182,65 @@
    }
    /**
     * 删除电站,逆变器
     * (先获取云端上逆变器列表,开始删除电站,同时,向逆变器发送初始化逆变器指令)
     *
     * @param homeId 电站id
     */
    private void delete(String homeId) {
        HdlDeviceLogic.getInstance().getCloudInverterDeviceList(homeId, new CloudCallBeak<List<CloudInverterDeviceBean>>() {
            @Override
            public void onSuccess(List<CloudInverterDeviceBean> list) {
                deleteResidence(homeId);
                if (list != null) {
                    for (int i = 0; i < list.size(); i++) {
                        CloudInverterDeviceBean cloudInverterDeviceBean = list.get(i);
                        HdlDeviceLogic.getInstance().initializeGateway(cloudInverterDeviceBean.getOsn(), new LinkCallBack<Boolean>() {
                            @Override
                            public void onSuccess(Boolean obj) {
                            }
                            @Override
                            public void onError(HDLLinkException e) {
                            }
                        });
                    }
                }
            }
            @Override
            public void onFailure(HDLException e) {
                deleteResidence(homeId);
            }
        });
    }
    /**
     * 删除电站
     *
     * @param homeId 电站id
     */
    private void deleteResidence(String homeId) {
        //删除住宅
        HdlResidenceLogic.getInstance().delResidence(homeId, new CloudCallBeak<Boolean>() {
            @Override
            public void onSuccess(Boolean obj) {
                HdlResidenceLogic.getInstance().delHouseId(homeId);
                initData();//初始化缓存数据
                houseListAdapter.setList(houseListBeanIDList);//重新刷新列表
                nullDataUpdateUi(houseListBeanIDList);//检测数据是否为空
            }
            @Override
            public void onFailure(HDLException e) {
                HdlThreadLogic.toast(_mActivity, e);
            }
        });
    }
    /**
     * 刷新UI
     *
     * @param isRefreshing 表示是下拉刷新的