diff --git a/app/src/main/java/com/ckkj/water/guide/GuideActivity.java b/app/src/main/java/com/ckkj/water/guide/GuideActivity.java index 353f5c1..581da1b 100644 --- a/app/src/main/java/com/ckkj/water/guide/GuideActivity.java +++ b/app/src/main/java/com/ckkj/water/guide/GuideActivity.java @@ -135,6 +135,11 @@ public class GuideActivity extends BaseActivity map, CallBack callBack); //手机验证码登录 void loginBySmsCode(JSONObject json, CallBack callBack); + //通过账户+验证码 修改密码 + void updatePsdByVerifyCode(JSONObject json, CallBack callBack); } public interface LoginView extends IView{ @@ -35,5 +37,7 @@ public class LoginContract { void getPhoneCodeSuccess(BaseBean bean); //验证码登录成功 void loginBySmsCodeSuccess(LoginEntity entity); + //通过验证码修改密码成功 + void updateUserPasswordSuccess(BaseBean bean); } } diff --git a/app/src/main/java/com/ckkj/water/login/mvp/LoginImpl.java b/app/src/main/java/com/ckkj/water/login/mvp/LoginImpl.java index 6d88acf..c0ead1f 100644 --- a/app/src/main/java/com/ckkj/water/login/mvp/LoginImpl.java +++ b/app/src/main/java/com/ckkj/water/login/mvp/LoginImpl.java @@ -141,4 +141,44 @@ public class LoginImpl implements LoginContract.DataModel { e.printStackTrace(); } } + + /** + * 通过验证码修改密码 + * @param json + * @param callBack + */ + @Override + public void updatePsdByVerifyCode(JSONObject json, LoginContract.CallBack callBack) { + try { + NetWorkManager.getRequest().updatePasswordByVerifyCode(NetWorkManager.getToken(),NetWorkManager.toRequestBody(json)) + .subscribeOn(Schedulers.io()) + .unsubscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { + @Override + public void onSubscribe(@NonNull Disposable d) { + } + + @Override + public void onNext(@NonNull BaseBean bean) { + if (bean.getCode() == 200) { + callBack.success(bean); + } else { + callBack.fail(bean.getMessage()); + } + } + + @Override + public void onError(@NonNull Throwable e) { + callBack.fail(e.getMessage()); + } + + @Override + public void onComplete() { + } + }); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/app/src/main/java/com/ckkj/water/login/mvp/LoginPresenter.java b/app/src/main/java/com/ckkj/water/login/mvp/LoginPresenter.java index 76b1576..1a29350 100644 --- a/app/src/main/java/com/ckkj/water/login/mvp/LoginPresenter.java +++ b/app/src/main/java/com/ckkj/water/login/mvp/LoginPresenter.java @@ -3,6 +3,8 @@ package com.ckkj.water.login.mvp; import com.ckkj.water.AppConfig; import com.ckkj.water.base.BasePresenter; import com.ckkj.water.login.entity.LoginEntity; +import com.ckkj.water.mine.mvp.MineContract; +import com.ckkj.water.mine.mvp.MinePresenter; import com.ckkj.water.network.BaseBean; import org.json.JSONException; @@ -146,4 +148,35 @@ public class LoginPresenter extends BasePresenter { } + /** + * 通过验证码修改密码 + * @param account + * @param code + * @param psd + */ + public void updatePsdByVerifyCode(String account, String code, String psd) { + try { + JSONObject json = new JSONObject(); + json.put("userName", account); + json.put("code", code); + json.put("password", psd); + mImpl.updatePsdByVerifyCode(json, new LoginContract.CallBack() { + @Override + public void success(BaseBean bean) { + if(LoginPresenter.this.getView() != null){ + LoginPresenter.this.getView().updateUserPasswordSuccess(bean); + } + } + + @Override + public void fail(String msg) { + if(LoginPresenter.this.getView() != null){ + LoginPresenter.this.getView().showError(msg); + } + } + }); + } catch (JSONException e) { + throw new RuntimeException(e); + } + } } diff --git a/app/src/main/java/com/ckkj/water/network/Request.java b/app/src/main/java/com/ckkj/water/network/Request.java index 6c416aa..55feb03 100644 --- a/app/src/main/java/com/ckkj/water/network/Request.java +++ b/app/src/main/java/com/ckkj/water/network/Request.java @@ -65,6 +65,9 @@ public interface Request { @PUT("app/v1/updataPassword") Observable updatePasswordByOld(@HeaderMap Map headMap, @Body RequestBody requestBody); + //通过手机、邮箱验证码修改密码 + @POST("app/v1/retrievePassword") + Observable updatePasswordByVerifyCode(@HeaderMap Map headMap, @Body RequestBody requestBody); //查询排程列表 @GET("app/v1/schedulelist") diff --git a/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java b/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java index 5044a1a..4cd6f7e 100644 --- a/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java +++ b/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java @@ -174,7 +174,7 @@ public class WaterConfigFragment extends BaseFragment密码不能为空 请再次输入密码 请输入正确的手机号或邮箱 + 密码已重置 注册用户 注册 注册成功