From 92f09807eeb57f0cb9a4686cde38834549b34962 Mon Sep 17 00:00:00 2001 From: nilupeng <qingingrunt2010@qq.com> Date: Tue, 09 Aug 2022 11:00:15 +0000 Subject: [PATCH] Merge branch 'master' into page --- app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java | 55 +++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 41 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java index eda4bd3..80addfe 100644 --- a/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java +++ b/app/src/main/java/com/runt/open/mvvm/ui/login/LoginViewModel.java @@ -1,18 +1,18 @@ package com.runt.open.mvvm.ui.login; import androidx.lifecycle.MutableLiveData; - +import com.runt.open.mvvm.base.activities.BaseActivity; import com.runt.open.mvvm.base.model.BaseViewModel; +import com.runt.open.mvvm.data.HttpApiResult; import com.runt.open.mvvm.data.Results; import com.runt.open.mvvm.retrofit.api.LoginApiCenter; import com.runt.open.mvvm.retrofit.observable.HttpObserver; import com.runt.open.mvvm.retrofit.utils.RetrofitUtils; +import io.reactivex.Observable; import java.util.ArrayList; import java.util.Date; import java.util.List; - -import io.reactivex.Observable; /** * Created by Administrator on 2021/11/15 0015. @@ -25,16 +25,28 @@ loginApi = RetrofitUtils.getInstance().getRetrofit(LoginApiCenter.class); } - MutableLiveData<Results.LoggedInUser> loginResult = new MutableLiveData<>(); - MutableLiveData<Results.StringApiResult> verifyResult = new MutableLiveData<>(); + MutableLiveData<UserBean> loginResult = new MutableLiveData<>(); + MutableLiveData<Integer> verifyResult = new MutableLiveData<>(); MutableLiveData<Results.StringApiResult> resetResult = new MutableLiveData<>(); MutableLiveData<Results.StringApiResult> registerResult = new MutableLiveData<>(); + HttpObserver<UserBean> logginObserver; - public MutableLiveData<Results.LoggedInUser> getLoginResult() { + @Override + public void onCreate(BaseActivity activity) { + super.onCreate(activity); + logginObserver = new HttpObserver<UserBean>(mActivity){ + @Override + protected void onSuccess(UserBean data) { + loginResult.setValue(data); + } + }; + } + + public MutableLiveData<UserBean> getLoginResult() { return loginResult; } - public MutableLiveData<Results.StringApiResult> getVerifyResult() { + public MutableLiveData<Integer> getVerifyResult() { return verifyResult; } @@ -45,8 +57,8 @@ */ public void login(String username, String password) { // can be launched in a separate asynchronous job - final Observable<Results.LoggedInUser> userObservable = loginApi.login(username, password); - httpObserverOnLoading(userObservable,new HttpObserver<Results.LoggedInUser>(loginResult){}); + final Observable<HttpApiResult<UserBean>> userObservable = loginApi.login(username, password); + httpObserverOnLoading(userObservable,logginObserver); } /** @@ -55,8 +67,7 @@ * @param code */ public void loginByCode(String phone,String code){ - httpObserverOnLoading(loginApi.loginByCode(phone,code), - new HttpObserver<Results.LoggedInUser>(loginResult){}); + httpObserverOnLoading(loginApi.loginByCode(phone,code),logginObserver); } /** @@ -66,7 +77,7 @@ * @param pass */ public void resetPwd(String phone,String sms,String pass){ - httpObserverOnLoading(loginApi.resetLoginPwd(phone, sms, pass), new HttpObserver<Results.StringApiResult>(resetResult) {}); + httpObserverOnLoading(loginApi.resetLoginPwd(phone, sms, pass),logginObserver); } /** @@ -76,7 +87,12 @@ * @param pass */ public void register(String phone,String sms,String pass){ - httpObserverOnLoading(loginApi.register(phone, sms, pass), new HttpObserver<Results.StringApiResult>(resetResult) {}); + httpObserverOnLoading(loginApi.register(phone, sms, pass), new HttpObserver<Results.StringApiResult>(){ + @Override + protected void onSuccess(Results.StringApiResult data) { + resetResult.setValue(data); + } + }); } /** @@ -110,7 +126,18 @@ */ public void getVerifyCode(String url,String phone){ String time = new Date().getTime()+""; - httpObserverOnLoading(loginApi.getVerifyCode(url, phone, randomString(phone, time), time), new HttpObserver<Results.StringApiResult>(verifyResult){}); + httpObserverOnLoading(loginApi.getVerifyCode(url, phone, randomString(phone, time), time), new HttpObserver<Results.SmsResult>(){ + @Override + protected void onSuccess(Results.SmsResult data) { + verifyResult.setValue(0); + } + + @Override + protected void onFailed(HttpApiResult httpResult) { + super.onFailed(httpResult); + verifyResult.setValue(-1); + } + }); } /** -- Gitblit v1.9.1