From 68db344081c103c94832b8d0a06be6c6888d66e4 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期三, 26 三月 2025 17:34:14 +0800 Subject: [PATCH] 2025年03月26日17:34:12 --- app/src/main/java/com/hdl/photovoltaic/ui/account/ChangePassword.java | 118 +++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 98 insertions(+), 20 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 7ed0190..481a171 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 @@ -27,12 +27,17 @@ 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; +import com.sahooz.library.countrypicker.CountryPickerFragment; +import com.sahooz.library.countrypicker.PickCountryCallback; /** * 蹇樿瀵嗙爜鐣岄潰 @@ -72,9 +77,33 @@ * 鍒濆鍖栫晫闈� */ 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(); - HdlCommonLogic.getInstance().setSpan(viewBinding.changePhoneVerificationTv, viewBinding.changePhoneVerificationTv.getText().toString(), true,null); - HdlCommonLogic.getInstance().setSpan(viewBinding.changeMailVerificationTv, viewBinding.changeMailVerificationTv.getText().toString(), true,null); + 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(); + } + HdlCommonLogic.getInstance().setSpan(viewBinding.changePhoneVerificationTv, viewBinding.changePhoneVerificationTv.getText().toString(), true, null); + HdlCommonLogic.getInstance().setSpan(viewBinding.changeMailVerificationTv, viewBinding.changeMailVerificationTv.getText().toString(), true, null); } @@ -108,6 +137,14 @@ } }); + //閫夋嫨鎵嬫満鍖哄彿鐨� + viewBinding.regionAccountRl.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + selectArea(); + } + }); + //杈撳叆鎵嬫満鍙锋垨鑰呴偖绠� viewBinding.changeAccountEt.addTextChangedListener(accountTextWatcher); //鎵嬫満鍙疯幏鍙栭獙璇佺爜 @@ -189,7 +226,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() { @@ -214,7 +251,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() { @@ -245,6 +282,21 @@ } /** + * 鍥藉鎵嬫満鍙峰尯鍙峰脊绐� + */ + private void selectArea() { + CountryPickerFragment dialog = new CountryPickerFragment(this, new PickCountryCallback() { + @Override + public void onPick(Country country) { + if (country.flag != 0) viewBinding.regionAccountTv.setText(country.translate); + viewBinding.regionAccountNumberTv.setText("+" + country.code); + } + }); + dialog.show(); + dialog.setDialogSize(); + } + + /** * 鍙戦�侀獙璇佺爜鎸囦护 */ private void sendVerification() { @@ -266,21 +318,43 @@ //璁剧疆璐﹀彿鎵�鍦ㄥ尯鍩熷崗璁強鍦板潃 AppConfigManage.setUserRegionUrl(obj.getRegionUrl()); HDLLinkPMUser.getInstance().setUserRegionUrl(AppConfigManage.getUserRegionUrl()); - HdlAccountLogic.getInstance().sendVerifyCode(isPhoneType, account, "86", 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 @@ -347,13 +421,15 @@ 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.lineV.setVisibility(View.GONE); + 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.lineV.setVisibility(View.GONE); + + viewBinding.regionAccountRl.setVisibility(View.VISIBLE); //杈撳叆鎵嬫満鍙� viewBinding.changeAccountEt.setInputType(InputType.TYPE_CLASS_NUMBER); viewBinding.changeAccountEt.setHint(R.string.home_login_input_phone); @@ -382,7 +458,9 @@ 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.lineV.setVisibility(View.GONE); + viewBinding.changeMailRl.lineV.setVisibility(View.VISIBLE); + + viewBinding.regionAccountRl.setVisibility(View.GONE); //杈撳叆閭 viewBinding.changeAccountEt.setInputType(InputType.TYPE_CLASS_TEXT); viewBinding.changeAccountEt.setHint(R.string.home_login_input_mail); -- Gitblit v1.8.0