소스 검색

Merge branch 'master' of http://192.168.40.220/dmc/jz_app into master

master
wq 2 년 전
부모
커밋
00b10a6057

+ 1
- 0
app/src/main/java/com/huntersun/vkyes/etcopencard/project/api/bean/IFCode.java 파일 보기

public static final String IFCODE2 = "2"; //统一会员平台发送验证码接口 public static final String IFCODE2 = "2"; //统一会员平台发送验证码接口
public static final String IFCODE94 = "94"; //8.8.统一会员平台个人账号修改密码以旧换新接口 public static final String IFCODE94 = "94"; //8.8.统一会员平台个人账号修改密码以旧换新接口
public static final String IFCODE4 = "4"; //登录 public static final String IFCODE4 = "4"; //登录
public static final String IFCODE55 = "55"; //手机号验证码登录
public static final String IFCODE66 = "66"; //登录 public static final String IFCODE66 = "66"; //登录
public static final String IFCODE5 = "5"; //通过code换取appid public static final String IFCODE5 = "5"; //通过code换取appid
public static final String IFCODE6 = "6"; //创建订单 public static final String IFCODE6 = "6"; //创建订单

+ 1
- 2
app/src/main/java/com/huntersun/vkyes/etcopencard/project/api/bean/ResultBean.java 파일 보기

public String customerAddress; //开户人地址 public String customerAddress; //开户人地址
public String customerVid; //用户证件过期时间 public String customerVid; //用户证件过期时间
public String agentIdType; //指定经办人证件类型 public String agentIdType; //指定经办人证件类型
public String custoemrName; //公司名称
public String customerName; //公司名称
public String customerIdNum; //用户证件ID public String customerIdNum; //用户证件ID
public String customerIdType; //公司证件类型 public String customerIdType; //公司证件类型
public String ownerTel; //所有人联系电话 public String ownerTel; //所有人联系电话
private String vehiclePlateColorStr; private String vehiclePlateColorStr;
private String vehicleType; private String vehicleType;
private String vehicleTotalMass; private String vehicleTotalMass;
private String customerName;
private String vehicleClass; private String vehicleClass;
private String vehicleClassStr; private String vehicleClassStr;
private String vehicleApprovedCount; private String vehicleApprovedCount;

+ 2
- 2
app/src/main/java/com/huntersun/vkyes/etcopencard/project/ui/activity/after/EditUserInfoStep2Activity.java 파일 보기

GlideApp.with(this).load(curBizContent.customerNegImgUrl).into(binding.ivUser2); GlideApp.with(this).load(curBizContent.customerNegImgUrl).into(binding.ivUser2);
} }


binding.etUserName.setText(FunHelper.isEmpty(curBizContent.custoemrName) ? "" : curBizContent.custoemrName);
binding.etUserName.setText(FunHelper.isEmpty(curBizContent.customerName) ? "" : curBizContent.customerName);
binding.etUserIDCard.setText(FunHelper.isEmpty(curBizContent.customerIdNum) ? "" : curBizContent.customerIdNum); binding.etUserIDCard.setText(FunHelper.isEmpty(curBizContent.customerIdNum) ? "" : curBizContent.customerIdNum);
binding.etAddr.setText(FunHelper.isEmpty(curBizContent.customerAddress) ? "" : curBizContent.customerAddress); binding.etAddr.setText(FunHelper.isEmpty(curBizContent.customerAddress) ? "" : curBizContent.customerAddress);
binding.tvUserIdTime.setText(FunHelper.isEmpty(curBizContent.customerVid) ? "" : curBizContent.customerVid); binding.tvUserIdTime.setText(FunHelper.isEmpty(curBizContent.customerVid) ? "" : curBizContent.customerVid);
} }


curUserType = curBizContent.agentIdType; curUserType = curBizContent.agentIdType;
binding.etUnitName.setText(FunHelper.isEmpty(curBizContent.custoemrName) ? "" : curBizContent.custoemrName);
binding.etUnitName.setText(FunHelper.isEmpty(curBizContent.customerName) ? "" : curBizContent.customerName);
binding.etUnitType.setText(FunHelper.isEmpty(curBizContent.customerIdType) ? "" : EnumBean.backValue(curBizContent.customerIdType, EnumBean.ID_TYPE)); binding.etUnitType.setText(FunHelper.isEmpty(curBizContent.customerIdType) ? "" : EnumBean.backValue(curBizContent.customerIdType, EnumBean.ID_TYPE));
binding.etUnitNumber.setText(FunHelper.isEmpty(curBizContent.customerIdNum) ? "" : curBizContent.customerIdNum); binding.etUnitNumber.setText(FunHelper.isEmpty(curBizContent.customerIdNum) ? "" : curBizContent.customerIdNum);
binding.etUnitUserPhone.setText(FunHelper.isEmpty(curBizContent.getCustomerTel()) ? "" : curBizContent.getCustomerTel()); binding.etUnitUserPhone.setText(FunHelper.isEmpty(curBizContent.getCustomerTel()) ? "" : curBizContent.getCustomerTel());

