diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index 91cd135..40d74ed 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -586,7 +586,7 @@ /** * 桥梁养护记录 */ - public static Observable getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index 91cd135..40d74ed 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -586,7 +586,7 @@ /** * 桥梁养护记录 */ - public static Observable getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java index f7827e6..76d3dd6 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java @@ -31,6 +31,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder; @@ -39,19 +40,21 @@ public class BridgeMaintainActivity extends AndroidxBaseActivity { private static final String TAG = "BridgeMaintainActivity"; - private final Context context = BridgeMaintainActivity.this; + private final Context context = this; private BridgeViewModel bridgeViewModel; private String bridgeId = ""; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - - binding.titleBarLayout.titleView.setText("路桥养护"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); - binding.titleBarLayout.rightImageView.setOnClickListener(new View.OnClickListener() { + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { @Override - public void onClick(View v) { + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { ContextKit.navigatePageTo(context, MaintainRecordActivity.class); } }); diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index 91cd135..40d74ed 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -586,7 +586,7 @@ /** * 桥梁养护记录 */ - public static Observable getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java index f7827e6..76d3dd6 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java @@ -31,6 +31,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder; @@ -39,19 +40,21 @@ public class BridgeMaintainActivity extends AndroidxBaseActivity { private static final String TAG = "BridgeMaintainActivity"; - private final Context context = BridgeMaintainActivity.this; + private final Context context = this; private BridgeViewModel bridgeViewModel; private String bridgeId = ""; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - - binding.titleBarLayout.titleView.setText("路桥养护"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); - binding.titleBarLayout.rightImageView.setOnClickListener(new View.OnClickListener() { + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { @Override - public void onClick(View v) { + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { ContextKit.navigatePageTo(context, MaintainRecordActivity.class); } }); diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java index 2b7b698..629c75f 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java @@ -4,6 +4,7 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.text.TextUtils; import android.view.View; @@ -26,6 +27,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnRefreshListener; @@ -33,23 +35,30 @@ import java.util.ArrayList; import java.util.List; -public class MaintainRecordActivity extends AndroidxBaseActivity { - - private final Context context = MaintainRecordActivity.this; +public class MaintainRecordActivity extends AndroidxBaseActivity implements Handler.Callback { + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); private BridgeViewModel bridgeViewModel; private List dataBeans = new ArrayList<>(); - private WeakReferenceHandler weakReferenceHandler; private NormalRecyclerAdapter adapter; - private int pageIndex = 1; + private int page = 1; private boolean isRefresh = false; private boolean isLoadMore = false; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } - binding.titleBarLayout.titleView.setText("桥梁养护记录"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); + @Override + public void onRightClick() { + + } + }); } @Override @@ -57,10 +66,12 @@ bridgeViewModel.loadState.observe(this, new Observer() { @Override public void onChanged(LoadState loadState) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); - } else { - LoadingDialog.dismiss(); + if (!isRefresh && !isLoadMore) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); + } else { + LoadingDialog.dismiss(); + } } } }); @@ -68,7 +79,6 @@ @Override protected void initOnCreate(@Nullable Bundle savedInstanceState) { - weakReferenceHandler = new WeakReferenceHandler(callback); bridgeViewModel = new ViewModelProvider(this).get(BridgeViewModel.class); bridgeViewModel.recordModel.observe(this, new Observer() { @Override @@ -93,12 +103,6 @@ } } }); - } - - @Override - protected void onResume() { - super.onResume(); - pageIndex = 1; getMaintainRecord("", ""); } @@ -112,7 +116,7 @@ public void onDateRangeSelected(String startDate, String endDate) { binding.dateView.setText(startDate + "~" + endDate); - pageIndex = 1; + page = 1; getMaintainRecord(startDate, endDate); } }).build().show(); @@ -123,7 +127,7 @@ public void onRefresh(@NonNull RefreshLayout refreshLayout) { isRefresh = true; //刷新之后页码重置 - pageIndex = 1; + page = 1; getMaintainRecord("", ""); } }); @@ -131,26 +135,21 @@ @Override public void onLoadMore(@NonNull RefreshLayout refreshLayout) { isLoadMore = true; - pageIndex++; + page++; getMaintainRecord("", ""); } }); } private void getMaintainRecord(String start, String end) { - bridgeViewModel.getMaintainRecord(this, start, end, pageIndex); + bridgeViewModel.getMaintainRecord(this, start, end, page); } - private final Handler.Callback callback = msg -> { + @Override + public boolean handleMessage(@NonNull Message msg) { if (msg.what == 20210622) { if (dataBeans.size() == 0) { - binding.emptyView.show(false, "抱歉,没有查到相关养护记录", null, "刷新", new View.OnClickListener() { - @Override - public void onClick(View v) { - pageIndex = 1; - getMaintainRecord("", ""); - } - }); + binding.emptyView.show(null, "抱歉,没有查到相关养护记录"); } else { binding.emptyView.hide(); adapter = new NormalRecyclerAdapter(R.layout.item_maintain_rv_l, dataBeans) { @@ -173,10 +172,10 @@ .setText(R.id.maintainTimeView, item.getMaintainTimeStr()); } }; - binding.recordRecyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recordRecyclerView.setAdapter(adapter); + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); } } return true; - }; + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index 91cd135..40d74ed 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -586,7 +586,7 @@ /** * 桥梁养护记录 */ - public static Observable getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java index f7827e6..76d3dd6 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java @@ -31,6 +31,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder; @@ -39,19 +40,21 @@ public class BridgeMaintainActivity extends AndroidxBaseActivity { private static final String TAG = "BridgeMaintainActivity"; - private final Context context = BridgeMaintainActivity.this; + private final Context context = this; private BridgeViewModel bridgeViewModel; private String bridgeId = ""; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - - binding.titleBarLayout.titleView.setText("路桥养护"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); - binding.titleBarLayout.rightImageView.setOnClickListener(new View.OnClickListener() { + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { @Override - public void onClick(View v) { + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { ContextKit.navigatePageTo(context, MaintainRecordActivity.class); } }); diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java index 2b7b698..629c75f 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java @@ -4,6 +4,7 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.text.TextUtils; import android.view.View; @@ -26,6 +27,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnRefreshListener; @@ -33,23 +35,30 @@ import java.util.ArrayList; import java.util.List; -public class MaintainRecordActivity extends AndroidxBaseActivity { - - private final Context context = MaintainRecordActivity.this; +public class MaintainRecordActivity extends AndroidxBaseActivity implements Handler.Callback { + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); private BridgeViewModel bridgeViewModel; private List dataBeans = new ArrayList<>(); - private WeakReferenceHandler weakReferenceHandler; private NormalRecyclerAdapter adapter; - private int pageIndex = 1; + private int page = 1; private boolean isRefresh = false; private boolean isLoadMore = false; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } - binding.titleBarLayout.titleView.setText("桥梁养护记录"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); + @Override + public void onRightClick() { + + } + }); } @Override @@ -57,10 +66,12 @@ bridgeViewModel.loadState.observe(this, new Observer() { @Override public void onChanged(LoadState loadState) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); - } else { - LoadingDialog.dismiss(); + if (!isRefresh && !isLoadMore) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); + } else { + LoadingDialog.dismiss(); + } } } }); @@ -68,7 +79,6 @@ @Override protected void initOnCreate(@Nullable Bundle savedInstanceState) { - weakReferenceHandler = new WeakReferenceHandler(callback); bridgeViewModel = new ViewModelProvider(this).get(BridgeViewModel.class); bridgeViewModel.recordModel.observe(this, new Observer() { @Override @@ -93,12 +103,6 @@ } } }); - } - - @Override - protected void onResume() { - super.onResume(); - pageIndex = 1; getMaintainRecord("", ""); } @@ -112,7 +116,7 @@ public void onDateRangeSelected(String startDate, String endDate) { binding.dateView.setText(startDate + "~" + endDate); - pageIndex = 1; + page = 1; getMaintainRecord(startDate, endDate); } }).build().show(); @@ -123,7 +127,7 @@ public void onRefresh(@NonNull RefreshLayout refreshLayout) { isRefresh = true; //刷新之后页码重置 - pageIndex = 1; + page = 1; getMaintainRecord("", ""); } }); @@ -131,26 +135,21 @@ @Override public void onLoadMore(@NonNull RefreshLayout refreshLayout) { isLoadMore = true; - pageIndex++; + page++; getMaintainRecord("", ""); } }); } private void getMaintainRecord(String start, String end) { - bridgeViewModel.getMaintainRecord(this, start, end, pageIndex); + bridgeViewModel.getMaintainRecord(this, start, end, page); } - private final Handler.Callback callback = msg -> { + @Override + public boolean handleMessage(@NonNull Message msg) { if (msg.what == 20210622) { if (dataBeans.size() == 0) { - binding.emptyView.show(false, "抱歉,没有查到相关养护记录", null, "刷新", new View.OnClickListener() { - @Override - public void onClick(View v) { - pageIndex = 1; - getMaintainRecord("", ""); - } - }); + binding.emptyView.show(null, "抱歉,没有查到相关养护记录"); } else { binding.emptyView.hide(); adapter = new NormalRecyclerAdapter(R.layout.item_maintain_rv_l, dataBeans) { @@ -173,10 +172,10 @@ .setText(R.id.maintainTimeView, item.getMaintainTimeStr()); } }; - binding.recordRecyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recordRecyclerView.setAdapter(adapter); + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); } } return true; - }; + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java index 89d406a..23da6e9 100644 --- a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java +++ b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java @@ -62,7 +62,7 @@ public void getMaintainRecord(Context context, String startDate, String endDate, int offset) { loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getMaintainRecordResult(startDate, endDate, offset); + Observable observable = RetrofitServiceManager.getMaintainRecord(startDate, endDate, offset); ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { @Override public void onCompleted() { diff --git a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java index 91cd135..40d74ed 100644 --- a/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java +++ b/app/src/main/java/com/casic/dcms/utils/retrofit/RetrofitServiceManager.java @@ -586,7 +586,7 @@ /** * 桥梁养护记录 */ - public static Observable getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java index f7827e6..76d3dd6 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java @@ -31,6 +31,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder; @@ -39,19 +40,21 @@ public class BridgeMaintainActivity extends AndroidxBaseActivity { private static final String TAG = "BridgeMaintainActivity"; - private final Context context = BridgeMaintainActivity.this; + private final Context context = this; private BridgeViewModel bridgeViewModel; private String bridgeId = ""; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - - binding.titleBarLayout.titleView.setText("路桥养护"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); - binding.titleBarLayout.rightImageView.setOnClickListener(new View.OnClickListener() { + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { @Override - public void onClick(View v) { + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { ContextKit.navigatePageTo(context, MaintainRecordActivity.class); } }); diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java index 2b7b698..629c75f 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java @@ -4,6 +4,7 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.text.TextUtils; import android.view.View; @@ -26,6 +27,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnRefreshListener; @@ -33,23 +35,30 @@ import java.util.ArrayList; import java.util.List; -public class MaintainRecordActivity extends AndroidxBaseActivity { - - private final Context context = MaintainRecordActivity.this; +public class MaintainRecordActivity extends AndroidxBaseActivity implements Handler.Callback { + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); private BridgeViewModel bridgeViewModel; private List dataBeans = new ArrayList<>(); - private WeakReferenceHandler weakReferenceHandler; private NormalRecyclerAdapter adapter; - private int pageIndex = 1; + private int page = 1; private boolean isRefresh = false; private boolean isLoadMore = false; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } - binding.titleBarLayout.titleView.setText("桥梁养护记录"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); + @Override + public void onRightClick() { + + } + }); } @Override @@ -57,10 +66,12 @@ bridgeViewModel.loadState.observe(this, new Observer() { @Override public void onChanged(LoadState loadState) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); - } else { - LoadingDialog.dismiss(); + if (!isRefresh && !isLoadMore) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); + } else { + LoadingDialog.dismiss(); + } } } }); @@ -68,7 +79,6 @@ @Override protected void initOnCreate(@Nullable Bundle savedInstanceState) { - weakReferenceHandler = new WeakReferenceHandler(callback); bridgeViewModel = new ViewModelProvider(this).get(BridgeViewModel.class); bridgeViewModel.recordModel.observe(this, new Observer() { @Override @@ -93,12 +103,6 @@ } } }); - } - - @Override - protected void onResume() { - super.onResume(); - pageIndex = 1; getMaintainRecord("", ""); } @@ -112,7 +116,7 @@ public void onDateRangeSelected(String startDate, String endDate) { binding.dateView.setText(startDate + "~" + endDate); - pageIndex = 1; + page = 1; getMaintainRecord(startDate, endDate); } }).build().show(); @@ -123,7 +127,7 @@ public void onRefresh(@NonNull RefreshLayout refreshLayout) { isRefresh = true; //刷新之后页码重置 - pageIndex = 1; + page = 1; getMaintainRecord("", ""); } }); @@ -131,26 +135,21 @@ @Override public void onLoadMore(@NonNull RefreshLayout refreshLayout) { isLoadMore = true; - pageIndex++; + page++; getMaintainRecord("", ""); } }); } private void getMaintainRecord(String start, String end) { - bridgeViewModel.getMaintainRecord(this, start, end, pageIndex); + bridgeViewModel.getMaintainRecord(this, start, end, page); } - private final Handler.Callback callback = msg -> { + @Override + public boolean handleMessage(@NonNull Message msg) { if (msg.what == 20210622) { if (dataBeans.size() == 0) { - binding.emptyView.show(false, "抱歉,没有查到相关养护记录", null, "刷新", new View.OnClickListener() { - @Override - public void onClick(View v) { - pageIndex = 1; - getMaintainRecord("", ""); - } - }); + binding.emptyView.show(null, "抱歉,没有查到相关养护记录"); } else { binding.emptyView.hide(); adapter = new NormalRecyclerAdapter(R.layout.item_maintain_rv_l, dataBeans) { @@ -173,10 +172,10 @@ .setText(R.id.maintainTimeView, item.getMaintainTimeStr()); } }; - binding.recordRecyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recordRecyclerView.setAdapter(adapter); + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); } } return true; - }; + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java index 89d406a..23da6e9 100644 --- a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java +++ b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java @@ -62,7 +62,7 @@ public void getMaintainRecord(Context context, String startDate, String endDate, int offset) { loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getMaintainRecordResult(startDate, endDate, offset); + Observable observable = RetrofitServiceManager.getMaintainRecord(startDate, endDate, offset); ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { @Override public void onCompleted() { diff --git a/app/src/main/res/drawable/ic_search.xml b/app/src/main/res/drawable/ic_search.xml index ddf926b..e501b27 100644 --- a/app/src/main/res/drawable/ic_search.xml +++ b/app/src/main/res/drawable/ic_search.xml @@ -1,6 +1,6 @@ getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java index f7827e6..76d3dd6 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java @@ -31,6 +31,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder; @@ -39,19 +40,21 @@ public class BridgeMaintainActivity extends AndroidxBaseActivity { private static final String TAG = "BridgeMaintainActivity"; - private final Context context = BridgeMaintainActivity.this; + private final Context context = this; private BridgeViewModel bridgeViewModel; private String bridgeId = ""; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - - binding.titleBarLayout.titleView.setText("路桥养护"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); - binding.titleBarLayout.rightImageView.setOnClickListener(new View.OnClickListener() { + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { @Override - public void onClick(View v) { + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { ContextKit.navigatePageTo(context, MaintainRecordActivity.class); } }); diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java index 2b7b698..629c75f 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java @@ -4,6 +4,7 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.text.TextUtils; import android.view.View; @@ -26,6 +27,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnRefreshListener; @@ -33,23 +35,30 @@ import java.util.ArrayList; import java.util.List; -public class MaintainRecordActivity extends AndroidxBaseActivity { - - private final Context context = MaintainRecordActivity.this; +public class MaintainRecordActivity extends AndroidxBaseActivity implements Handler.Callback { + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); private BridgeViewModel bridgeViewModel; private List dataBeans = new ArrayList<>(); - private WeakReferenceHandler weakReferenceHandler; private NormalRecyclerAdapter adapter; - private int pageIndex = 1; + private int page = 1; private boolean isRefresh = false; private boolean isLoadMore = false; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } - binding.titleBarLayout.titleView.setText("桥梁养护记录"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); + @Override + public void onRightClick() { + + } + }); } @Override @@ -57,10 +66,12 @@ bridgeViewModel.loadState.observe(this, new Observer() { @Override public void onChanged(LoadState loadState) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); - } else { - LoadingDialog.dismiss(); + if (!isRefresh && !isLoadMore) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); + } else { + LoadingDialog.dismiss(); + } } } }); @@ -68,7 +79,6 @@ @Override protected void initOnCreate(@Nullable Bundle savedInstanceState) { - weakReferenceHandler = new WeakReferenceHandler(callback); bridgeViewModel = new ViewModelProvider(this).get(BridgeViewModel.class); bridgeViewModel.recordModel.observe(this, new Observer() { @Override @@ -93,12 +103,6 @@ } } }); - } - - @Override - protected void onResume() { - super.onResume(); - pageIndex = 1; getMaintainRecord("", ""); } @@ -112,7 +116,7 @@ public void onDateRangeSelected(String startDate, String endDate) { binding.dateView.setText(startDate + "~" + endDate); - pageIndex = 1; + page = 1; getMaintainRecord(startDate, endDate); } }).build().show(); @@ -123,7 +127,7 @@ public void onRefresh(@NonNull RefreshLayout refreshLayout) { isRefresh = true; //刷新之后页码重置 - pageIndex = 1; + page = 1; getMaintainRecord("", ""); } }); @@ -131,26 +135,21 @@ @Override public void onLoadMore(@NonNull RefreshLayout refreshLayout) { isLoadMore = true; - pageIndex++; + page++; getMaintainRecord("", ""); } }); } private void getMaintainRecord(String start, String end) { - bridgeViewModel.getMaintainRecord(this, start, end, pageIndex); + bridgeViewModel.getMaintainRecord(this, start, end, page); } - private final Handler.Callback callback = msg -> { + @Override + public boolean handleMessage(@NonNull Message msg) { if (msg.what == 20210622) { if (dataBeans.size() == 0) { - binding.emptyView.show(false, "抱歉,没有查到相关养护记录", null, "刷新", new View.OnClickListener() { - @Override - public void onClick(View v) { - pageIndex = 1; - getMaintainRecord("", ""); - } - }); + binding.emptyView.show(null, "抱歉,没有查到相关养护记录"); } else { binding.emptyView.hide(); adapter = new NormalRecyclerAdapter(R.layout.item_maintain_rv_l, dataBeans) { @@ -173,10 +172,10 @@ .setText(R.id.maintainTimeView, item.getMaintainTimeStr()); } }; - binding.recordRecyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recordRecyclerView.setAdapter(adapter); + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); } } return true; - }; + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java index 89d406a..23da6e9 100644 --- a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java +++ b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java @@ -62,7 +62,7 @@ public void getMaintainRecord(Context context, String startDate, String endDate, int offset) { loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getMaintainRecordResult(startDate, endDate, offset); + Observable observable = RetrofitServiceManager.getMaintainRecord(startDate, endDate, offset); ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { @Override public void onCompleted() { diff --git a/app/src/main/res/drawable/ic_search.xml b/app/src/main/res/drawable/ic_search.xml index ddf926b..e501b27 100644 --- a/app/src/main/res/drawable/ic_search.xml +++ b/app/src/main/res/drawable/ic_search.xml @@ -1,6 +1,6 @@ - + getMaintainRecordResult(String startDate, String endDate, int offset) { + public static Observable getMaintainRecord(String startDate, String endDate, int offset) { return api.getMaintainRecord(AuthenticationHelper.getToken(), startDate, endDate, LocaleConstant.PAGE_LIMIT, offset); } diff --git a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java index f7827e6..76d3dd6 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/BridgeMaintainActivity.java @@ -31,6 +31,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.SaveKeyValues; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet; import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet.BottomListSheetBuilder; @@ -39,19 +40,21 @@ public class BridgeMaintainActivity extends AndroidxBaseActivity { private static final String TAG = "BridgeMaintainActivity"; - private final Context context = BridgeMaintainActivity.this; + private final Context context = this; private BridgeViewModel bridgeViewModel; private String bridgeId = ""; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); - - binding.titleBarLayout.titleView.setText("路桥养护"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); - binding.titleBarLayout.rightImageView.setOnClickListener(new View.OnClickListener() { + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { @Override - public void onClick(View v) { + public void onLeftClick() { + finish(); + } + + @Override + public void onRightClick() { ContextKit.navigatePageTo(context, MaintainRecordActivity.class); } }); diff --git a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java index 2b7b698..629c75f 100644 --- a/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java +++ b/app/src/main/java/com/casic/dcms/view/bridge/MaintainRecordActivity.java @@ -4,6 +4,7 @@ import android.graphics.Color; import android.os.Bundle; import android.os.Handler; +import android.os.Message; import android.text.TextUtils; import android.view.View; @@ -26,6 +27,7 @@ import com.pengxh.androidx.lite.utils.LoadState; import com.pengxh.androidx.lite.utils.LoadingDialog; import com.pengxh.androidx.lite.utils.WeakReferenceHandler; +import com.pengxh.androidx.lite.widget.TitleBarView; import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; import com.scwang.smartrefresh.layout.listener.OnRefreshListener; @@ -33,23 +35,30 @@ import java.util.ArrayList; import java.util.List; -public class MaintainRecordActivity extends AndroidxBaseActivity { - - private final Context context = MaintainRecordActivity.this; +public class MaintainRecordActivity extends AndroidxBaseActivity implements Handler.Callback { + private final Context context = this; + private final WeakReferenceHandler weakReferenceHandler = new WeakReferenceHandler(this); private BridgeViewModel bridgeViewModel; private List dataBeans = new ArrayList<>(); - private WeakReferenceHandler weakReferenceHandler; private NormalRecyclerAdapter adapter; - private int pageIndex = 1; + private int page = 1; private boolean isRefresh = false; private boolean isLoadMore = false; @Override protected void setupTopBarLayout() { ViewGroupHub.initImmersionBar(binding.rootView, this, true, R.color.white); + binding.titleView.setOnClickListener(new TitleBarView.OnClickListener() { + @Override + public void onLeftClick() { + finish(); + } - binding.titleBarLayout.titleView.setText("桥梁养护记录"); - binding.titleBarLayout.leftBackView.setOnClickListener(v -> finish()); + @Override + public void onRightClick() { + + } + }); } @Override @@ -57,10 +66,12 @@ bridgeViewModel.loadState.observe(this, new Observer() { @Override public void onChanged(LoadState loadState) { - if (loadState == LoadState.Loading) { - LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); - } else { - LoadingDialog.dismiss(); + if (!isRefresh && !isLoadMore) { + if (loadState == LoadState.Loading) { + LoadingDialog.show(MaintainRecordActivity.this, "查询记录中,请稍后"); + } else { + LoadingDialog.dismiss(); + } } } }); @@ -68,7 +79,6 @@ @Override protected void initOnCreate(@Nullable Bundle savedInstanceState) { - weakReferenceHandler = new WeakReferenceHandler(callback); bridgeViewModel = new ViewModelProvider(this).get(BridgeViewModel.class); bridgeViewModel.recordModel.observe(this, new Observer() { @Override @@ -93,12 +103,6 @@ } } }); - } - - @Override - protected void onResume() { - super.onResume(); - pageIndex = 1; getMaintainRecord("", ""); } @@ -112,7 +116,7 @@ public void onDateRangeSelected(String startDate, String endDate) { binding.dateView.setText(startDate + "~" + endDate); - pageIndex = 1; + page = 1; getMaintainRecord(startDate, endDate); } }).build().show(); @@ -123,7 +127,7 @@ public void onRefresh(@NonNull RefreshLayout refreshLayout) { isRefresh = true; //刷新之后页码重置 - pageIndex = 1; + page = 1; getMaintainRecord("", ""); } }); @@ -131,26 +135,21 @@ @Override public void onLoadMore(@NonNull RefreshLayout refreshLayout) { isLoadMore = true; - pageIndex++; + page++; getMaintainRecord("", ""); } }); } private void getMaintainRecord(String start, String end) { - bridgeViewModel.getMaintainRecord(this, start, end, pageIndex); + bridgeViewModel.getMaintainRecord(this, start, end, page); } - private final Handler.Callback callback = msg -> { + @Override + public boolean handleMessage(@NonNull Message msg) { if (msg.what == 20210622) { if (dataBeans.size() == 0) { - binding.emptyView.show(false, "抱歉,没有查到相关养护记录", null, "刷新", new View.OnClickListener() { - @Override - public void onClick(View v) { - pageIndex = 1; - getMaintainRecord("", ""); - } - }); + binding.emptyView.show(null, "抱歉,没有查到相关养护记录"); } else { binding.emptyView.hide(); adapter = new NormalRecyclerAdapter(R.layout.item_maintain_rv_l, dataBeans) { @@ -173,10 +172,10 @@ .setText(R.id.maintainTimeView, item.getMaintainTimeStr()); } }; - binding.recordRecyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); - binding.recordRecyclerView.setAdapter(adapter); + binding.recyclerView.addItemDecoration(new RecyclerViewItemDivider(1, Color.LTGRAY)); + binding.recyclerView.setAdapter(adapter); } } return true; - }; + } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java index 89d406a..23da6e9 100644 --- a/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java +++ b/app/src/main/java/com/casic/dcms/vm/BridgeViewModel.java @@ -62,7 +62,7 @@ public void getMaintainRecord(Context context, String startDate, String endDate, int offset) { loadState.setValue(LoadState.Loading); - Observable observable = RetrofitServiceManager.getMaintainRecordResult(startDate, endDate, offset); + Observable observable = RetrofitServiceManager.getMaintainRecord(startDate, endDate, offset); ObserverSubscriber.addSubscribe(observable, new ObserverSubscriber.OnObserverCallback() { @Override public void onCompleted() { diff --git a/app/src/main/res/drawable/ic_search.xml b/app/src/main/res/drawable/ic_search.xml index ddf926b..e501b27 100644 --- a/app/src/main/res/drawable/ic_search.xml +++ b/app/src/main/res/drawable/ic_search.xml @@ -1,6 +1,6 @@ - + - + + android:singleLine="true" + app:drawableStartCompat="@drawable/ic_search" />