Commit b6358e44 by luofan

修改密码去掉旧密码校验,忘记密码获取验证码增加滑块校验

parent 4778ebe4
...@@ -99,8 +99,8 @@ public class UserApiFactory { ...@@ -99,8 +99,8 @@ public class UserApiFactory {
return Api.getDownloadService(UserService.class).verifyMegLive(body).compose(Api.applySchedulers()); return Api.getDownloadService(UserService.class).verifyMegLive(body).compose(Api.applySchedulers());
} }
public static Observable<Boolean> sendForgetCode(String telephone, int type) { public static Observable<Boolean> sendForgetCode(String telephone, int type,RequestBody body) {
return Api.getDownloadService(UserService.class).sendForgetCode(telephone, type).compose(Api.applySchedulers()); return Api.getDownloadService(UserService.class).sendForgetCode(telephone, type,body).compose(Api.applySchedulers());
} }
public static Observable<String> verifyCode(String telephone, String code) { public static Observable<String> verifyCode(String telephone, String code) {
...@@ -111,8 +111,8 @@ public class UserApiFactory { ...@@ -111,8 +111,8 @@ public class UserApiFactory {
return Api.getDownloadService(UserService.class).forgetPwd(token, newpwd1, newpwd2).compose(Api.applySchedulers()); return Api.getDownloadService(UserService.class).forgetPwd(token, newpwd1, newpwd2).compose(Api.applySchedulers());
} }
public static Observable<String> modifyPwd(String accountId, String ordpwd, String newpwd1, String newpwd2) { public static Observable<String> modifyPwd(String accountId, String newpwd1, String newpwd2) {
return Api.getDownloadService(UserService.class).modifyPwd(accountId, ordpwd, newpwd1, newpwd2).compose(Api.applySchedulers()); return Api.getDownloadService(UserService.class).modifyPwd(accountId, newpwd1, newpwd2).compose(Api.applySchedulers());
} }
public static Observable<Integer> getSiteId(int accountId) { public static Observable<Integer> getSiteId(int accountId) {
......
...@@ -210,8 +210,8 @@ public interface UserService { ...@@ -210,8 +210,8 @@ public interface UserService {
* @param type * @param type
* @return * @return
*/ */
@GET(UserConstant.RESET_PWD_CODE) @POST(UserConstant.RESET_PWD_CODE)
Observable<BaseResponse<Boolean>> sendForgetCode(@Path("telephone") String telephone, @Path("type") int type); Observable<BaseResponse<Boolean>> sendForgetCode(@Path("telephone") String telephone, @Path("type") int type,@Body RequestBody body);
/** /**
* 忘记密码校验验证码. * 忘记密码校验验证码.
...@@ -238,13 +238,12 @@ public interface UserService { ...@@ -238,13 +238,12 @@ public interface UserService {
* 修改密码. * 修改密码.
* *
* @param accountId * @param accountId
* @param ordpwd
* @param newpwd1 * @param newpwd1
* @param newpwd2 * @param newpwd2
* @return * @return
*/ */
@POST(UserConstant.MODIFY_PWD) @POST(UserConstant.MODIFY_PWD)
Observable<BaseResponse<String>> modifyPwd(@Query("accountId") String accountId, @Query("ordpwd") String ordpwd, @Query("newpwd1") String newpwd1, @Query("newpwd2") String newpwd2); Observable<BaseResponse<String>> modifyPwd(@Query("accountId") String accountId, @Query("newpwd1") String newpwd1, @Query("newpwd2") String newpwd2);
/** /**
* 获取siteId. * 获取siteId.
......
...@@ -109,7 +109,7 @@ public class UserConstant { ...@@ -109,7 +109,7 @@ public class UserConstant {
/** /**
* 修改密码. * 修改密码.
*/ */
public final static String MODIFY_PWD = "/api-user/" + "account/modifyPwd"; public final static String MODIFY_PWD = "/api-user/" + "account/modifyPwd/v2";
/** /**
* 获取师傅siteid. * 获取师傅siteid.
......
...@@ -16,6 +16,7 @@ public interface ForgetPwdContract { ...@@ -16,6 +16,7 @@ public interface ForgetPwdContract {
*/ */
void changeCodeBtn(); void changeCodeBtn();
void showCaptchaDialog();
} }
abstract class Presenter extends BasePresenter<View> { abstract class Presenter extends BasePresenter<View> {
...@@ -24,9 +25,10 @@ public interface ForgetPwdContract { ...@@ -24,9 +25,10 @@ public interface ForgetPwdContract {
* 发送验证码. * 发送验证码.
* *
*/ */
public abstract void sendCode(); public abstract void sendCode(String result);
public abstract void next(); public abstract void next();
public abstract void showCaptcha();
} }
} }
...@@ -10,6 +10,13 @@ import com.dayu.usercenter.ui.activity.NewPwdActivity; ...@@ -10,6 +10,13 @@ import com.dayu.usercenter.ui.activity.NewPwdActivity;
import com.dayu.utils.ToastUtils; import com.dayu.utils.ToastUtils;
import com.dayu.utils.UtilsUserAccountMatcher; import com.dayu.utils.UtilsUserAccountMatcher;
import org.json.JSONObject;
import java.util.HashMap;
import okhttp3.MediaType;
import okhttp3.RequestBody;
/** /**
* Created by luofan * Created by luofan
* on 2017/11/8. * on 2017/11/8.
...@@ -27,14 +34,18 @@ public class ForgetPwdPresenter extends ForgetPwdContract.Presenter { ...@@ -27,14 +34,18 @@ public class ForgetPwdPresenter extends ForgetPwdContract.Presenter {
} }
@Override @Override
public void sendCode() { public void sendCode(String result) {
if (!UtilsUserAccountMatcher.isPhoneNum(phoneNume.get())) { if (!UtilsUserAccountMatcher.isPhoneNum(phoneNume.get())) {
ToastUtils.showShortToast(R.string.alipay_phone_error); ToastUtils.showShortToast(R.string.alipay_phone_error);
return; return;
} }
mView.showDialog(); mView.showDialog();
mView.changeCodeBtn(); mView.changeCodeBtn();
UserApiFactory.sendForgetCode(phoneNume.get(), 1).subscribe(baseObserver( HashMap<String, Object> params = new HashMap<>();
params.put("captchaVerification", result);
JSONObject jsonObject = new JSONObject(params);
RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
UserApiFactory.sendForgetCode(phoneNume.get(), 1,body).subscribe(baseObserver(
aBoolean -> mView.showToast(R.string.login_sms_success) aBoolean -> mView.showToast(R.string.login_sms_success)
, throwable -> mView.showToast(R.string.send_code_faile))); , throwable -> mView.showToast(R.string.send_code_faile)));
} }
...@@ -53,4 +64,9 @@ public class ForgetPwdPresenter extends ForgetPwdContract.Presenter { ...@@ -53,4 +64,9 @@ public class ForgetPwdPresenter extends ForgetPwdContract.Presenter {
mView.startActivityAndFinish(NewPwdActivity.class, bundle); mView.startActivityAndFinish(NewPwdActivity.class, bundle);
})); }));
} }
@Override
public void showCaptcha() {
mView.showCaptchaDialog();
}
} }
...@@ -32,10 +32,10 @@ public class ModifyPwdPresenter extends ModifyPwdContract.Presenter { ...@@ -32,10 +32,10 @@ public class ModifyPwdPresenter extends ModifyPwdContract.Presenter {
@Override @Override
public void ModifyPwd() { public void ModifyPwd() {
if (!UtilsUserAccountMatcher.isPassword(oldCode.get())) { // if (!UtilsUserAccountMatcher.isPassword(oldCode.get())) {
ToastUtils.showShortToast(R.string.old_pwd_tip); // ToastUtils.showShortToast(R.string.old_pwd_tip);
return; // return;
} // }
if (!UtilsUserAccountMatcher.isPassword(newCode.get())) { if (!UtilsUserAccountMatcher.isPassword(newCode.get())) {
ToastUtils.showShortToast(R.string.new_pwd_tip); ToastUtils.showShortToast(R.string.new_pwd_tip);
return; return;
...@@ -45,7 +45,7 @@ public class ModifyPwdPresenter extends ModifyPwdContract.Presenter { ...@@ -45,7 +45,7 @@ public class ModifyPwdPresenter extends ModifyPwdContract.Presenter {
return; return;
} }
mView.showDialog(); mView.showDialog();
UserApiFactory.modifyPwd(mAccountId, MD5Util.encrypt(oldCode.get()), MD5Util.encrypt(newCode.get()) UserApiFactory.modifyPwd(mAccountId, MD5Util.encrypt(newCode.get())
, MD5Util.encrypt(againCode.get())) , MD5Util.encrypt(againCode.get()))
.subscribe(baseObserver(s -> mView.dumpToLogin(mPhone))); .subscribe(baseObserver(s -> mView.dumpToLogin(mPhone)));
} }
......
...@@ -11,6 +11,7 @@ import com.dayu.usercenter.presenter.forgetpwd.ForgetPwdContract; ...@@ -11,6 +11,7 @@ import com.dayu.usercenter.presenter.forgetpwd.ForgetPwdContract;
import com.dayu.usercenter.presenter.forgetpwd.ForgetPwdPresenter; import com.dayu.usercenter.presenter.forgetpwd.ForgetPwdPresenter;
import com.dayu.utils.TimeCountUtil; import com.dayu.utils.TimeCountUtil;
import com.dayu.utils.UIUtils; import com.dayu.utils.UIUtils;
import com.example.verificationcodejavademo.widget.BlockPuzzleDialog;
import com.umeng.analytics.MobclickAgent; import com.umeng.analytics.MobclickAgent;
/** /**
...@@ -19,6 +20,8 @@ import com.umeng.analytics.MobclickAgent; ...@@ -19,6 +20,8 @@ import com.umeng.analytics.MobclickAgent;
*/ */
public class ForgetPwdActivity extends BaseActivity<ForgetPwdPresenter, ForgetPwdLayoutBinding> implements ForgetPwdContract.View { public class ForgetPwdActivity extends BaseActivity<ForgetPwdPresenter, ForgetPwdLayoutBinding> implements ForgetPwdContract.View {
private BlockPuzzleDialog blockPuzzleDialog;
@Override @Override
public int getLayoutId() { public int getLayoutId() {
return R.layout.forget_pwd_layout; return R.layout.forget_pwd_layout;
...@@ -49,6 +52,11 @@ public class ForgetPwdActivity extends BaseActivity<ForgetPwdPresenter, ForgetPw ...@@ -49,6 +52,11 @@ public class ForgetPwdActivity extends BaseActivity<ForgetPwdPresenter, ForgetPw
}); });
mBind.getCode.setEnabled(false); mBind.getCode.setEnabled(false);
mBind.next.setEnabled(false); mBind.next.setEnabled(false);
blockPuzzleDialog = new BlockPuzzleDialog(this);
blockPuzzleDialog.setOnResultsListener(result -> {
mPresenter.sendCode(result);
});
} }
public void isMatch(String phone, String code) { public void isMatch(String phone, String code) {
...@@ -70,8 +78,14 @@ public class ForgetPwdActivity extends BaseActivity<ForgetPwdPresenter, ForgetPw ...@@ -70,8 +78,14 @@ public class ForgetPwdActivity extends BaseActivity<ForgetPwdPresenter, ForgetPw
MobclickAgent.onEvent(mActivity, "sms_code"); MobclickAgent.onEvent(mActivity, "sms_code");
} }
@Override @Override
public void setPresenter() { public void setPresenter() {
mBind.setPresenter(mPresenter); mBind.setPresenter(mPresenter);
} }
@Override
public void showCaptchaDialog() {
blockPuzzleDialog.show();
}
} }
...@@ -64,6 +64,7 @@ ...@@ -64,6 +64,7 @@
android:layout_height="51dp" android:layout_height="51dp"
android:layout_marginBottom="3dp" android:layout_marginBottom="3dp"
android:background="@color/white" android:background="@color/white"
android:visibility="gone"
android:orientation="horizontal" android:orientation="horizontal"
android:paddingLeft="15dp" android:paddingLeft="15dp"
android:paddingRight="15dp"> android:paddingRight="15dp">
......
...@@ -103,7 +103,7 @@ ...@@ -103,7 +103,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginLeft="10dp" android:layout_marginLeft="10dp"
android:alpha="0.35" android:alpha="0.35"
android:onClick="@{()->presenter.sendCode()}" android:onClick="@{()->presenter.showCaptcha()}"
android:text="@string/tv_login_register_button_text" android:text="@string/tv_login_register_button_text"
android:textColor="@color/bg_button" /> android:textColor="@color/bg_button" />
</LinearLayout> </LinearLayout>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment