diff --git a/app/src/main/java/com/unionmed/unionmedtv/adapter/GroupMsgListAdapter.java b/app/src/main/java/com/unionmed/unionmedtv/adapter/GroupMsgListAdapter.java index 664d045..63e7dd1 100644 --- a/app/src/main/java/com/unionmed/unionmedtv/adapter/GroupMsgListAdapter.java +++ b/app/src/main/java/com/unionmed/unionmedtv/adapter/GroupMsgListAdapter.java @@ -28,6 +28,7 @@ import com.unionmed.unionmedtv.network.HttpData; import com.unionmed.unionmedtv.utils.CacheUtil; import com.unionmed.unionmedtv.utils.Constants; import com.unionmed.unionmedtv.utils.OnChildClickListener; +import com.unionmed.unionmedtv.utils.UserInfoByServerUtil; import org.jetbrains.annotations.NotNull; import org.json.JSONArray; @@ -111,29 +112,27 @@ public class GroupMsgListAdapter extends BaseQuickAdapter>>() { - @Override - public void onHttpSuccess(HttpData> result) { - if (postion == 0) { - LiveDataBus.get().with(Constants.GROUP_MSG_LIST_SELECT_ITEM).postValue(0); - } - conversation.setFirstLoad(false); - if (null != result.getData() && result.getData().isInnerRequestSucceed() - && null != result.getData().getData()) { - conversation.setName(result.getData().getData().getName()); - conversation.setImgPath(result.getData().getData().getHeadImg()); - notifyItemChanged(postion); - } - } + UserInfoByServerUtil.getUserInfoByServer(getContext(), conversation.getConversation().getTargetId(), new UserInfoByServerUtil.UserInfoInterface() { + @Override + public void success(HttpData> result) { + if (postion == 0) { + LiveDataBus.get().with(Constants.GROUP_MSG_LIST_SELECT_ITEM).postValue(0); + } + conversation.setFirstLoad(false); + if (null != result.getData() && result.getData().isInnerRequestSucceed() + && null != result.getData().getData()) { + conversation.setName(result.getData().getData().getName()); + conversation.setImgPath(result.getData().getData().getHeadImg()); + notifyItemChanged(postion); + } + } - @Override - public void onHttpFail(Exception e) { - ToastUtils.showLong(e.getMessage()); - LogUtils.e("用户信息失败", "失败:" + e); - } - }); + @Override + public void Fail(String e) { + ToastUtils.showLong(e); + LogUtils.e("用户信息失败", "失败:" + e); + } + }); } @Override @@ -141,11 +140,11 @@ public class GroupMsgListAdapter extends BaseQuickAdapter>>() { - @Override - public void onHttpSuccess(HttpData> result) { - if (null != result.getData() && result.getData().isInnerRequestSucceed() - && null != result.getData().getData()) { - tv_name.setText(result.getData().getData().getName()); - Glide.with(getContext()) - .load(result.getData().getData().getHeadImg()) - .apply(new RequestOptions() - .placeholder(R.mipmap.rc_default_portrait) - .circleCrop() - ) - .into(iv_avatar); - } - } + UserInfoByServerUtil.getUserInfoByServer(getContext(), message.getSenderUserId(), new UserInfoByServerUtil.UserInfoInterface() { + @Override + public void success(HttpData> result) { + if (null != result.getData() && result.getData().isInnerRequestSucceed() + && null != result.getData().getData()) { + tv_name.setText(result.getData().getData().getName()); + Glide.with(getContext()) + .load(result.getData().getData().getHeadImg()) + .apply(new RequestOptions() + .placeholder(R.mipmap.rc_default_portrait) + .circleCrop() + ) + .into(iv_avatar); + } + } - @Override - public void onHttpFail(Exception e) { - ToastUtils.showLong(e.getMessage()); - LogUtils.e("用户信息失败", "失败:" + e); - } - }); + @Override + public void Fail(String e) { + ToastUtils.showLong(e); + LogUtils.e("用户信息失败", "失败:" + e); + } + }); } public void MeetingClick(BaseViewHolder vh, Message message) { diff --git a/app/src/main/java/com/unionmed/unionmedtv/adapter/MsgListAdapter.java b/app/src/main/java/com/unionmed/unionmedtv/adapter/MsgListAdapter.java index 09987c3..37e8ffd 100644 --- a/app/src/main/java/com/unionmed/unionmedtv/adapter/MsgListAdapter.java +++ b/app/src/main/java/com/unionmed/unionmedtv/adapter/MsgListAdapter.java @@ -35,6 +35,7 @@ import com.unionmed.unionmedtv.network.HttpData; import com.unionmed.unionmedtv.utils.CacheUtil; import com.unionmed.unionmedtv.utils.Constants; import com.unionmed.unionmedtv.utils.OnChildClickListener; +import com.unionmed.unionmedtv.utils.UserInfoByServerUtil; import org.jetbrains.annotations.NotNull; import org.json.JSONArray; @@ -68,32 +69,29 @@ public class MsgListAdapter extends BaseQuickAdapter>>() { - @Override - public void onHttpSuccess(HttpData> result) { - if (postion == 0) { - LiveDataBus.get().with(Constants.MSG_LIST_SELECT_ITEM).postValue(0); - } - conversation.setFirstLoad(false); - if (null != result.getData() && result.getData().isInnerRequestSucceed() - && null != result.getData().getData()) { - conversation.setName(result.getData().getData().getName()); - conversation.setImgPath(result.getData().getData().getHeadImg()); - notifyItemChanged(postion); - } - } - - @Override - public void onHttpFail(Exception e) { - ToastUtils.showLong(e.getMessage()); - LogUtils.e("用户信息失败", "失败:" + e); - } - }); + UserInfoByServerUtil.getUserInfoByServer(getContext(), conversation.getConversation().getTargetId(), new UserInfoByServerUtil.UserInfoInterface() { + @Override + public void success(HttpData> result) { + if (postion == 0) { + LiveDataBus.get().with(Constants.MSG_LIST_SELECT_ITEM).postValue(0); + } + conversation.setFirstLoad(false); + if (null != result.getData() && result.getData().isInnerRequestSucceed() + && null != result.getData().getData()) { + conversation.setName(result.getData().getData().getName()); + conversation.setImgPath(result.getData().getData().getHeadImg()); + notifyItemChanged(postion); + } + } + + @Override + public void Fail(String e) { + ToastUtils.showLong(e); + LogUtils.e("用户信息失败", "失败:" + e); + } + }); } @Override diff --git a/app/src/main/java/com/unionmed/unionmedtv/utils/UserInfoByServerUtil.java b/app/src/main/java/com/unionmed/unionmedtv/utils/UserInfoByServerUtil.java new file mode 100644 index 0000000..86bbdc5 --- /dev/null +++ b/app/src/main/java/com/unionmed/unionmedtv/utils/UserInfoByServerUtil.java @@ -0,0 +1,50 @@ +package com.unionmed.unionmedtv.utils; + +import android.content.Context; +import android.text.TextUtils; +import android.widget.ImageView; +import android.widget.TextView; + +import androidx.lifecycle.LifecycleOwner; + +import com.blankj.utilcode.util.LogUtils; +import com.blankj.utilcode.util.StringUtils; +import com.blankj.utilcode.util.ToastUtils; +import com.bumptech.glide.Glide; +import com.bumptech.glide.request.RequestOptions; +import com.google.gson.Gson; +import com.hjq.http.EasyHttp; +import com.hjq.http.listener.OnHttpListener; +import com.tencent.mmkv.MMKV; +import com.unionmed.unionmedtv.R; +import com.unionmed.unionmedtv.api.GetImUserInfoApi; +import com.unionmed.unionmedtv.bean.City; +import com.unionmed.unionmedtv.bean.ImUserInfoBean; +import com.unionmed.unionmedtv.bean.TokenBean; +import com.unionmed.unionmedtv.network.ApiResponse; +import com.unionmed.unionmedtv.network.HttpData; + +import io.rong.imlib.model.Message; + +public class UserInfoByServerUtil { + //获取用户信息 + public static void getUserInfoByServer(Context context,String senderUserId, UserInfoInterface userInfoInterface) { + EasyHttp.post((LifecycleOwner) context) + .api(new GetImUserInfoApi(CacheUtil.getToken().getToken(), senderUserId)) + .request(new OnHttpListener>>() { + @Override + public void onHttpSuccess(HttpData> result) { + userInfoInterface.success(result); + } + + @Override + public void onHttpFail(Exception e) { + userInfoInterface.Fail(e.getMessage()); + } + }); + } + public interface UserInfoInterface{ + void success(HttpData> result); + void Fail(String E); + } +}