Commit 5658fb94 authored by 小费同学阿's avatar 小费同学阿 💬 Committed by 杨秀秀

商户App+企业app 消息列表+未读点击改变状态位+消息详情完成(ui待细调)

parent 82f23d79
package com.xx.merchanthbh.activity.adapter;
import android.content.Context;
import android.util.Log;
import com.xx.merchanthbh.R;
import com.xx.merchanthbh.data.http.respons.MessageBean;
import com.xx.merchanthbh.databinding.ItemMessageListBinding;
import com.xx.xxviewlibrary.base.xxBaseRecyclerViewAdapter;
public class MessageListAdapter extends xxBaseRecyclerViewAdapter<ItemMessageListBinding, MessageBean> {
public MessageListAdapter(Context context) {
super(context);
}
/*加载积分布局*/
@Override
public int initLayout() {
return R.layout.item_message_list;
}
@Override
protected void covert(ItemMessageListBinding dataBind, MessageBean data, int position) {
// 将接口调出来的布局遍历上去
dataBind.setMessageBean(data);
Log.v("积分订单列表的重要信息:", String.valueOf(data));
}
}
...@@ -5,6 +5,7 @@ import com.xx.merchanthbh.data.http.respons.BoothBean ...@@ -5,6 +5,7 @@ import com.xx.merchanthbh.data.http.respons.BoothBean
import com.xx.merchanthbh.data.http.respons.MessageBean import com.xx.merchanthbh.data.http.respons.MessageBean
import com.xx.merchanthbh.data.http.respons.OrderBean import com.xx.merchanthbh.data.http.respons.OrderBean
import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.core.Observable
import me.goldze.mvvmhabit.http.ApiParams
import me.goldze.mvvmhabit.http.BasePageResponse import me.goldze.mvvmhabit.http.BasePageResponse
import me.goldze.mvvmhabit.http.BaseResponse import me.goldze.mvvmhabit.http.BaseResponse
...@@ -15,4 +16,13 @@ class MessageRequest : BaseRespons() { ...@@ -15,4 +16,13 @@ class MessageRequest : BaseRespons() {
fun getMessageList(flag: String): Observable<BasePageResponse<MessageBean>> { fun getMessageList(flag: String): Observable<BasePageResponse<MessageBean>> {
return apiService.getMessageList(flag) return apiService.getMessageList(flag)
} }
/**
* 改变消息状态位
*/
fun putMessageStaticUpdate(businessId:String):Observable<BaseResponse<Boolean>>
{
return apiService.putMessageStaticUpdate(ApiParams<MessageStaticUpdateBody>().setParams(MessageStaticUpdateBody(businessId,"1")))
}
data class MessageStaticUpdateBody(val businessId:String, val flag:String )
} }
\ No newline at end of file
...@@ -17,6 +17,7 @@ import io.reactivex.rxjava3.annotations.NonNull; ...@@ -17,6 +17,7 @@ import io.reactivex.rxjava3.annotations.NonNull;
import io.reactivex.rxjava3.disposables.Disposable; import io.reactivex.rxjava3.disposables.Disposable;
import io.reactivex.rxjava3.functions.Consumer; import io.reactivex.rxjava3.functions.Consumer;
import me.goldze.mvvmhabit.base.BaseViewModel; import me.goldze.mvvmhabit.base.BaseViewModel;
import me.goldze.mvvmhabit.http.ApiDisposableObserver;
import me.goldze.mvvmhabit.http.ApiDisposablePageObserver; import me.goldze.mvvmhabit.http.ApiDisposablePageObserver;
import me.goldze.mvvmhabit.utils.RxUtils; import me.goldze.mvvmhabit.utils.RxUtils;
...@@ -24,6 +25,7 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> { ...@@ -24,6 +25,7 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> {
// 创建消息列表实体对象 // 创建消息列表实体对象
public MutableLiveData<List<MessageBean>> messageList = new MutableLiveData<>(new ArrayList<>()); public MutableLiveData<List<MessageBean>> messageList = new MutableLiveData<>(new ArrayList<>());
public MessageViewModel(@NonNull Application application) { public MessageViewModel(@NonNull Application application) {
super(application); super(application);
} }
...@@ -31,8 +33,10 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> { ...@@ -31,8 +33,10 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> {
public MessageViewModel(@NonNull Application application, MessageRequest model) { public MessageViewModel(@NonNull Application application, MessageRequest model) {
super(application, model); super(application, model);
} }
/*设置消息初始状态是0*/ /*设置消息初始状态是0*/
public String flag="0"; public String flag = "0";
//调用消息列表的接口信息 //调用消息列表的接口信息
public void getMessageList() { public void getMessageList() {
model.getMessageList(flag) model.getMessageList(flag)
...@@ -60,6 +64,7 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> { ...@@ -60,6 +64,7 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> {
} }
}); });
} }
/*跳转消息详情页面*/ /*跳转消息详情页面*/
public void goMessageDetail(MessageListAdapter messageListAdapter, int position) { public void goMessageDetail(MessageListAdapter messageListAdapter, int position) {
/*创建bundle*/ /*创建bundle*/
...@@ -72,8 +77,28 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> { ...@@ -72,8 +77,28 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> {
bundle.putString("messageContent", messageListAdapter.mList.get(position).getMessageContent()); bundle.putString("messageContent", messageListAdapter.mList.get(position).getMessageContent());
/*连带参数一块跳转到详情页*/ /*连带参数一块跳转到详情页*/
startActivity(MessageDetailActivity.class, bundle); startActivity(MessageDetailActivity.class, bundle);
/*未读的状态点进去调取接口改变状态位*/
if (messageListAdapter.mList.get(position).getFlag().equals("0")) {
model.putMessageStaticUpdate(messageListAdapter.mList.get(position).getBusinessId()).compose(RxUtils.schedulersTransformer()) //线程调度
// .compose(RxUtils.exceptionTransformer()) // 网络错误的异常转换, 这里可以换成自己的ExceptionHandle
.doOnSubscribe(MessageViewModel.this)
.doOnSubscribe(new Consumer<Disposable>() {
@Override
public void accept(Disposable disposable) throws Exception {
}
}).subscribe(new ApiDisposableObserver<Boolean>() {
@Override
public void onSuccess(Boolean resultBean) {
} }
@Override
public void onError(String Error) {
}
});
}
}
} }
...@@ -3,7 +3,9 @@ package com.xx.hbhbcompany.data.http.requst ...@@ -3,7 +3,9 @@ package com.xx.hbhbcompany.data.http.requst
import com.xx.hbhbcompany.data.http.BaseRespons import com.xx.hbhbcompany.data.http.BaseRespons
import com.xx.hbhbcompany.data.http.respons.MessageBean import com.xx.hbhbcompany.data.http.respons.MessageBean
import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.core.Observable
import me.goldze.mvvmhabit.http.ApiParams
import me.goldze.mvvmhabit.http.BasePageResponse import me.goldze.mvvmhabit.http.BasePageResponse
import me.goldze.mvvmhabit.http.BaseResponse
class MessageRequest : BaseRespons() { class MessageRequest : BaseRespons() {
/** /**
...@@ -12,4 +14,12 @@ class MessageRequest : BaseRespons() { ...@@ -12,4 +14,12 @@ class MessageRequest : BaseRespons() {
fun getMessageList(flag: String): Observable<BasePageResponse<MessageBean>> { fun getMessageList(flag: String): Observable<BasePageResponse<MessageBean>> {
return apiService.getMessageList(flag) return apiService.getMessageList(flag)
} }
/**
* 改变消息状态位
*/
fun putMessageStaticUpdate(businessId:String):Observable<BaseResponse<Boolean>>
{
return apiService.putMessageStaticUpdate(ApiParams<MessageStaticUpdateBody>().setParams(MessageStaticUpdateBody(businessId,"1")))
}
data class MessageStaticUpdateBody(val businessId:String, val flag:String )
} }
\ No newline at end of file
...@@ -16,6 +16,7 @@ import java.util.List; ...@@ -16,6 +16,7 @@ import java.util.List;
import io.reactivex.rxjava3.disposables.Disposable; import io.reactivex.rxjava3.disposables.Disposable;
import io.reactivex.rxjava3.functions.Consumer; import io.reactivex.rxjava3.functions.Consumer;
import me.goldze.mvvmhabit.base.BaseViewModel; import me.goldze.mvvmhabit.base.BaseViewModel;
import me.goldze.mvvmhabit.http.ApiDisposableObserver;
import me.goldze.mvvmhabit.http.ApiDisposablePageObserver; import me.goldze.mvvmhabit.http.ApiDisposablePageObserver;
import me.goldze.mvvmhabit.utils.RxUtils; import me.goldze.mvvmhabit.utils.RxUtils;
...@@ -72,6 +73,27 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> { ...@@ -72,6 +73,27 @@ public class MessageViewModel extends BaseViewModel<MessageRequest> {
bundle.putString("messageContent", messageListAdapter.mList.get(position).getMessageContent()); bundle.putString("messageContent", messageListAdapter.mList.get(position).getMessageContent());
/*连带参数一块跳转到详情页*/ /*连带参数一块跳转到详情页*/
startActivity(MessageDetailActivity.class, bundle); startActivity(MessageDetailActivity.class, bundle);
/*未读的状态点进去调取接口改变状态位*/
if (messageListAdapter.mList.get(position).getFlag().equals("0")) {
model.putMessageStaticUpdate(messageListAdapter.mList.get(position).getBusinessId()).compose(RxUtils.schedulersTransformer()) //线程调度
// .compose(RxUtils.exceptionTransformer()) // 网络错误的异常转换, 这里可以换成自己的ExceptionHandle
.doOnSubscribe(MessageViewModel.this)
.doOnSubscribe(new Consumer<Disposable>() {
@Override
public void accept(Disposable disposable) throws Exception {
}
}).subscribe(new ApiDisposableObserver<Boolean>() {
@Override
public void onSuccess(Boolean resultBean) {
}
@Override
public void onError(String Error) {
}
});
}
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment