wjc
2025-03-10 5800f29b81907bebf493cbc968c6a671439a352d
app/src/main/java/com/hdl/photovoltaic/ui/LoginActivity.java
@@ -2,9 +2,11 @@
import android.content.Intent;
import android.content.res.Configuration;
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
import android.os.LocaleList;
import android.text.Editable;
import android.text.SpannableStringBuilder;
import android.text.TextPaint;
@@ -15,6 +17,7 @@
import android.text.method.PasswordTransformationMethod;
import android.text.style.ClickableSpan;
import android.text.style.StyleSpan;
import android.util.DisplayMetrics;
import android.view.View;
import android.widget.TextView;
@@ -31,8 +34,10 @@
import com.hdl.photovoltaic.HDLApp;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.config.ConstantManage;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivityHomeLoginBinding;
import com.hdl.photovoltaic.other.HdlCommonLogic;
import com.hdl.photovoltaic.other.HdlResidenceLogic;
import com.hdl.photovoltaic.ui.account.ChangePassword;
import com.hdl.photovoltaic.ui.account.RegisterAccountActivity;
@@ -45,12 +50,14 @@
import com.hdl.photovoltaic.ui.me.WebActivity;
import com.hdl.photovoltaic.utils.AppManagerUtils;
import com.hdl.photovoltaic.utils.LocalManageUtil;
import com.hdl.photovoltaic.utils.SharedPreUtils;
import com.hdl.photovoltaic.utils.TimeUtils;
import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
import com.hdl.photovoltaic.widget.ListDialog;
import com.hdl.photovoltaic.widget.adapter.ListDialogAdapter;
import java.util.List;
import java.util.Locale;
/**
 * 登录的界面
@@ -173,6 +180,14 @@
//        viewBinding.homeLoginPasswordEt.setText(pws);
            checkClearIconShowOrNot(viewBinding.homeLoginAccountEt.getText().toString());
            isLoginTextViewEnabled();
            if (UserConfigManage.getInstance().isBAccount()) {
                boolean is_Authorization = SharedPreUtils.getBoolean("isAuthorization");
                if (!is_Authorization) {
                    //2025年03月03日14:45:17 杨涛要求b端账号需要检验权限
                    HdlThreadLogic.toast(_mActivity, getString(R.string.forbidden_login));
                }
            }
        } catch (Exception ignored) {
        }
    }
@@ -275,11 +290,11 @@
                boolean isSelected = UserConfigManage.getInstance().isAcceiptPolicy();
                if (!isSelected) {
                    //隐私协议提示
                    getDialog();
                    getAcceiptPolicyDialog();
                    return;
                }
                //登录
                login(account, password);
                loginAccount(account, password);
            }
@@ -321,7 +336,7 @@
     * @param account  账号
     * @param password 密码
     */
    private void login(String account, String password) {
    private void loginAccount(String account, String password) {
        showLoading(getString(R.string.home_login_be_logging_in));
        HdlAccountLogic.getInstance().regionByAccount(account, new CloudCallBeak<HDLUserRegionBean>() {
            @Override
@@ -336,11 +351,31 @@
                    @Override
                    public void onSuccess(HDLLoginBean obj) {
                        if (UserConfigManage.getInstance().isBAccount()) {
                            restoreButtonStyleToInitializeState();
                            //安装商跳转界面
                            startActivity(BPowerStationActivity.class);
                            hideLoading();
                            finish();
                            HdlAccountLogic.getInstance().getCompanyParterMenu_B(new CloudCallBeak<Boolean>() {
                                @Override
                                public void onSuccess(Boolean isBoolean) {
                                    SharedPreUtils.putBoolean("isAuthorization", isBoolean);
                                    if (isBoolean) {
                                        //2025年03月03日14:45:17 杨涛要求b端账号需要检验权限
                                        restoreButtonStyleToInitializeState();
                                        //安装商跳转界面
                                        startActivity(BPowerStationActivity.class);
                                        hideLoading();
                                        finish();
                                    } else {
                                        hideLoading();
                                        HdlThreadLogic.toast(_mActivity, getString(R.string.forbidden_login));
                                    }
                                }
                                @Override
                                public void onFailure(HDLException e) {
                                    SharedPreUtils.putBoolean("isAuthorization", false);
                                    hideLoading();
                                    HdlThreadLogic.toast(_mActivity, e.getMsg() + "(" + e.getCode() + ")");
                                }
                            });
                        } else {
                            //C端需要先获取电站列表;
                            HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() {
@@ -427,7 +462,7 @@
            return;
        }
        //符合密码规则后隐藏错误提示;
        viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_FF5A5A5A));
//        viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_FF5A5A5A));
        viewBinding.homeLoginPasswordTextErrorTv.setText("");
    }
@@ -457,19 +492,19 @@
     */
    private boolean isLocalCheckAccountAndPassword(String account, String password) {
        if (TextUtils.isEmpty(account)) {
            viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_D34545));
//            viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_D34545));
            viewBinding.homeLoginAccountTextErrorTv.setText(R.string.home_login_error_account_null);
            return false;
        }
        if (TextUtils.isEmpty(password)) {
            viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_D34545));
//            viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_D34545));
            viewBinding.homeLoginPasswordTextErrorTv.setText(R.string.home_login_error_password_null);
            return false;
        }
        if (password.length() < 6 || password.length() > 16) {
            viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_D34545));
//            viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_D34545));
            viewBinding.homeLoginPasswordTextErrorTv.setText(R.string.home_login_error_6_16_str);
            return false;
        }
@@ -484,9 +519,9 @@
        HdlThreadLogic.runMainThread(new Runnable() {
            @Override
            public void run() {
                viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_E1E1E1));
//                viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_E1E1E1));
                viewBinding.homeLoginAccountTextErrorTv.setText("");
                viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_E1E1E1));
//                viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_E1E1E1));
                viewBinding.homeLoginPasswordTextErrorTv.setText("");
            }
        }, null, null);
@@ -541,7 +576,7 @@
                        //设置字体颜色
                        ds.setColor(getResources().getColor(R.color.text_E6FFFFFF, null));
                        // 去掉下划线
                        ds.setUnderlineText(true);
                        ds.setUnderlineText(!UserConfigManage.getInstance().isZh());
                    }
@@ -564,7 +599,7 @@
                        //设置字体颜色
                        ds.setColor(getResources().getColor(R.color.text_E6FFFFFF, null));
                        // 去掉下划线
                        ds.setUnderlineText(true);
                        ds.setUnderlineText(!UserConfigManage.getInstance().isZh());
                    }
@@ -587,7 +622,7 @@
    /**
     * 弹窗
     */
    private void getDialog() {
    private void getAcceiptPolicyDialog() {
        ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(_mActivity);
        confirmationCancelDialog.show();
@@ -604,7 +639,7 @@
                confirmationCancelDialog.dismiss();
                String account = viewBinding.homeLoginAccountEt.getText().toString().replace(" ", "");
                String password = viewBinding.homeLoginPasswordEt.getText().toString().replace(" ", "");
                login(account, password);
                loginAccount(account, password);
            }
        });
        confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() {