From 0ca0a395cd92cfa5889200c82621a4e2edd189fd Mon Sep 17 00:00:00 2001 From: fengjignqi <15192412330@163.com> Date: Wed, 27 May 2026 08:52:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=92=E7=A8=8B=E7=BC=96=E8=BE=91=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ckkj/water/network/Request.java | 2 +- .../ckkj/water/plan/AddWaterPlanActivity.java | 46 +++++++++++----- .../ckkj/water/plan/PlanDetailActivity.java | 9 +++- .../ckkj/water/plan/WaterPlanFragment.java | 53 +++++++++++++++++-- .../ckkj/water/plan/mvp/WaterPlanImpl.java | 2 +- .../water/plan/mvp/WaterPlanPresenter.java | 5 +- .../main/res/layout/water_plan_fragment.xml | 46 +++++++++++++--- 7 files changed, 132 insertions(+), 31 deletions(-) diff --git a/app/src/main/java/com/ckkj/water/network/Request.java b/app/src/main/java/com/ckkj/water/network/Request.java index a6e6934..5bf702a 100644 --- a/app/src/main/java/com/ckkj/water/network/Request.java +++ b/app/src/main/java/com/ckkj/water/network/Request.java @@ -70,7 +70,7 @@ public interface Request { //查询排程列表 @GET("app/v1/schedulelist") - Observable>> scheduleList(@HeaderMap Map headMap); + Observable>> scheduleList(@HeaderMap Map headMap,@QueryMap Map map); //添加排程信息 diff --git a/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java b/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java index a31df0a..3873a7a 100644 --- a/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java +++ b/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java @@ -118,9 +118,31 @@ public class AddWaterPlanActivity extends BaseActivity mList = new ArrayList<>(); + @Override + protected void onResume() { + super.onResume(); + showLoadingDialog(); + mPresenter.getPlanDetailInfo(mPlanEntity); + } + @Override public void initData(Bundle savedInstanceState) { super.initData(savedInstanceState); @@ -50,8 +57,6 @@ public class PlanDetailActivity extends BaseActivity mPlanList = new ArrayList<>(); private WaterPlanListAdapter mAdapter; + private int mCurrentPage = 1; @Override public void initData(Bundle state) { @@ -44,7 +47,6 @@ public class WaterPlanFragment extends BaseFragment { + mCurrentPage = 1; + mPresenter.getWaterPlanList(mCurrentPage); + }); + viewBinding.refresh.setOnLoadMoreListener(layout -> { + mCurrentPage++; + mPresenter.getWaterPlanList(mCurrentPage); + }); } + @Override + protected void onResumeInitData() { + super.onResumeInitData(); + showLoadingDialog(); + mPresenter.getWaterPlanList(mCurrentPage); + } private void initListener() { setClick(viewBinding.tvAdd); @@ -78,9 +95,35 @@ public class WaterPlanFragment extends BaseFragment list,int total) { + hideDialogLoading(); - mPlanList = list; - mAdapter.setNewData(list); + viewBinding.refresh.finishRefresh(300); + viewBinding.refresh.finishLoadMore(300); + if (mCurrentPage == 1) { + mPlanList.clear(); // 只在刷新时清除 + mPlanList = list; + } else { + mPlanList.addAll(list); + } + mAdapter.setNewData(mPlanList); + // 4. 判断是否还有更多数据 + if (total == mAdapter.getItemCount() || list == null || list.size() == 0) { + // ✅ 告诉 SmartRefreshLayout 没有更多数据了 + viewBinding.refresh.setNoMoreData(true); + viewBinding.relNoMore.setVisibility(View.VISIBLE); // 自定义底部提示“暂无更多数据” + } else { + viewBinding.refresh.setNoMoreData(false); // 重置状态 + viewBinding.relNoMore.setVisibility(View.GONE); + } + + // 5. 控制空布局和内容显示 + if (mAdapter.getItemCount() != 0) { + viewBinding.refresh.setVisibility(View.VISIBLE); + viewBinding.relNoresult.setVisibility(View.GONE); + } else { + viewBinding.refresh.setVisibility(View.GONE); + viewBinding.relNoresult.setVisibility(View.VISIBLE); + } } diff --git a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java index 06805cf..f3a003f 100644 --- a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java +++ b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java @@ -25,7 +25,7 @@ public class WaterPlanImpl implements WaterPlanContract.DataModel{ */ @Override public void getWaterConfigList(Map map, WaterPlanContract.CallBack callBack) { - NetWorkManager.getRequest().scheduleList(NetWorkManager.getToken()) + NetWorkManager.getRequest().scheduleList(NetWorkManager.getToken(),map) .subscribeOn(Schedulers.io()) .unsubscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) diff --git a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java index dfa66f1..87fc180 100644 --- a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java +++ b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java @@ -2,7 +2,6 @@ package com.ckkj.water.plan.mvp; import com.ckkj.water.base.BasePresenter; import com.ckkj.water.index.entity.WaterDeviceEntity; -import com.ckkj.water.network.BaseBean; import com.ckkj.water.plan.entity.WaterPlanWeekEntity; import org.json.JSONArray; @@ -24,8 +23,10 @@ public class WaterPlanPresenter extends BasePresenter map = new HashMap<>(); + map.put("pageNum", mCurrentPage + ""); + map.put("pageSize", "10"); impl.getWaterConfigList(map, new WaterPlanContract.CallBack>() { @Override diff --git a/app/src/main/res/layout/water_plan_fragment.xml b/app/src/main/res/layout/water_plan_fragment.xml index a697e78..5864c96 100644 --- a/app/src/main/res/layout/water_plan_fragment.xml +++ b/app/src/main/res/layout/water_plan_fragment.xml @@ -56,12 +56,44 @@ android:gravity="center"/> - + android:layout_height="match_parent"> + + + + + + + + + + + + + + \ No newline at end of file