+ 1
- 1
app/src/main/java/com/huntersun/vkyes/etcopencard/project/ui/activity/after/ExtraCreditStep2Activity.java 파일 보기

new Utils().showMessDialog(getActivity(), "是否确认申请补卡额", new Utils.dialogCallback() { new Utils().showMessDialog(getActivity(), "是否确认申请补卡额", new Utils.dialogCallback() {
@Override @Override
public void onConfirm(BaseDialog dialog) { public void onConfirm(BaseDialog dialog) {
apply(bizContent.getOrderId());
//apply(bizContent.getOrderId());
} }
}); });
} }

+ 8
- 1
app/src/main/java/com/huntersun/vkyes/etcopencard/src/other/CodeCountDown.java 파일 보기

public class CodeCountDown extends CountDownTimer { public class CodeCountDown extends CountDownTimer {
private Button mTextView; private Button mTextView;
private Context context; private Context context;
int color;


public CodeCountDown(Context context, Button textView, long millisInFuture, long countDownInterval) { public CodeCountDown(Context context, Button textView, long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval); super(millisInFuture, countDownInterval);
this.mTextView = textView; this.mTextView = textView;
this.context = context; this.context = context;
} }
public CodeCountDown(Context context, Button textView, long millisInFuture, long countDownInterval,int color) {
super(millisInFuture, countDownInterval);
this.mTextView = textView;
this.context = context;
this.color = color;
}


@Override @Override
public void onTick(long millisUntilFinished) { public void onTick(long millisUntilFinished) {
mTextView.setClickable(false); //设置不可点击 mTextView.setClickable(false); //设置不可点击
mTextView.setEnabled(false); mTextView.setEnabled(false);
mTextView.setText(millisUntilFinished / 1000 + "s后重发"); //设置倒计时时间 mTextView.setText(millisUntilFinished / 1000 + "s后重发"); //设置倒计时时间
ColorStateList colors = context.getResources().getColorStateList(R.color.white);
ColorStateList colors = context.getResources().getColorStateList(color != 0 ? color : R.color.white);
mTextView.setTextColor(colors); mTextView.setTextColor(colors);
//mTextView.setBackgroundResource(R.drawable.bg_identify_code_press); //设置按钮为灰色,这时是不能点击的 //mTextView.setBackgroundResource(R.drawable.bg_identify_code_press); //设置按钮为灰色,这时是不能点击的
//mTextView.setBackgroundResource(R.drawable.boder_radius_5_white); //设置按钮为灰色,这时是不能点击的 //mTextView.setBackgroundResource(R.drawable.boder_radius_5_white); //设置按钮为灰色,这时是不能点击的

+ 179
- 82
app/src/main/java/com/huntersun/vkyes/etcopencard/src/ui/activity/LoginActivity.java 파일 보기

import android.view.animation.AccelerateDecelerateInterpolator; import android.view.animation.AccelerateDecelerateInterpolator;
import android.view.animation.AnimationUtils; import android.view.animation.AnimationUtils;
import android.view.inputmethod.EditorInfo; import android.view.inputmethod.EditorInfo;
import android.widget.Button;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import com.hjq.umeng.UmengClient; import com.hjq.umeng.UmengClient;
import com.hjq.widget.view.CountdownView; import com.hjq.widget.view.CountdownView;
import com.hjq.widget.view.SubmitButton; import com.hjq.widget.view.SubmitButton;
import com.huntersun.vky.obublelib.util.ValidatorUtils;
import com.huntersun.vkyes.etcopencard.R; import com.huntersun.vkyes.etcopencard.R;
import com.huntersun.vkyes.etcopencard.project.api.Api; import com.huntersun.vkyes.etcopencard.project.api.Api;
import com.huntersun.vkyes.etcopencard.project.api.Converter; import com.huntersun.vkyes.etcopencard.project.api.Converter;
import com.huntersun.vkyes.etcopencard.project.tool.MyShared; import com.huntersun.vkyes.etcopencard.project.tool.MyShared;
import com.huntersun.vkyes.etcopencard.project.ui.activity.MainActivity; import com.huntersun.vkyes.etcopencard.project.ui.activity.MainActivity;
import com.huntersun.vkyes.etcopencard.project.ui.activity.after.CheckRunningWaterStep2Activity; import com.huntersun.vkyes.etcopencard.project.ui.activity.after.CheckRunningWaterStep2Activity;
import com.huntersun.vkyes.etcopencard.project.ui.activity.after.ReplaceEtcStep4Activity;
import com.huntersun.vkyes.etcopencard.project.ui.activity.user.ForgetPwdStep1Activity; import com.huntersun.vkyes.etcopencard.project.ui.activity.user.ForgetPwdStep1Activity;
import com.huntersun.vkyes.etcopencard.project.utils.FunHelper; import com.huntersun.vkyes.etcopencard.project.utils.FunHelper;
import com.huntersun.vkyes.etcopencard.src.aop.SingleClick; import com.huntersun.vkyes.etcopencard.src.aop.SingleClick;
* *
* @author admin * @author admin
*/ */
public final class LoginActivity extends AppActivity
implements KeyboardWatcher.SoftKeyboardStateListener,
TextView.OnEditorActionListener {
public final class LoginActivity extends AppActivity implements KeyboardWatcher.SoftKeyboardStateListener, TextView.OnEditorActionListener {
private CodeCountDown mCountDownTimerUtils;


private static final String INTENT_KEY_IN_PHONE = "phone"; private static final String INTENT_KEY_IN_PHONE = "phone";
private static final String INTENT_KEY_IN_PASSWORD = "password"; private static final String INTENT_KEY_IN_PASSWORD = "password";


private View mForgetView; private View mForgetView;
private SubmitButton mCommitView; private SubmitButton mCommitView;
private Button mGetCodeBtn;
private CountdownView mCountdownView; private CountdownView mCountdownView;
private LinearLayout mLayoutCode; private LinearLayout mLayoutCode;


private View mOtherView;

private Boolean loginStart = true; //true 账号密码 false 手机号 private Boolean loginStart = true; //true 账号密码 false 手机号


/**
* logo 缩放比例
*/
//logo缩放比例
private final float mLogoScale = 0.8f; private final float mLogoScale = 0.8f;
/**
* 动画时间
*/
//动画时间
private final int mAnimTime = 300; private final int mAnimTime = 300;


@Override @Override
mPasswordView = findViewById(R.id.et_login_password); mPasswordView = findViewById(R.id.et_login_password);
mForgetView = findViewById(R.id.tv_login_forget); mForgetView = findViewById(R.id.tv_login_forget);
mCommitView = findViewById(R.id.btn_login_commit); mCommitView = findViewById(R.id.btn_login_commit);
mOtherView = findViewById(R.id.ll_login_other);
//发送验证码
mGetCodeBtn = findViewById(R.id.mGetCodeBtn);
mCountdownView = findViewById(R.id.cv_phone_reset_countdown); mCountdownView = findViewById(R.id.cv_phone_reset_countdown);
mCodeView = findViewById(R.id.et_phone_reset_code); mCodeView = findViewById(R.id.et_phone_reset_code);
mTvLoginCode = findViewById(R.id.tv_login_code); mTvLoginCode = findViewById(R.id.tv_login_code);
mLayoutCode = findViewById(R.id.layout_code); mLayoutCode = findViewById(R.id.layout_code);


setOnClickListener(mForgetView, mCountdownView, mTvLoginCode, mCodeView, mCommitView);
setOnClickListener(mForgetView, mCountdownView, mTvLoginCode, mCodeView, mCommitView, mGetCodeBtn);


mPasswordView.setOnEditorActionListener(this); mPasswordView.setOnEditorActionListener(this);


/** /**
* 修改密码成功 * 修改密码成功
*/ */
private void setDataToView(){
private void setDataToView() {
//修改密码之后-自动填充 //修改密码之后-自动填充
String phone = getIntent().getStringExtra("phone"); String phone = getIntent().getStringExtra("phone");
String pwd = getIntent().getStringExtra("pwd"); String pwd = getIntent().getStringExtra("pwd");
if(!FunHelper.isEmpty(phone)){
if (!FunHelper.isEmpty(phone)) {
mPhoneView.setText(phone); mPhoneView.setText(phone);
}else{//手机号为空,取缓存的手机号码
} else {//手机号为空,取缓存的手机号码
// String mobile = (String) MyShared.getInstance().get(MyShared.USER_PHONE,""); // String mobile = (String) MyShared.getInstance().get(MyShared.USER_PHONE,"");
// mPhoneView.setText(mobile); // mPhoneView.setText(mobile);
} }
if (!FunHelper.isEmpty(pwd)){
if (!FunHelper.isEmpty(pwd)) {
mPasswordView.setText(pwd); mPasswordView.setText(pwd);
} }


LiveEventBus.get("updatePwdSuccess", Boolean.class) .observe(this, s -> {
LiveEventBus.get("updatePwdSuccess", Boolean.class).observe(this, s -> {
finish(); finish();
}); });
} }
@SingleClick @SingleClick
@Override @Override
public void onClick(View view) { public void onClick(View view) {
if (view == mForgetView) {
if (view == mForgetView) {//忘记密码
/* Intent intent = new Intent(); /* Intent intent = new Intent();
intent.putExtra("start", false); intent.putExtra("start", false);
intent.setClass(LoginActivity.this, UpdatePasswordActivity.class); intent.setClass(LoginActivity.this, UpdatePasswordActivity.class);
startActivity(intent);*/ startActivity(intent);*/


Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putString("phone",FunHelper.getText(mPhoneView));
jumpToPage(ForgetPwdStep1Activity.class,bundle);
bundle.putString("phone", FunHelper.getText(mPhoneView));
jumpToPage(ForgetPwdStep1Activity.class, bundle);
return; return;
} }


if (view == mTvLoginCode) {
if (view == mTvLoginCode) {//登录
if ("手机号登录".equals(mTvLoginCode.getText().toString())) { if ("手机号登录".equals(mTvLoginCode.getText().toString())) {
mTvLoginCode.setText("账号密码登录"); mTvLoginCode.setText("账号密码登录");
mLayoutCode.setVisibility(View.VISIBLE); mLayoutCode.setVisibility(View.VISIBLE);
} }


//发送验证码 //发送验证码
if (view == mCountdownView) {
if (mPhoneView.getText().toString().length() != 11) {
mPhoneView.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.shake_anim));
toast(R.string.common_phone_input_error);
if (view == mGetCodeBtn) {
if (FunHelper.isEmpty(FunHelper.getText(mPhoneView))) {
toast("请输入手机号");
return; return;
} }
// 隐藏软键盘
hideKeyboard(getCurrentFocus());
showDialog("发送中...");
Map<String, String> params = new HashMap<>();
params.put("mobile", mPhoneView.getText().toString());
MyRetrofit.newInstance(IFCode.IFCODE2, params, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
hideDialog();
toast("验证码发送成功!");
mCountdownView.start(); //开始倒计时
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
hideDialog();
}
});

if (!ValidatorUtils.isMobile(FunHelper.getText(mPhoneView))) {
toast("请输入正确的手机号!");
return;
}

sendCode();
} }


if (view == mCommitView) { //提交按钮 if (view == mCommitView) { //提交按钮
// 隐藏软键盘 // 隐藏软键盘
hideKeyboard(getCurrentFocus()); hideKeyboard(getCurrentFocus());


if (FunHelper.isEmpty(value)){
toast( loginStart ? "请输入密码!" : "请输入验证码");
if (FunHelper.isEmpty(value)) {
toast(loginStart ? "请输入密码!" : "请输入验证码");
mPasswordView.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.shake_anim)); mPasswordView.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.shake_anim));
mCommitView.showError(3000); mCommitView.showError(3000);
return; return;
} }


//提交数据处理
Map<String, String> params = new HashMap<>();
params.put("mobile", mPhoneView.getText() + "");
params.put("password", value);
params.put("appId", "52030131"); //综合业务支撑平台使用
//IFCODE66
MyRetrofit.newInstance(IFCode.IFCODE4, params, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
ResultBean.BizContent content = new ResultBean.BizContent();
content.setCode(bizContent.getCode());
//通过code换取appid
MyRetrofit.newInstance(IFCode.IFCODE5, content, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
MyShared.getInstance().put(MyShared.OPENID, bizContent.getOpenId() + "");
MyShared.getInstance().put(MyShared.ACCESSTOKEN, bizContent.getAccessToken() + "");
MyShared.getInstance().put(MyShared.USER_PHONE,FunHelper.getText(mPhoneView));

// 跳转到首页
MainActivity.start(getContext());
finish();
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
postDelayed(() -> {
mCommitView.showError(3000);
}, 1000);
}
});
}
});
if (loginStart) {//账号密码登录
loginByPwd();
} else {//验证码登录
loginByCode();
}
} }
} }


