From 14b15539a8fbbce1145197993e0c062400174ef1 Mon Sep 17 00:00:00 2001
From: zuoxiao <lf_zuo@163.com>
Date: 星期四, 26 六月 2025 16:51:12 +0800
Subject: [PATCH] docs(baselibrary): 更新 NativeNfcReadHelper 类文档
---
generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt | 89 ++++++++++++++++++++++++++++++++------------
1 files changed, 65 insertions(+), 24 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 5e11d51..b47b11b 100644
--- a/generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt
+++ b/generallibrary/src/main/java/com/dayu/general/activity/SearchUserListActivity.kt
@@ -1,5 +1,6 @@
package com.dayu.general.activity
+import android.content.Intent
import android.os.Bundle
import androidx.recyclerview.widget.LinearLayoutManager
import com.dayu.baselibrary.net.subscribers.SubscriberListener
@@ -25,12 +26,12 @@
var binding: ActivitySearchUserGeBinding? = null
private var userAdapter: SearchUserListAdapter? = null
var searchDialog: SearchDialog? = null
-
+
// 鍒嗛〉鐩稿叧鍙橀噺
private var currentPage = 1
private val pageSize = 20
private var hasMoreData = true
-
+
// 淇濆瓨褰撳墠鎼滅储鏉′欢
private var currentFarmerId = ""
private var currentFarmerName = ""
@@ -43,6 +44,9 @@
initView()
setupRecyclerView()
setupRefreshLayout()
+
+ // 纭繚Footer鍒濆鐘舵�佹纭�
+ binding?.refreshLayout?.setEnableLoadMore(true)
}
@@ -57,11 +61,14 @@
currentFarmerId = farmerId
currentFarmerName = farmerName
currentCardNumber = cardNumber
-
+
// 閲嶇疆鍒嗛〉鐘舵��
currentPage = 1
hasMoreData = true
+ // 閲嶇疆鏃犳洿澶氭暟鎹姸鎬�
+ binding?.refreshLayout?.resetNoMoreData()
+
// 鎵ц鎼滅储
searchUser(farmerId, farmerName, cardNumber, true)
}
@@ -79,40 +86,47 @@
layoutManager = LinearLayoutManager(this@SearchUserListActivity)
adapter = userAdapter
}
-
+
// 璁剧疆鍒楄〃椤圭偣鍑讳簨浠�
userAdapter?.setOnItemClickListener { user ->
// 澶勭悊鐢ㄦ埛鐐瑰嚮浜嬩欢
- ToastUtil.show("宸查�夋嫨鐢ㄦ埛锛�${user.name}")
- // 杩欓噷鍙互娣诲姞璺宠浆鍒扮敤鎴疯鎯呴〉闈㈢殑閫昏緫
- // val intent = Intent(this, UserDetailActivity::class.java)
- // intent.putExtra("userId", user.id)
- // startActivity(intent)
+ // 浼犻�掔敤鎴蜂俊鎭埌寮�鍗$晫闈�
+ val intent = Intent(this, NewCardActivity::class.java)
+ intent.putExtra("clientId", user.clientId)
+ startActivity(intent)
}
}
-
+
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)
}
-
+
override fun onLoadMore(refreshLayout: RefreshLayout) {
// 濡傛灉杩樻湁鏇村鏁版嵁锛屽姞杞戒笅涓�椤�
if (hasMoreData) {
currentPage++
searchUser(currentFarmerId, currentFarmerName, currentCardNumber, false)
} else {
- // 瀹屾垚鍔犺浇骞舵彁绀烘病鏈夋洿澶氭暟鎹�
- refreshLayout.finishLoadMore(500, true, false)
- ToastUtil.show("娌℃湁鏇村鏁版嵁浜�")
+ // 瀹屾垚鍔犺浇骞舵樉绀哄凡鍒板簳鐘舵��
+ refreshLayout.finishLoadMoreWithNoMoreData()
}
}
})
@@ -130,7 +144,12 @@
* @param cardNumber 閾惰鍗″彿
* @param isRefresh 鏄惁涓哄埛鏂版搷浣�
*/
- private fun searchUser(farmerId: String, farmerName: String, cardNumber: String, isRefresh: Boolean = true) {
+ private fun searchUser(
+ farmerId: String,
+ farmerName: String,
+ cardNumber: String,
+ isRefresh: Boolean = true
+ ) {
val map = mutableMapOf<String, Any>()
if (farmerId.isNotEmpty()) {
@@ -144,7 +163,7 @@
if (cardNumber.isNotEmpty()) {
map["cardNum"] = cardNumber
}
-
+
// 娣诲姞鍒嗛〉鍙傛暟
map["pageCurr"] = currentPage
map["pageSize"] = pageSize
@@ -152,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
@@ -172,26 +188,45 @@
} else {
userAdapter?.addData(result.obj)
}
-
+
// 鍒ゆ柇鏄惁杩樻湁鏇村鏁版嵁锛氭牴鎹綋鍓嶉〉鐮佸拰鎬婚〉鏁板垽鏂�
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)
}
}
@@ -205,7 +240,7 @@
}
)
}
-
+
/**
* 瀹屾垚鍒锋柊鎴栧姞杞芥搷浣�
* @param isRefresh 鏄惁涓哄埛鏂版搷浣�
@@ -214,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