wjc
2024-11-28 3a70ebddb80aa8420af1da25d19ef6b4aea9dc72
app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java
@@ -4,9 +4,7 @@
import android.content.Intent;
import android.os.Bundle;
import android.text.Editable;
import android.text.Spannable;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.TextPaint;
import android.text.TextUtils;
import android.text.TextWatcher;
@@ -15,7 +13,6 @@
import android.text.method.PasswordTransformationMethod;
import android.text.style.ClickableSpan;
import android.text.style.StyleSpan;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
@@ -34,8 +31,6 @@
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivityHomeLoginBinding;
import com.hdl.photovoltaic.listener.LinkCallBack;
import com.hdl.photovoltaic.other.HdlDeviceLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.ui.account.ChangePassword;
import com.hdl.photovoltaic.ui.account.RegisterAccountActivity;
@@ -50,10 +45,8 @@
import com.hdl.photovoltaic.utils.LocalManageUtil;
import com.hdl.photovoltaic.utils.TimeUtils;
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog1;
import com.hdl.photovoltaic.widget.ListDialog;
import com.hdl.photovoltaic.widget.adapter.ListDialogAdapter;
import com.hdl.sdk.link.common.exception.HDLLinkException;
import java.util.List;
@@ -236,91 +229,8 @@
                    getDialog();
                    return;
                }
                showLoading(getString(R.string.home_login_be_logging_in));
                HdlAccountLogic.getInstance().regionByAccount(account, new CloudCallBeak<HDLUserRegionBean>() {
                    @Override
                    public void onSuccess(HDLUserRegionBean obj) {
                        //开发环境
//                        String APP_REGIONURL_TEST = "http://47.114.131.143:27199";
//                        AppConfigManage.setUserRegionUrl(APP_REGIONURL_TEST);
                        //初始化服务域名
                        AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
                        HDLLinkPMUser.getInstance().setUserRegionUrl(AppConfigManage.getUserRegionUrl());
                        HdlAccountLogic.getInstance().loginByPassword(account, password, new ILoginCallBack() {
                            @Override
                            public void onSuccess(HDLLoginBean obj) {
                                if (UserConfigManage.getInstance().isBAccount()) {
                                    restoreButtonStyleToInitializeState();
                                    //安装商跳转界面
                                    startActivity(BPowerStationActivity.class);
                                    hideLoading();
                                    finish();
                                } else {
                                    //C端需要先获取电站列表;
                                    HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
                                        @Override
                                        public void onSuccess(List<HouseIdBean> obj) {
                                            hideLoading();
                                            HdlResidenceLogic.getInstance().setHouseIdList(obj);
                                            restoreButtonStyleToInitializeState();
                                            if (UserConfigManage.getInstance().isBAccount()) {
                                                //安装商跳转界面
                                                startActivity(BPowerStationActivity.class);
                                            } else {
                                                //C端用户跳转界面
                                                startActivity(CPowerStationActivity.class);
                                            }
                                            finish();
                                        }
                                        @Override
                                        public void onFailure(HDLException e) {
                                            hideLoading();
                                            restoreButtonStyleToInitializeState();
                                            if (UserConfigManage.getInstance().isBAccount()) {
                                                //安装商跳转界面
                                                startActivity(BPowerStationActivity.class);
                                            } else {
                                                //C端用户跳转界面
                                                startActivity(CPowerStationActivity.class);
                                            }
                                            finish();
                                        }
                                    });
                                }
                            }
                            @Override
                            public void onFailure(HDLException e) {
                                hideLoading();
                                if (e.getCode() == 10019) {
                                    //用户已经被锁定错误码
                                    try {
                                        if (e.getmExtra() != null) {
                                            if (System.currentTimeMillis() < e.getmExtra().getUnlockTime()) {
                                                long time = e.getmExtra().getUnlockTime() - System.currentTimeMillis();
                                                int minute = Integer.parseInt(TimeUtils.getMinuteTime(time));
                                                HdlThreadLogic.toast(_mActivity, e.getMsg() + getString(R.string.residue) + minute + getString(R.string.minute) + "(" + e.getCode() + ")");
                                            }
                                        }
                                    } catch (Exception ee) {
                                        HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
                                    }
                                } else {
                                    HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
                                }
                            }
                        });
                    }
                    @Override
                    public void onFailure(HDLException e) {
                        hideLoading();
                        HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
                    }
                });
                //登录
                login(account, password);
            }