.navigationBarColor(R.color.white); .navigationBarColor(R.color.white);
} }


/**
* 登录成功
*/
private void loginSuccess(ResultBean.BizContent bizContent) {
MyShared.getInstance().put(MyShared.OPENID, bizContent.getOpenId() + "");
MyShared.getInstance().put(MyShared.ACCESSTOKEN, bizContent.getAccessToken() + "");
MyShared.getInstance().put(MyShared.USER_PHONE, FunHelper.getText(mPhoneView));

// 跳转到首页
MainActivity.start(getContext());
finish();
}

/**
* 通过code获取登录用户信息
*
* @param code
*/
private void getLoginInfo(String code) {
ResultBean.BizContent content = new ResultBean.BizContent();
content.setCode(code);
MyRetrofit.newInstance(IFCode.IFCODE5, content, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
loginSuccess(bizContent);
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
postDelayed(() -> {
mCommitView.showError(3000);
}, 1000);
}
});
}

/*
* 账号密码登录
*/
private void loginByPwd() {
Map<String, String> params = new HashMap<>();
params.put("mobile", mPhoneView.getText() + "");
params.put("password", FunHelper.getText(mPasswordView));
params.put("appId", "52030131"); //综合业务支撑平台使用
MyRetrofit.newInstance(IFCode.IFCODE4, params, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
getLoginInfo(bizContent.getCode());
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
postDelayed(() -> {
mCommitView.showError(3000);
}, 1000);
}
});
}

