| | |
| | | package com.hdl.photovoltaic.ui; |
| | | |
| | | |
| | | import android.Manifest; |
| | | import android.content.pm.PackageManager; |
| | | import android.os.Bundle; |
| | | import android.os.SystemClock; |
| | | import android.text.Editable; |
| | | import android.text.Spannable; |
| | | import android.text.SpannableStringBuilder; |
| | |
| | | import android.text.style.ForegroundColorSpan; |
| | | import android.util.Log; |
| | | import android.view.View; |
| | | import android.view.animation.Animation; |
| | | import android.view.animation.RotateAnimation; |
| | | import android.widget.TextView; |
| | | |
| | | |
| | | import androidx.annotation.NonNull; |
| | | import androidx.appcompat.content.res.AppCompatResources; |
| | | |
| | | import com.google.gson.Gson; |
| | | import com.google.gson.JsonElement; |
| | | import com.google.gson.JsonObject; |
| | | import com.hdl.photovoltaic.HDLApp; |
| | | import com.hdl.photovoltaic.R; |
| | | import com.hdl.photovoltaic.base.CustomBaseActivity; |
| | | import com.hdl.photovoltaic.enums.ShowErrorMode; |
| | | import com.hdl.photovoltaic.other.HdlResidenceLogic; |
| | | import com.hdl.photovoltaic.ui.bean.HouseIdBean; |
| | | import com.hdl.photovoltaic.ui.bean.LoginUserBean; |
| | | import com.hdl.photovoltaic.ui.bean.LoginUserRegionBean; |
| | | import com.hdl.photovoltaic.config.AppConfigManage; |
| | | import com.hdl.photovoltaic.databinding.ActivityHomeLoginBinding; |
| | | import com.hdl.photovoltaic.ui.MyPowerStationActivity; |
| | | import com.hdl.photovoltaic.listener.CloudCallBeak; |
| | | import com.hdl.photovoltaic.other.HdlAccountLogic; |
| | | import com.hdl.photovoltaic.other.HdlThreadLogic; |
| | | import com.hdl.photovoltaic.ui.device.FastScanActivity; |
| | | import com.hdl.photovoltaic.uni.HDLUniMP; |
| | | import com.hdl.photovoltaic.utils.PermissionUtils; |
| | | import com.hdl.photovoltaic.utils.WifiUtils; |
| | | |
| | | import org.json.JSONException; |
| | | import org.json.JSONObject; |
| | | |
| | | import java.util.List; |
| | | |
| | | |
| | | public class HomeLoginActivity extends CustomBaseActivity { |
| | |
| | | initView(); |
| | | //初始化界面监听器 |
| | | initEvent(); |
| | | //在界面中使用 |
| | | // KeyboardStateObserverUtils.getKeyboardStateObserver(_mActivity).setKeyboardVisibilityListener(new KeyboardStateObserverUtils.OnKeyboardVisibilityListener() { |
| | | // @Override |
| | | // public void onKeyboardShow(int h) { |
| | | // //Toast.makeText(MainActivity.this,"键盘弹出",Toast.LENGTH_SHORT).show(); |
| | | // ConstraintSet cs = new ConstraintSet(); |
| | | // cs.clone(viewBinding.homeLoginParentCl); |
| | | //// (viewBinding.loadingConfirmationRl.getTop()-dip2px(h)) |
| | | // cs.connect(R.id.home_login_tv, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, h);// |
| | | // //应用约束 |
| | | // cs.applyTo(viewBinding.homeLoginParentCl); |
| | | // } |
| | | // |
| | | // @Override |
| | | // |
| | | // public void onKeyboardHide(int h) { |
| | | // ConstraintSet cs = new ConstraintSet(); |
| | | // cs.clone(viewBinding.homeLoginParentCl); |
| | | // cs.connect(R.id.home_login_tv, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, h);// |
| | | // //应用约束 |
| | | // cs.applyTo(viewBinding.homeLoginParentCl); |
| | | // } |
| | | // |
| | | // }); |
| | | |
| | | |
| | | } |
| | | |
| | | private void initView() { |
| | | setStringDifferentColors(viewBinding.homeLoginPrivacyTv); |
| | | //测试用 |
| | | viewBinding.homeLoginAccountEt.setText("13375012441"); |
| | | viewBinding.homeLoginPasswordEt.setText("123456"); |
| | | isLoginTextViewEnabled(); |
| | | } |
| | | |
| | | private void initEvent() { |
| | |
| | | viewBinding.homeLoginTv.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | boolean isLogin = isLocalCheckAccountAndPassword(); |
| | | |
| | | String account = viewBinding.homeLoginAccountEt.getText().toString().replace(" ", ""); |
| | | String password = viewBinding.homeLoginPasswordEt.getText().toString().replace(" ", ""); |
| | | boolean isLogin = isLocalCheckAccountAndPassword(account, password); |
| | | if (!isLogin) { |
| | | return; |
| | | } |
| | |
| | | // //隐私协议提示 |
| | | // return; |
| | | // } |
| | | restoreButtonStyleToInitializeState(); |
| | | showLoading(getString(R.string.home_login_登录中)); |
| | | HdlAccountLogic.getInstance().regionByAccount(account, new CloudCallBeak<LoginUserRegionBean>() { |
| | | @Override |
| | | public void onSuccess(LoginUserRegionBean obj) { |
| | | AppConfigManage.setUserRegionUrl("http://59.41.255.150:7777");//obj.getRegionUrl() |
| | | HdlAccountLogic.getInstance().loginByPassword(account, password, new CloudCallBeak<LoginUserBean>() { |
| | | @Override |
| | | public void onSuccess(LoginUserBean obj) { |
| | | HdlResidenceLogic.getInstance().getResidenceIdList("", "", new CloudCallBeak<List<HouseIdBean>>() { |
| | | @Override |
| | | public void onSuccess(List<HouseIdBean> obj) { |
| | | hideLoading(); |
| | | HdlResidenceLogic.getInstance().setHouseIdList(obj); |
| | | restoreButtonStyleToInitializeState(); |
| | | startActivity(MyPowerStationActivity.class); |
| | | } |
| | | |
| | | startActivity(MyPowerStationActivity.class); |
| | | @Override |
| | | public void onFailure(Exception exception) { |
| | | hideLoading(); |
| | | restoreButtonStyleToInitializeState(); |
| | | startActivity(MyPowerStationActivity.class); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | @Override |
| | | public void onFailure(Exception exception) { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | @Override |
| | | public void onFailure(Exception exception) { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | |
| | | |
| | | } |
| | |
| | | viewBinding.homeLoginExperienceTv.setOnClickListener(new View.OnClickListener() { |
| | | @Override |
| | | public void onClick(View v) { |
| | | //startActivity(MyPowerStationActivity.class); |
| | | // requestPermissions(); |
| | | // startActivity(MyPowerStationActivity.class); |
| | | } |
| | | }); |
| | | |
| | |
| | | |
| | | /** |
| | | * 本地校验输入账号或者密码是否正确 |
| | | * 正确返回<true>true</true> |
| | | * 一般方法 |
| | | * |
| | | * @param account 账号 |
| | | * @param password 密码 |
| | | * 正确返回<true>true</true> |
| | | * 一般方法 |
| | | */ |
| | | private boolean isLocalCheckAccountAndPassword() { |
| | | String account = viewBinding.homeLoginAccountEt.getText().toString().replace(" ", ""); |
| | | String password = viewBinding.homeLoginPasswordEt.getText().toString().replace(" ", ""); |
| | | private boolean isLocalCheckAccountAndPassword(String account, String password) { |
| | | if (TextUtils.isEmpty(account)) { |
| | | viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_D34545)); |
| | | viewBinding.homeLoginAccountTextErrorTv.setText(R.string.home_login_error_账号不能为空); |
| | |
| | | * 恢复组件样式到初始化状态 |
| | | */ |
| | | private void restoreButtonStyleToInitializeState() { |
| | | viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_E1E1E1)); |
| | | viewBinding.homeLoginAccountTextErrorTv.setText(""); |
| | | viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_E1E1E1)); |
| | | viewBinding.homeLoginPasswordTextErrorTv.setText(""); |
| | | HdlThreadLogic.runMainThread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | viewBinding.homeLoginLine1V.setBackgroundColor(getColor(R.color.text_E1E1E1)); |
| | | viewBinding.homeLoginAccountTextErrorTv.setText(""); |
| | | viewBinding.homeLoginLine2V.setBackgroundColor(getColor(R.color.text_E1E1E1)); |
| | | viewBinding.homeLoginPasswordTextErrorTv.setText(""); |
| | | } |
| | | }, null, null); |
| | | } |
| | | |
| | | /** |