Merge remote-tracking branch 'origin/branch_new' into branch_new

This commit is contained in:
2025-12-04 23:11:17 +08:00
10 changed files with 73 additions and 28 deletions

View File

@@ -863,7 +863,7 @@ public interface ApiServer {
Call<BaseModel<String>> roomUserReconnect(@Field("room_id") String room_id); Call<BaseModel<String>> roomUserReconnect(@Field("room_id") String room_id);
@GET(Constants.GET_CP_ZONE) @GET(Constants.GET_CP_ZONE)
Call<BaseModel<HeartCpBean>> getCpRoom(@Query("user_id") String userId); Call<BaseModel<HeartCpBean>> getCpRoom(@Query("user_id") String userId,@Query("page")String page);
@GET(Constants.POST_MY_FAMILY) @GET(Constants.POST_MY_FAMILY)

View File

@@ -4607,8 +4607,8 @@ public class RetrofitClient {
} }
public void getCpRoom(String userId, BaseObserver<HeartCpBean> observer) { public void getCpRoom(String userId,int page, BaseObserver<HeartCpBean> observer) {
sApiServer.getCpRoom(userId).enqueue(new Callback<BaseModel<HeartCpBean>>() { sApiServer.getCpRoom(userId,page+"").enqueue(new Callback<BaseModel<HeartCpBean>>() {
@Override @Override
public void onResponse(Call<BaseModel<HeartCpBean>> call, Response<BaseModel<HeartCpBean>> response) { public void onResponse(Call<BaseModel<HeartCpBean>> call, Response<BaseModel<HeartCpBean>> response) {
if (response.code() == 200) { if (response.code() == 200) {

View File

@@ -80,6 +80,7 @@ public class RelationshipFragment extends BaseMvpDialogFragment<RoomUserPresente
queren(2, data.getId(), data.getDelete_me_coin()); queren(2, data.getId(), data.getDelete_me_coin());
} }
}); });
adapter.setuserId(userId);
} }
@@ -185,6 +186,7 @@ public class RelationshipFragment extends BaseMvpDialogFragment<RoomUserPresente
adapter.setNewData(list.getZhenai()); adapter.setNewData(list.getZhenai());
} }
} }
adapter.notifyDataSetChanged();
} }
} }

View File