/*
* 验证码登录
*/
private void loginByCode() {
Map<String, String> params = new HashMap<>();
params.put("mobile", FunHelper.getText(mPhoneView));
params.put("code", FunHelper.getText(mCodeView));
params.put("appId", "52030131");
MyRetrofit.newInstance(IFCode.IFCODE55, params, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
getLoginInfo(bizContent.getCode());
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
postDelayed(() -> {
mCommitView.showError(3000);
}, 1000);
}
});
}

/*
* 发送验证码
*/
private void sendCode() {
showDialog("发送中...");
Map<String, String> params = new HashMap<>();
params.put("mobile", FunHelper.getText(mPhoneView));
MyRetrofit.newInstance(IFCode.IFCODE2, params, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
hideDialog();
toast("验证码发送成功!");
mCountDownTimerUtils = new CodeCountDown(LoginActivity.this, mGetCodeBtn, 60000, 1000,R.color.common_accent_color);
mCountDownTimerUtils.start();
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
hideDialog();
}
});

//旧版本
/* if (mPhoneView.getText().toString().length() != 11) {
mPhoneView.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.shake_anim));
toast(R.string.common_phone_input_error);
return;
}
// 隐藏软键盘
hideKeyboard(getCurrentFocus());
showDialog("发送中...");
Map<String, String> params = new HashMap<>();
params.put("mobile", mPhoneView.getText().toString());
MyRetrofit.newInstance(IFCode.IFCODE2, params, new MyRetrofit.ReturnResult() {
@Override
public void onSuccess(ResultBean resultBean, ResultBean.BizContent bizContent) {
hideDialog();
toast("验证码发送成功!");
mCountdownView.start(); //开始倒计时
}

@Override
public void onError() {
MyRetrofit.ReturnResult.super.onError();
hideDialog();
}
});*/
}

