From 0faae97cd2523f840c426da68464e577e01dfa80 Mon Sep 17 00:00:00 2001
From: zuojincheng <lf_zuo@163.com>
Date: 星期一, 23 六月 2025 20:35:08 +0800
Subject: [PATCH] refactor(CardReplaceActivity): 重构补卡流程并优化界面显示- 重新设计卡片信息展示布局,增加新卡卡地址、客户编号等字段 - 优化补卡逻辑,支持通过卡号或客户编号获取卡片信息 -调整工本费和返回金额输入框位置 - 更新API调用路径,使用新的卡片查询接口
---
generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt | 59 ++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 46 insertions(+), 13 deletions(-)
diff --git a/generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt b/generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt
index 9f9311c..a4282a2 100644
--- a/generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt
+++ b/generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt
@@ -44,6 +44,9 @@
initView()
setupRecyclerView()
setupRefreshLayout()
+
+ // 纭繚Footer鍒濆鐘舵�佹纭�
+ binding?.refreshLayout?.setEnableLoadMore(true)
}
@@ -62,6 +65,9 @@
// 閲嶇疆鍒嗛〉鐘舵��
currentPage = 1
hasMoreData = true
+
+ // 閲嶇疆鏃犳洿澶氭暟鎹姸鎬�
+ binding?.refreshLayout?.resetNoMoreData()
// 鎵ц鎼滅储
searchUser(farmerId, farmerName, cardNumber, true)
@@ -86,10 +92,7 @@
// 澶勭悊鐢ㄦ埛鐐瑰嚮浜嬩欢
// 浼犻�掔敤鎴蜂俊鎭埌寮�鍗$晫闈�
val intent = Intent(this, NewCard2Activity::class.java)
- intent.putExtra("userName", user.name)
- intent.putExtra("idCard", user.idCard)
- intent.putExtra("farmerCode", user.clientNum)
- intent.putExtra("userId", user.id)
+ intent.putExtra("clientId", user.clientId)
startActivity(intent)
}
@@ -98,12 +101,21 @@
private fun setupRefreshLayout() {
binding?.refreshLayout?.apply {
+ // 璁剧疆Footer璺熼殢鍔熻兘锛岀‘淇濇棤鏇村鏁版嵁鏃禙ooter鑳芥纭樉绀�
+ setEnableFooterFollowWhenNoMoreData(true)
+ // 璁剧疆鍔犺浇鏇村瀹屾垚鍚庢粴鍔ㄥ唴瀹规樉绀烘柊鏁版嵁
+ setEnableScrollContentWhenLoaded(true)
+ // 绂佺敤绾粴鍔ㄦā寮忥紝纭繚Footer鑳芥甯稿伐浣�
+ setEnableOverScrollDrag(false)
+
// 璁剧疆鍒锋柊鍜屽姞杞芥洿澶氱洃鍚櫒
setOnRefreshLoadMoreListener(object : OnRefreshLoadMoreListener {
override fun onRefresh(refreshLayout: RefreshLayout) {
// 閲嶇疆椤电爜骞跺埛鏂版暟鎹�
currentPage = 1
hasMoreData = true
+ // 閲嶇疆鏃犳洿澶氭暟鎹姸鎬�
+ refreshLayout.resetNoMoreData()
searchUser(currentFarmerId, currentFarmerName, currentCardNumber, true)
}
@@ -113,9 +125,8 @@
currentPage++
searchUser(currentFarmerId, currentFarmerName, currentCardNumber, false)
} else {
- // 瀹屾垚鍔犺浇骞舵彁绀烘病鏈夋洿澶氭暟鎹�
- refreshLayout.finishLoadMore(500, true, false)
- ToastUtil.show("娌℃湁鏇村鏁版嵁浜�")
+ // 瀹屾垚鍔犺浇骞舵樉绀哄凡鍒板簳鐘舵��
+ refreshLayout.finishLoadMoreWithNoMoreData()
}
}
})
@@ -160,14 +171,11 @@
// 浣跨敤姝g‘鐨勭被鍨嬪弬鏁�
ApiManager.getInstance().requestGetLoading(
this,
- "sell/client/get",
+ "terminal/client/getTermClients",
SearchUserResult::class.java,
map,
object : SubscriberListener<BaseResponse<SearchUserResult>>() {
override fun onNext(t: BaseResponse<SearchUserResult>) {
- // 瀹屾垚鍒锋柊鎴栧姞杞藉姩浣�
- finishRefreshOrLoad(isRefresh)
-
if (t.success) {
// 澶勭悊鎼滅储鎴愬姛鐨勬儏鍐�
val result = t.content
@@ -183,23 +191,42 @@
// 鍒ゆ柇鏄惁杩樻湁鏇村鏁版嵁锛氭牴鎹綋鍓嶉〉鐮佸拰鎬婚〉鏁板垽鏂�
hasMoreData = currentPage < result.pageTotal
+
+ // 瀹屾垚鍒锋柊鎴栧姞杞藉姩浣�
+ if (isRefresh) {
+ binding?.refreshLayout?.finishRefresh(true)
+ } else {
+ // 濡傛灉娌℃湁鏇村鏁版嵁浜嗭紝璁剧疆宸插埌搴曠姸鎬�
+ if (!hasMoreData) {
+ binding?.refreshLayout?.finishLoadMoreWithNoMoreData()
+ } else {
+ binding?.refreshLayout?.finishLoadMore(true)
+ }
+ }
} else {
if (isRefresh) {
userAdapter?.setData(emptyList())
+ binding?.refreshLayout?.finishRefresh(true)
ToastUtil.show("鏈壘鍒板尮閰嶇殑鐢ㄦ埛")
} else {
hasMoreData = false
- ToastUtil.show("娌℃湁鏇村鏁版嵁浜�")
+ // 浣跨敤finishLoadMoreWithNoMoreData鏄剧ず宸插埌搴曠姸鎬�
+ binding?.refreshLayout?.finishLoadMoreWithNoMoreData()
}
}
} else {
if (isRefresh) {
userAdapter?.setData(emptyList())
+ binding?.refreshLayout?.finishRefresh(true)
ToastUtil.show("鏈壘鍒板尮閰嶇殑鐢ㄦ埛")
+ } else {
+ hasMoreData = false
+ binding?.refreshLayout?.finishLoadMoreWithNoMoreData()
}
}
} else {
// 澶勭悊鎼滅储澶辫触鐨勬儏鍐�
+ finishRefreshOrLoad(isRefresh)
ToastUtil.show(t.msg)
}
}
@@ -222,7 +249,13 @@
if (isRefresh) {
binding?.refreshLayout?.finishRefresh(true)
} else {
- binding?.refreshLayout?.finishLoadMore(true)
+ // 濡傛灉娌℃湁鏇村鏁版嵁锛屼笉鍦ㄨ繖閲岃皟鐢╢inishLoadMore锛岀敱鍏蜂綋閫昏緫璋冪敤finishLoadMoreWithNoMoreData
+ // 濡傛灉鏈夋洿澶氭暟鎹紝鍒欐甯歌皟鐢╢inishLoadMore
+ if (hasMoreData) {
+ binding?.refreshLayout?.finishLoadMore(true)
+ }
+ // 娉ㄦ剰锛氬綋hasMoreData涓篺alse鏃讹紝涓嶈皟鐢ㄤ换浣昮inish鏂规硶锛�
+ // 鍥犱负宸茬粡鍦ㄥ叿浣撻�昏緫涓皟鐢ㄤ簡finishLoadMoreWithNoMoreData()
}
}
--
Gitblit v1.8.0