From 8814f3f0828e6ac652a29cc9de9f971fd55bca5b Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 07 五月 2025 14:54:42 +0800
Subject: [PATCH] 2025年05月07日14:54:39

---
 app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java |  102 +++++++++++++++++++++++++++++++++++----------------
 1 files changed, 70 insertions(+), 32 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java b/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
index 2bca9c2..91c829d 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java
@@ -5,18 +5,13 @@
 import android.os.CountDownTimer;
 import android.text.Editable;
 import android.text.InputType;
-import android.text.SpannableStringBuilder;
-import android.text.TextPaint;
 import android.text.TextUtils;
 import android.text.TextWatcher;
 import android.text.method.HideReturnsTransformationMethod;
 import android.text.method.PasswordTransformationMethod;
-import android.text.style.ClickableSpan;
 import android.view.View;
-import android.widget.TextView;
 
 
-import androidx.annotation.NonNull;
 import androidx.appcompat.content.res.AppCompatResources;
 
 import com.hdl.linkpm.sdk.core.exception.HDLException;
@@ -27,10 +22,12 @@
 import com.hdl.photovoltaic.config.AppConfigManage;
 import com.hdl.photovoltaic.config.UserConfigManage;
 import com.hdl.photovoltaic.databinding.ActivityChangePasswordBinding;
+import com.hdl.photovoltaic.enums.VerifyType;
 import com.hdl.photovoltaic.listener.CloudCallBeak;
 import com.hdl.photovoltaic.other.HdlAccountLogic;
 import com.hdl.photovoltaic.other.HdlCommonLogic;
 import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.utils.GPSManagerUtils;
 import com.hdl.photovoltaic.widget.ConfirmationCancelDialog;
 import com.hdl.photovoltaic.widget.ConfirmationTipDialog;
 import com.sahooz.library.countrypicker.Country;