@Override
protected void onDestroy() {
super.onDestroy();
if (mCountDownTimerUtils != null) {
mCountDownTimerUtils.cancel();
mCountDownTimerUtils = null;
}
}
} }

+ 6
- 0
app/src/main/res/drawable-v1/bg_border_green_radius.xml 파일 보기

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/dp_50"/>
<stroke android:color="@color/common_accent_color" android:width="@dimen/dp_1"></stroke>
<solid android:color="@color/transparent"/>
</shape>

+ 15
- 0
app/src/main/res/layout/login_activity.xml 파일 보기

android:maxLength="@integer/sms_code_length" android:maxLength="@integer/sms_code_length"
android:singleLine="true" /> android:singleLine="true" />


<Button
android:id="@+id/mGetCodeBtn"
style="@style/WrapWrap"
android:layout_height="@dimen/dp_25"
android:paddingLeft="@dimen/dp_8"
android:paddingRight="@dimen/dp_8"
android:layout_gravity="right|center"
android:background="@drawable/bg_border_green_radius"
android:enabled="true"
android:foreground="?attr/selectableItemBackground"
android:text="获取验证码"
android:textColor="@color/common_accent_color"
android:textSize="@dimen/sp_12" />

<com.hjq.widget.view.CountdownView <com.hjq.widget.view.CountdownView
android:id="@+id/cv_phone_reset_countdown" android:id="@+id/cv_phone_reset_countdown"
style="@style/CountdownViewStyle" style="@style/CountdownViewStyle"
android:visibility="gone"
android:layout_marginEnd="0dp" android:layout_marginEnd="0dp"
android:paddingVertical="@dimen/dp_10" /> android:paddingVertical="@dimen/dp_10" />



Loading…
취소
저장