From a8335e915c190c85d653b5e578c14dbcb4e729c7 Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 25 Jan 2024 15:08:45 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E4=BC=98=E5=8C=96=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=98=B5=E7=A7=B0=E3=80=81=E7=AE=80=E4=BB=8B?= =?UTF-8?q?=E4=BD=93=E9=AA=8C=EF=BC=88=E5=9C=A8=E5=BD=93=E5=89=8D=E9=A1=B5?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=BD=91=E7=BB=9C=E8=AF=B7=E6=B1=82=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/ui/login/ModifyInfoActivity.java | 40 ++++++++++++----- .../app/ui/user/UserInfoModifyActivity.kt | 45 ++++++------------- 2 files changed, 42 insertions(+), 43 deletions(-) diff --git a/app/src/main/java/com/nnbc123/app/ui/login/ModifyInfoActivity.java b/app/src/main/java/com/nnbc123/app/ui/login/ModifyInfoActivity.java index e81fbb603..a75c64f91 100644 --- a/app/src/main/java/com/nnbc123/app/ui/login/ModifyInfoActivity.java +++ b/app/src/main/java/com/nnbc123/app/ui/login/ModifyInfoActivity.java @@ -1,5 +1,6 @@ package com.nnbc123.app.ui.login; +import android.annotation.SuppressLint; import android.content.Intent; import android.os.Bundle; @@ -20,9 +21,11 @@ import com.netease.nim.uikit.StatusBarUtil; import com.nnbc123.app.R; import com.nnbc123.app.base.BaseActivity; import com.nnbc123.app.base.TitleBar; +import com.nnbc123.core.auth.AuthModel; import com.nnbc123.core.user.UserModel; import com.nnbc123.core.user.bean.UserInfo; + /** * Created by zhouxiangfeng on 2017/5/13. */ @@ -41,8 +44,7 @@ public class ModifyInfoActivity extends BaseActivity implements View.OnClickList private TextView tvCountDown; - public static final String CONTENT = "content"; - public static final String CONTENT_NICK = "contentNick"; + public static final String USER_INFO = "user_info"; private CoordinatorLayout layout_coordinator; TextWatcher textWatcher = new TextWatcher() { @@ -117,19 +119,17 @@ public class ModifyInfoActivity extends BaseActivity implements View.OnClickList // 个人简介允许为空,nick不能为空 if (modifyType == CONTENT_MODIFY) { String content = etEditText.getText().toString(); - Intent intent = new Intent(); - intent.putExtra(CONTENT, content); - setResult(RESULT_OK, intent); - finish(); - + UserInfo info = new UserInfo(); + info.setUid(AuthModel.get().getCurrentUid()); + info.setUserDesc(content); + updateUserInfo(info); } else if (modifyType == NICK_MODIFY) { String contentNick = etEditTextNick.getText().toString(); - if (!contentNick.trim().isEmpty()) { - Intent intent = new Intent(); - intent.putExtra(CONTENT_NICK, contentNick); - setResult(RESULT_OK, intent); - finish(); + UserInfo info = new UserInfo(); + info.setUid(AuthModel.get().getCurrentUid()); + info.setNick(contentNick); + updateUserInfo(info); } else { Snackbar.make(layout_coordinator, "所填内容为空!", Snackbar.LENGTH_SHORT).show(); } @@ -189,4 +189,20 @@ public class ModifyInfoActivity extends BaseActivity implements View.OnClickList StatusBarUtil.StatusBarLightMode(this); } + @SuppressLint("CheckResult") + private void updateUserInfo(UserInfo userInfo){ + getDialogManager().showProgressDialog(this, "请稍后"); + UserModel.get().requestUpdateUserInfo(userInfo) + .compose(bindToLifecycle()) + .subscribe(userInfo1 -> { + getDialogManager().dismissDialog(); + Intent intent = new Intent(); + intent.putExtra(USER_INFO, userInfo1); + setResult(RESULT_OK, intent); + finish(); + }, throwable -> { + getDialogManager().dismissDialog(); + toast(throwable.getMessage()); + }); + } } diff --git a/app/src/main/java/com/nnbc123/app/ui/user/UserInfoModifyActivity.kt b/app/src/main/java/com/nnbc123/app/ui/user/UserInfoModifyActivity.kt index 8486dd829..cd07b2ade 100644 --- a/app/src/main/java/com/nnbc123/app/ui/user/UserInfoModifyActivity.kt +++ b/app/src/main/java/com/nnbc123/app/ui/user/UserInfoModifyActivity.kt @@ -351,34 +351,13 @@ class UserInfoModifyActivity : BaseViewBindingActivity { + Method.NICK, Method.DESC -> { data?.let { - dialogManager.showProgressDialog( - this@UserInfoModifyActivity, - "请稍后" - ) - val stringExtra = it.getStringExtra(ModifyInfoActivity.CONTENT_NICK) - binding.tvNick.text = stringExtra - val user = UserInfo() - user.uid = AuthModel.get().currentUid - user.nick = stringExtra - UserModel.get().requestUpdateUserInfo(user) - .subscribe(userInfoUpdateObserver) - } - } - Method.DESC -> { - data?.let { - dialogManager.showProgressDialog( - this@UserInfoModifyActivity, - "请稍后" - ) - val stringExtra = it.getStringExtra(ModifyInfoActivity.CONTENT) - setTvDesc(stringExtra) - val user = UserInfo() - user.uid = AuthModel.get().currentUid - user.userDesc = stringExtra - UserModel.get().requestUpdateUserInfo(user) - .subscribe(userInfoUpdateObserver) + val newUserInfo = + it.getSerializableExtra(ModifyInfoActivity.USER_INFO) as? UserInfo + if (newUserInfo != null) { + loadUserInfo(newUserInfo) + } } } Method.AUDIO -> { @@ -527,10 +506,7 @@ class UserInfoModifyActivity : BaseViewBindingActivity