@@ -2,6 +2,8 @@ package com.xscm.modulemain.activity.user.activity
import android.os.Bundle import android.os.Bundle
import com.alibaba.android.arouter.launcher.ARouter import com.alibaba.android.arouter.launcher.ARouter
import com.scwang.smartrefresh.layout.api.RefreshLayout
import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener
import com.xscm.modulemain.BaseMvpActivity import com.xscm.modulemain.BaseMvpActivity
import com.xscm.modulemain.R import com.xscm.modulemain.R
import com.xscm.modulemain.activity.user.conacts.HeartCpContact import com.xscm.modulemain.activity.user.conacts.HeartCpContact
@@ -38,6 +40,8 @@ class HeartCpActivity : BaseMvpActivity<HeartCpPresenter, ActivityHeartCpBinding
private var leftUserId: Int = 0 private var leftUserId: Int = 0
private var rightUserId: Int = 0 private var rightUserId: Int = 0
private var page: Int=1
override fun doDone() { override fun doDone() {
super.doDone() super.doDone()
userId = intent.getIntExtra("userId", 0) userId = intent.getIntExtra("userId", 0)
@@ -48,7 +52,7 @@ class HeartCpActivity : BaseMvpActivity<HeartCpPresenter, ActivityHeartCpBinding
if (userId == 0){ if (userId == 0){
userId=intent.getStringExtra("userId")?.toInt()!! userId=intent.getStringExtra("userId")?.toInt()!!
} }
MvpPre.getHeartCpData(userId) MvpPre.getHeartCpData(userId,page)
mBinding.ivBack.setOnClickListener { mBinding.ivBack.setOnClickListener {
finish() finish()
@@ -86,6 +90,19 @@ class HeartCpActivity : BaseMvpActivity<HeartCpPresenter, ActivityHeartCpBinding
finish() finish()
} }
mBinding.smartRefreshLayout.setOnRefreshLoadMoreListener(object :
OnRefreshLoadMoreListener {
override fun onLoadMore(refreshLayout: RefreshLayout) {
page++
MvpPre.getHeartCpData(userId,page)
}
override fun onRefresh(refreshLayout: RefreshLayout) {
page = 1 // 重置页码
MvpPre.getHeartCpData(userId,page)
}
})
} }
override fun initView() { override fun initView() {
@@ -96,6 +113,8 @@ class HeartCpActivity : BaseMvpActivity<HeartCpPresenter, ActivityHeartCpBinding
override fun getHeartCpData(heartCpBean: HeartCpBean?) { override fun getHeartCpData(heartCpBean: HeartCpBean?) {
mBinding.smartRefreshLayout.finishRefresh()
mBinding.smartRefreshLayout.finishLoadMore()
if (heartCpBean == null) { if (heartCpBean == null) {
return return
} }
@@ -122,7 +141,11 @@ class HeartCpActivity : BaseMvpActivity<HeartCpPresenter, ActivityHeartCpBinding
mBinding.tvExperience.text = xd.toString() mBinding.tvExperience.text = xd.toString()
} }
adapter?.setNewData(heartCpBean.gift_log) if (page == 1) {
adapter?.setNewData(heartCpBean.gift_log)
}else{
adapter?.addData(heartCpBean.gift_log)
}
val day = TimeUtils.formatDurationDaysOnly( val day = TimeUtils.formatDurationDaysOnly(
heartCpBean.createtime * 1000 - System.currentTimeMillis() heartCpBean.createtime * 1000 - System.currentTimeMillis()

View File

@@ -13,7 +13,7 @@ class HeartCpContact {
interface IPre : IPresenter { interface IPre : IPresenter {
fun getHeartCpData(userId: Int) fun getHeartCpData(userId: Int,page: Int)
} }
} }

View File

@@ -10,8 +10,8 @@ import java.lang.ref.WeakReference
class HeartCpPresenter(val view: HeartCpContact.View, context: Context) : class HeartCpPresenter(val view: HeartCpContact.View, context: Context) :
BasePresenter<HeartCpContact.View>(view, context), HeartCpContact.IPre { BasePresenter<HeartCpContact.View>(view, context), HeartCpContact.IPre {
override fun getHeartCpData(userId: Int) { override fun getHeartCpData(userId: Int,page:Int) {
api.getCpRoom(userId.toString(), object : BaseObserver<HeartCpBean>() { api.getCpRoom(userId.toString(),page, object : BaseObserver<HeartCpBean>() {
override fun onSubscribe(d: Disposable) { override fun onSubscribe(d: Disposable) {
addDisposable(d) addDisposable(d)

View File

@@ -14,6 +14,8 @@ import com.xscm.moduleutil.utils.TimeUtils;
public class RelationshipAdapter extends BaseQuickAdapter<RelationshipBean, com.chad.library.adapter.base.BaseViewHolder> { public class RelationshipAdapter extends BaseQuickAdapter<RelationshipBean, com.chad.library.adapter.base.BaseViewHolder> {
private String userId="";
private OnItemClickListener onItemClickListener; private OnItemClickListener onItemClickListener;
public RelationshipAdapter() { public RelationshipAdapter() {
@@ -27,14 +29,22 @@ public class RelationshipAdapter extends BaseQuickAdapter<RelationshipBean, com.
@Override @Override
protected void convert(com.chad.library.adapter.base.BaseViewHolder helper, RelationshipBean item) { protected void convert(com.chad.library.adapter.base.BaseViewHolder helper, RelationshipBean item) {
// ImageUtils.loadHeadCC(item.getAvatar1(), helper.getView(R.id.user_nav1));
MeHeadView meHeadView = helper.getView(R.id.user_nav1); MeHeadView meHeadView = helper.getView(R.id.user_nav1);
meHeadView.setSex(item.getSex1(),item.getAvatar1(),item.getDress1());
MeHeadView meHeadView2 = helper.getView(R.id.user_nav2); MeHeadView meHeadView2 = helper.getView(R.id.user_nav2);
meHeadView2.setSex(item.getSex2(),item.getAvatar2(),item.getDress2());
// ImageUtils.loadHeadCC(item.getAvatar2(), helper.getView(R.id.user_nav2)); if (userId.equals(item.getUser_id1()+"")){
helper.setText(R.id.tv_nickname1, item.getNickname1()); meHeadView.setSex(item.getSex1(),item.getAvatar1(),item.getDress1());
helper.setText(R.id.tv_nickname2, item.getNickname2()); meHeadView2.setSex(item.getSex2(),item.getAvatar2(),item.getDress2());
helper.setText(R.id.tv_nickname1, item.getNickname1());
helper.setText(R.id.tv_nickname2, item.getNickname2());
}else {
meHeadView2.setSex(item.getSex1(),item.getAvatar1(),item.getDress1());
meHeadView.setSex(item.getSex2(),item.getAvatar2(),item.getDress2());
helper.setText(R.id.tv_nickname2, item.getNickname1());
helper.setText(R.id.tv_nickname1, item.getNickname2());
}
helper.setText(R.id.tv_cp_num, TimeUtils.formatDuration2(Long.parseLong(item.getEnd_time()))); helper.setText(R.id.tv_cp_num, TimeUtils.formatDuration2(Long.parseLong(item.getEnd_time())));
if (item.getUser_id1()== SpUtil.getUserId() || item.getUser_id2() == SpUtil.getUserId()){ if (item.getUser_id1()== SpUtil.getUserId() || item.getUser_id2() == SpUtil.getUserId()){
helper.getView(R.id.icon_cp_zd).setVisibility(View.VISIBLE); helper.getView(R.id.icon_cp_zd).setVisibility(View.VISIBLE);
@@ -63,6 +73,10 @@ public class RelationshipAdapter extends BaseQuickAdapter<RelationshipBean, com.
}); });
} }
public void setuserId(String userId) {
this.userId= userId;
}
public interface OnItemClickListener { public interface OnItemClickListener {
void onItemClick(View view, RelationshipBean data, int position); void onItemClick(View view, RelationshipBean data, int position);
} }

View File

@@ -217,22 +217,29 @@
android:textSize="@dimen/sp_16" /> android:textSize="@dimen/sp_16" />
</LinearLayout> </LinearLayout>
<com.scwang.smartrefresh.layout.SmartRefreshLayout
<androidx.recyclerview.widget.RecyclerView android:id="@+id/smart_refresh_layout"
android:id="@+id/recycle_view"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:layout_marginTop="@dimen/dp_4"
android:clipChildren="false"
android:clipToPadding="false"
android:paddingHorizontal="@dimen/dp_16"
android:paddingBottom="@dimen/dp_100"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/iv_experience_bg" app:layout_constraintTop_toBottomOf="@id/iv_experience_bg"
app:spanCount="1" app:srlEnableLoadMore="true"
tools:listitem="@layout/item_heart_cp_layout" /> app:srlEnableRefresh="true">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_4"
android:clipChildren="false"
android:clipToPadding="false"
android:paddingHorizontal="@dimen/dp_16"
android:paddingBottom="@dimen/dp_100"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:spanCount="1"
tools:listitem="@layout/item_heart_cp_layout" />
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>

View File

@@ -168,7 +168,7 @@
android:layout_centerInParent="true" android:layout_centerInParent="true"
android:layout_marginStart="@dimen/dp_2" android:layout_marginStart="@dimen/dp_2"
android:layout_toEndOf="@+id/im_gf_t" android:layout_toEndOf="@+id/im_gf_t"
android:text="23" tools:text="23"
android:textColor="@color/color_FF666666" /> android:textColor="@color/color_FF666666" />
<TextView <TextView

View File

@@ -49,8 +49,7 @@
android:adjustViewBounds="true" android:adjustViewBounds="true"
android:scaleType="fitCenter" android:scaleType="fitCenter"
android:visibility="gone" android:visibility="gone"
app:layout_constraintWidth_percent="1.1" app:layout_constraintDimensionRatio="1:1"
app:layout_constraintHeight_percent="0.9"
app:layout_constraintBottom_toBottomOf="@id/riv" app:layout_constraintBottom_toBottomOf="@id/riv"
app:layout_constraintEnd_toEndOf="@id/riv" app:layout_constraintEnd_toEndOf="@id/riv"
app:layout_constraintStart_toStartOf="@id/riv" app:layout_constraintStart_toStartOf="@id/riv"