From e6014ef123350d5c0cadabe9c18e26b3d5a3c729 Mon Sep 17 00:00:00 2001
From: guoshen <3129367635@qq.com>
Date: 星期六, 29 六月 2024 15:41:25 +0800
Subject: [PATCH] Revert "Initial commit"
---
app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java | 87 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 87 insertions(+), 0 deletions(-)
diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java b/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java
index 4f0edf6..a359b70 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragmentViewModel.java
@@ -7,14 +7,29 @@
import androidx.annotation.NonNull;
import androidx.lifecycle.MutableLiveData;
+import com.android.app_base.base.StateViewEnum;
import com.android.app_base.base.viewmodel.BaseViewModel;
import com.android.app_base.http.ResultData;
+import com.android.app_base.manager.UserManager;
import com.android.app_base.utils.RxUtils;
+import com.android.app_base.utils.rxbus.MessageEvent;
+import com.android.app_base.utils.rxbus.RxBus;
+import com.application.zhangshi_app_android.bean.BannerBean;
import com.application.zhangshi_app_android.bean.GrowthExperienceInformationBean;
+import com.application.zhangshi_app_android.bean.UploadFileResponseBean;
import com.application.zhangshi_app_android.data.DataRepository;
+import java.io.File;
+
+import io.reactivex.ObservableSource;
import io.reactivex.Observer;
import io.reactivex.disposables.Disposable;
+import io.reactivex.functions.Action;
+import io.reactivex.functions.Consumer;
+import io.reactivex.functions.Function;
+import okhttp3.MediaType;
+import okhttp3.MultipartBody;
+import okhttp3.RequestBody;
/**
* @author Ljj
@@ -48,6 +63,12 @@
public void onNext(ResultData<GrowthExperienceInformationBean> data) {
if (data.getCode() == CODE_SUCCESS){
getInfoLiveData().postValue(data.getData());
+ GrowthExperienceInformationBean informationBean = data.getData();
+ if(informationBean != null){
+ UserManager.getInstance().setUserName(informationBean.getNickName());
+ UserManager.getInstance().setUserAvatar(informationBean.getImg());
+ RxBus.getInstance().post(new MessageEvent(MessageEvent.EVENT_UPDATE_USER_INFO,informationBean));
+ }
}else {
messageLiveData.postValue(data.getMsg());
}
@@ -66,6 +87,72 @@
});
}
+ /**
+ * 淇敼涓汉淇℃伅锛堝ご鍍忥級
+ */
+ public void updateInfo(String realPath) {
+ File file = new File(realPath);
+ RequestBody requestBody = RequestBody.create(MediaType.parse("multipart/form-data"), file);
+ MultipartBody.Part body = MultipartBody.Part.createFormData("uploadFile", file.getName(), requestBody);
+ model.uploadFile(body)
+ .flatMap(new Function<ResultData<UploadFileResponseBean>, ObservableSource<ResultData<String>>>() {
+ @Override
+ public ObservableSource<ResultData<String>> apply(ResultData<UploadFileResponseBean> resultData) throws Exception {
+ GrowthExperienceInformationBean bean = getInfoLiveData().getValue();
+ if (bean == null){
+ bean = new GrowthExperienceInformationBean();
+ }
+ bean.setImg(resultData.getData().getUrl());
+ infoLiveData.postValue(bean);
+ return model.updateGrowthExperienceInformation(bean);
+ }
+ })
+ .compose(RxUtils.schedulersTransformer())
+ .doOnSubscribe(new Consumer<Disposable>() {
+ @Override
+ public void accept(Disposable disposable) throws Exception {
+ changeStateView(StateViewEnum.DIALOG_LOADING);
+ }
+ })
+ .doFinally(new Action() {
+ @Override
+ public void run() throws Exception {
+ changeStateView(StateViewEnum.DIALOG_DISMISS);
+ }
+ })
+ .subscribe(new Observer<ResultData<String>>() {
+ @Override
+ public void onSubscribe(Disposable d) {
+ addSubscribe(d);
+ }
+
+ @Override
+ public void onNext(ResultData<String> data) {
+ if (data.getCode() == CODE_SUCCESS){
+ messageLiveData.postValue("澶村儚宸蹭笂浼�");
+ GrowthExperienceInformationBean informationBean = getInfoLiveData().getValue();
+ if(informationBean != null){
+ UserManager.getInstance().setUserName(informationBean.getNickName());
+ UserManager.getInstance().setUserAvatar(informationBean.getUrl());
+ RxBus.getInstance().post(new MessageEvent(MessageEvent.EVENT_UPDATE_USER_INFO,informationBean));
+ }
+ }else {
+ messageLiveData.postValue(data.getMsg());
+ }
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ messageLiveData.postValue(e.getMessage());
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+
public MutableLiveData<GrowthExperienceInformationBean> getInfoLiveData() {
if (infoLiveData == null){
--
Gitblit v1.9.1