@@ -75,9 +72,28 @@
      * 鍒濆鍖栫晫闈�
      */
     private void initView() {
+        if (UserConfigManage.getInstance().isZh()) {
+            viewBinding.regionAccountTv.setText(getText(R.string.home_chinese_mainland));
+            viewBinding.regionAccountNumberTv.setText("+86");
+        } else {
+            viewBinding.regionAccountTv.setText(getText(R.string.iraq));
+            viewBinding.regionAccountNumberTv.setText("+964");
+        }
         switchPhoneOrMailView();
         try {
             Country.load(this);
+            Country country = null;
+            if (TextUtils.isEmpty(GPSManagerUtils.getInstance().getCountryCode(this))) {
+                //鍐嶆牴鎹郴缁熻瑷�
+                country = Country.getCountryInfo();
+            } else {
+                //鍏堟牴鎹畾浣�
+                country = Country.getLocationCountryInfo(GPSManagerUtils.getInstance().getCountryCode(this));
+            }
+            if (country != null) {
+                viewBinding.regionAccountTv.setText(country.translate);
+                viewBinding.regionAccountNumberTv.setText("+" + country.code);
+            }
         } catch (Exception e) {
             e.printStackTrace();
         }
@@ -205,7 +221,7 @@
                     verification_code = viewBinding.changeMailVerificationEt.getText().toString();
                 }
                 if (UserConfigManage.getInstance().isBAccount()) {
-                    HdlAccountLogic.getInstance().changePassword_B(isPhoneType, account, psw, verification_code, new CloudCallBeak<Boolean>() {
+                    HdlAccountLogic.getInstance().changePassword_B(isPhoneType, account, psw, verification_code, viewBinding.regionAccountNumberTv.getText().toString(), new CloudCallBeak<Boolean>() {
                         @Override
                         public void onSuccess(Boolean obj) {
                             HdlThreadLogic.runMainThread(new Runnable() {
@@ -230,7 +246,7 @@
                         }
                     });
                 } else {
-                    HdlAccountLogic.getInstance().changePassword_C(isPhoneType, account, psw, verification_code, new CloudCallBeak<Boolean>() {
+                    HdlAccountLogic.getInstance().changePassword_C(isPhoneType, account, psw, verification_code, viewBinding.regionAccountNumberTv.getText().toString(), new CloudCallBeak<Boolean>() {
                         @Override
                         public void onSuccess(Boolean obj) {
                             HdlThreadLogic.runMainThread(new Runnable() {
@@ -267,7 +283,7 @@
         CountryPickerFragment dialog = new CountryPickerFragment(this, new PickCountryCallback() {
             @Override
             public void onPick(Country country) {
-                if (country.flag != 0) viewBinding.regionAccountTv.setText(country.name);
+                if (country.flag != 0) viewBinding.regionAccountTv.setText(country.translate);
                 viewBinding.regionAccountNumberTv.setText("+" + country.code);
             }
         });
@@ -297,21 +313,43 @@
                 //璁剧疆璐﹀彿鎵�鍦ㄥ尯鍩熷崗璁強鍦板潃
                 AppConfigManage.setUserRegionUrl(obj.getRegionUrl());
                 HDLLinkPMUser.getInstance().setUserRegionUrl(AppConfigManage.getUserRegionUrl());
-                HdlAccountLogic.getInstance().sendVerifyCode(isPhoneType, account, viewBinding.regionAccountNumberTv.getText().toString(), 2, new CloudCallBeak<Boolean>() {
-                    @Override
-                    public void onSuccess(Boolean obj) {
-                        if (isPhoneType) {
-                            phoneCountDownTimer.start();
-                        } else {
-                            mailCountDownTimer.start();
-                        }
-                    }
 
-                    @Override
-                    public void onFailure(HDLException e) {
-                        HdlThreadLogic.toast(_mActivity, e);
-                    }
-                });
+
+                if (UserConfigManage.getInstance().isBAccount()) {
+                    //B绔彂閫佽幏鍙栭獙璇佺爜
+                    HdlAccountLogic.getInstance().sendVerifyCode_B(isPhoneType, account, viewBinding.regionAccountNumberTv.getText().toString(), VerifyType.VerifyType_FIND_PASSWORD, new CloudCallBeak<Boolean>() {
+                        @Override
+                        public void onSuccess(Boolean obj) {
+                            if (isPhoneType) {
+                                phoneCountDownTimer.start();
+                            } else {
+                                mailCountDownTimer.start();
+                            }
+                        }
+
+                        @Override
+                        public void onFailure(HDLException e) {
+                            HdlThreadLogic.toast(_mActivity, e);
+                        }
+                    });
+                } else {
+                    //C绔彂閫佽幏鍙栭獙璇佺爜
+                    HdlAccountLogic.getInstance().sendVerifyCode_C(isPhoneType, account, viewBinding.regionAccountNumberTv.getText().toString(), VerifyType.VerifyType_2, new CloudCallBeak<Boolean>() {
+                        @Override
+                        public void onSuccess(Boolean obj) {
+                            if (isPhoneType) {
+                                phoneCountDownTimer.start();
+                            } else {
+                                mailCountDownTimer.start();
+                            }
+                        }
+
+                        @Override
+                        public void onFailure(HDLException e) {
+                            HdlThreadLogic.toast(_mActivity, e);
+                        }
+                    });
+                }
             }
 
             @Override
@@ -331,7 +369,7 @@
             long time = (millisUntilFinished / 1000);
             String str = time + "s" + getString(R.string.home_login_psw_verification_repeater);
             viewBinding.changePhoneVerificationTv.setText(str);
-//            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
+//            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
             viewBinding.changePhoneVerificationTv.setEnabled(false);
 
         }
@@ -339,7 +377,7 @@
         @Override
         public void onFinish() {
             viewBinding.changePhoneVerificationTv.setText(getString(R.string.home_login_verification_regain));
-//            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
+//            viewBinding.changePhoneVerificationTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
             viewBinding.changePhoneVerificationTv.setEnabled(true);
 
 
@@ -355,7 +393,7 @@
             String str = time + "s" + getString(R.string.home_login_psw_verification_repeater);
 
             viewBinding.changeMailVerificationTv.setText(str);
-//            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
+//            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
             viewBinding.changeMailVerificationTv.setEnabled(false);
 
         }
@@ -363,7 +401,7 @@
         @Override
         public void onFinish() {
             viewBinding.changeMailVerificationTv.setText(getString(R.string.home_login_verification_regain));
-//            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
+//            viewBinding.changeMailVerificationTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
             viewBinding.changeMailVerificationTv.setEnabled(true);
 
         }
@@ -377,12 +415,12 @@
             //鎵嬫満鍙�
             viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_phone);
             viewBinding.changePhoneIc.accountTitleTv.setTextSize(18);
-            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
+            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
             viewBinding.changePhoneIc.lineV.setVisibility(View.VISIBLE);
 
             viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_email);
             viewBinding.changeMailRl.accountTitleTv.setTextSize(14);
-            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_66FFFFFF));
+            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
             viewBinding.changeMailRl.lineV.setVisibility(View.GONE);
 
 
@@ -409,12 +447,12 @@
             //閭
             viewBinding.changePhoneIc.accountTitleTv.setText(R.string.home_login_phone);
             viewBinding.changePhoneIc.accountTitleTv.setTextSize(14);
-            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_66FFFFFF));
+            viewBinding.changePhoneIc.accountTitleTv.setTextColor(getResources().getColor(R.color.text_FF5B5B5B));
             viewBinding.changePhoneIc.lineV.setVisibility(View.GONE);
 
             viewBinding.changeMailRl.accountTitleTv.setText(R.string.home_login_email);
             viewBinding.changeMailRl.accountTitleTv.setTextSize(18);
-            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_E6FFFFFF));
+            viewBinding.changeMailRl.accountTitleTv.setTextColor(getResources().getColor(R.color.text_FFACACAC));
             viewBinding.changeMailRl.lineV.setVisibility(View.VISIBLE);
 
             viewBinding.regionAccountRl.setVisibility(View.GONE);
@@ -457,9 +495,9 @@
         }
         boolean isEnabled = account.length() > 0 && psw1.length() > 0 && psw2.length() > 0 && verification_code.length() > 0;
         if (isEnabled) {
-            viewBinding.confirmTv.setTextColor(getColor(R.color.text_E6FFFFFF));
+            viewBinding.confirmTv.setTextColor(getColor(R.color.text_FFACACAC));
         } else {
-            viewBinding.confirmTv.setTextColor(getColor(R.color.text_66FFFFFF));
+            viewBinding.confirmTv.setTextColor(getColor(R.color.text_FF5B5B5B));
         }
         viewBinding.confirmTv.setEnabled(isEnabled);
     }

--
Gitblit v1.8.0