@@ -351,6 +261,101 @@
                Intent intent = new Intent();
                intent.setClass(LoginActivity.this, ChangePassword.class);
                startActivity(intent);
            }
        });
    }
    /**
     * 登录
     *
     * @param account  账号
     * @param password 密码
     */
    private void login(String account, String password) {
        showLoading(getString(R.string.home_login_be_logging_in));
        HdlAccountLogic.getInstance().regionByAccount(account, new CloudCallBeak<HDLUserRegionBean>() {
            @Override
            public void onSuccess(HDLUserRegionBean obj) {
                //开发环境
//                String APP_REGIONURL_TEST = "http://47.114.131.143:27197";
//                 AppConfigManage.setUserRegionUrl(APP_REGIONURL_TEST);
                //初始化服务域名
                AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
                HDLLinkPMUser.getInstance().setUserRegionUrl(AppConfigManage.getUserRegionUrl());
                HdlAccountLogic.getInstance().loginByPassword(account, password, new ILoginCallBack() {
                    @Override
                    public void onSuccess(HDLLoginBean obj) {
                        if (UserConfigManage.getInstance().isBAccount()) {
                            restoreButtonStyleToInitializeState();
                            //安装商跳转界面
                            startActivity(BPowerStationActivity.class);
                            hideLoading();
                            finish();
                        } else {
                            //C端需要先获取电站列表;
                            HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
                                @Override
                                public void onSuccess(List<HouseIdBean> obj) {
                                    hideLoading();
                                    HdlResidenceLogic.getInstance().setHouseIdList(obj);
                                    restoreButtonStyleToInitializeState();
                                    if (UserConfigManage.getInstance().isBAccount()) {
                                        //安装商跳转界面
                                        startActivity(BPowerStationActivity.class);
                                    } else {
                                        //C端用户跳转界面
                                        startActivity(CPowerStationActivity.class);
                                    }
                                    finish();
                                }
                                @Override
                                public void onFailure(HDLException e) {
                                    hideLoading();
                                    restoreButtonStyleToInitializeState();
                                    if (UserConfigManage.getInstance().isBAccount()) {
                                        //安装商跳转界面
                                        startActivity(BPowerStationActivity.class);
                                    } else {
                                        //C端用户跳转界面
                                        startActivity(CPowerStationActivity.class);
                                    }
                                    finish();
                                }
                            });
                        }
                    }
                    @Override
                    public void onFailure(HDLException e) {
                        hideLoading();
                        if (e.getCode() == 10019) {
                            //用户已经被锁定错误码
                            try {
                                if (e.getmExtra() != null) {
                                    if (System.currentTimeMillis() < e.getmExtra().getUnlockTime()) {
                                        long time = e.getmExtra().getUnlockTime() - System.currentTimeMillis();
                                        int minute = Integer.parseInt(TimeUtils.getMinuteTime(time));
                                        HdlThreadLogic.toast(_mActivity, e.getMsg() + getString(R.string.residue) + minute + getString(R.string.minute) + "(" + e.getCode() + ")");
                                    }
                                }
                            } catch (Exception ee) {
                                HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
                            }
                        } else {
                            HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
                        }
                    }
                });
            }
            @Override
            public void onFailure(HDLException e) {
                hideLoading();
                HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
            }
        });
@@ -543,6 +548,9 @@
                UserConfigManage.getInstance().setAcceiptPolicy(true);
                viewBinding.homeLoginPrivacyCheckIv.setSelected(true);
                confirmationCancelDialog.dismiss();
                String account = viewBinding.homeLoginAccountEt.getText().toString().replace(" ", "");
                String password = viewBinding.homeLoginPasswordEt.getText().toString().replace(" ", "");
                login(account, password);
            }
        });
        confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {