From 1bc1acff2127d61b359800096ad5b904370d9176 Mon Sep 17 00:00:00 2001
From: zuojincheng <lf_zuo@163.com>
Date: 星期三, 26 三月 2025 09:25:47 +0800
Subject: [PATCH] refactor(nfc): 重构 NFC 读写助手类
---
generallibrary/src/main/java/com/dayu/general/activity/SearchUserActivity.kt | 89 ++++++++++++++++++++++++++------------------
1 files changed, 52 insertions(+), 37 deletions(-)
diff --git a/generallibrary/src/main/java/com/dayu/general/activity/SearchUserActivity.kt b/generallibrary/src/main/java/com/dayu/general/activity/SearchUserActivity.kt
index 1a655b0..6968f84 100644
--- a/generallibrary/src/main/java/com/dayu/general/activity/SearchUserActivity.kt
+++ b/generallibrary/src/main/java/com/dayu/general/activity/SearchUserActivity.kt
@@ -1,15 +1,17 @@
package com.dayu.general.activity
import android.os.Bundle
+import androidx.recyclerview.widget.LinearLayoutManager
import com.dayu.baselibrary.net.subscribers.SubscriberListener
import com.dayu.baselibrary.utils.ToastUtil
import com.dayu.baselibrary.view.TitleBar.ClickType_LEFT_IMAGE
import com.dayu.baselibrary.view.TitleBar.ClickType_RIGHT_IMAGE
+import com.dayu.general.adapter.SearchListAdapter
import com.dayu.general.bean.net.SearchUserResult
import com.dayu.general.databinding.ActivitySearchUserGeBinding
-import com.dayu.general.dialog.SearchDialog
+import com.dayu.general.view.SearchDialog
+import com.dayu.general.net.ApiManager
import com.dayu.general.net.BaseResponse
-import com.dayu.qiheonlinelibrary.net.ApiManager
/**
* @author: zuo
@@ -19,56 +21,70 @@
class SearchUserActivity : BaseActivity() {
var binding: ActivitySearchUserGeBinding? = null
+ private var userAdapter: SearchListAdapter? = null
+ var searchDialog: SearchDialog? = null
+
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivitySearchUserGeBinding.inflate(layoutInflater)
setContentView(binding?.root)
initView()
+ setupRecyclerView()
+
}
fun initView() {
+ searchDialog = SearchDialog(this)
+ searchDialog?.show()
binding?.titleBar?.setOnItemclickListner(ClickType_LEFT_IMAGE) { this.finish() }
+ // 璁剧疆鎼滅储鐩戝惉鍣�
+ searchDialog?.setOnSearchListener(object : SearchDialog.OnSearchListener {
+ override fun onSearch(farmerId: String, farmerName: String, cardNumber: String) {
+ // 澶勭悊鎼滅储缁撴灉
+ // 杩欓噷鍙槸绀轰緥锛屽疄闄呭簲鐢ㄤ腑鍙兘闇�瑕佽皟鐢ˋPI鎴栨煡璇㈡暟鎹簱
+ val message =
+ "鎼滅储鏉′欢锛歕n鍐滄埛缂栧彿锛�$farmerId\n鍐滄埛鍚嶇О锛�$farmerName\n鍗″彿锛�$cardNumber"
+ // 鎵ц瀹為檯鐨勬悳绱㈤�昏緫
+ searchUser(farmerId, farmerName, cardNumber)
+ }
+ })
binding?.titleBar?.setOnItemclickListner(ClickType_RIGHT_IMAGE) {
// 鍒涘缓鎼滅储瀵硅瘽妗�
- val searchDialog = SearchDialog(this)
-
- // 璁剧疆鎼滅储鐩戝惉鍣�
- searchDialog.setOnSearchListener(object : SearchDialog.OnSearchListener {
- override fun onSearch(farmerId: String, farmerName: String, cardNumber: String) {
- // 澶勭悊鎼滅储缁撴灉
- // 杩欓噷鍙槸绀轰緥锛屽疄闄呭簲鐢ㄤ腑鍙兘闇�瑕佽皟鐢ˋPI鎴栨煡璇㈡暟鎹簱
- val message =
- "鎼滅储鏉′欢锛歕n鍐滄埛缂栧彿锛�$farmerId\n鍐滄埛鍚嶇О锛�$farmerName\n鍗″彿锛�$cardNumber"
- // 鎵ц瀹為檯鐨勬悳绱㈤�昏緫
- performSearch(farmerId, farmerName, cardNumber)
- }
- })
// 鏄剧ず瀵硅瘽妗�
- searchDialog.show()
+ searchDialog?.show()
+ }
+ }
+
+ private fun setupRecyclerView() {
+ userAdapter = SearchListAdapter()
+ binding?.recyclerView?.apply {
+ layoutManager = LinearLayoutManager(this@SearchUserActivity)
+ adapter = userAdapter
}
}
/**
- * 鎵ц鎼滅储閫昏緫
- * 杩欓噷鍙槸涓�涓ず渚嬫柟娉曪紝瀹為檯搴旂敤涓渶瑕佹牴鎹叿浣撻渶姹傚疄鐜�
+ * 鏍规嵁鍐滄皯ID銆佸鍚嶅拰閾惰鍗″彿鎼滅储鐢ㄦ埛
+ *
+ * 姝ゅ嚱鏁版瀯寤轰竴涓弬鏁版槧灏勶紝鏍规嵁鎻愪緵鐨勫啘姘慖D銆佸鍚嶅拰閾惰鍗″彿鏉ユ悳绱㈢敤鎴�
+ * 瀹冧粎鍖呭惈鏈夋晥鐨勩�侀潪绌虹殑鎼滅储鍙傛暟锛屼互纭繚鎼滅储璇锋眰鐨勫噯纭�у拰鏁堢巼
+ *
+ * @param farmerId 鍐滄皯鐨勫敮涓�鏍囪瘑绗�
+ * @param farmerName 鍐滄皯鐨勫鍚�
+ * @param cardNumber 閾惰鍗″彿
*/
- private fun performSearch(farmerId: String, farmerName: String, cardNumber: String) {
- // 璋冪敤瀹為檯鐨勬悳绱PI
- searchUser(farmerId, farmerName, cardNumber)
- }
-
private fun searchUser(farmerId: String, farmerName: String, cardNumber: String) {
- val map = mutableMapOf<String, String>()
-
+ val map = mutableMapOf<String, Any>()
+
if (farmerId.isNotEmpty()) {
map["farmerId"] = farmerId
}
-
+
if (farmerName.isNotEmpty()) {
map["farmerName"] = farmerName
}
-
+
if (cardNumber.isNotEmpty()) {
map["cardNumber"] = cardNumber
}
@@ -76,7 +92,7 @@
// 浣跨敤姝g‘鐨勭被鍨嬪弬鏁�
ApiManager.getInstance().requestGetLoading(
this,
- "searchUser",
+ "sell/client/get",
SearchUserResult::class.java,
map,
object : SubscriberListener<BaseResponse<SearchUserResult>>() {
@@ -86,7 +102,11 @@
val result = t.content
if (result != null) {
// 澶勭悊鎼滅储缁撴灉
- handleSearchResult(result)
+ if (result.obj.isNotEmpty()) {
+ userAdapter?.setData(result.obj)
+ } else {
+ ToastUtil.show("鏈壘鍒板尮閰嶇殑鐢ㄦ埛")
+ }
} else {
ToastUtil.show("鏈壘鍒板尮閰嶇殑鐢ㄦ埛")
}
@@ -95,7 +115,7 @@
ToastUtil.show(t.msg)
}
}
-
+
override fun onError(e: Throwable?) {
super.onError(e)
ToastUtil.show("鎼滅储澶辫触: ${e?.message ?: "鏈煡閿欒"}")
@@ -103,14 +123,9 @@
}
)
}
-
+
/**
* 澶勭悊鎼滅储缁撴灉
*/
- private fun handleSearchResult(result: SearchUserResult) {
- // 鍦ㄨ繖閲屽疄鐜版悳绱㈢粨鏋滅殑澶勭悊閫昏緫
- // 渚嬪锛氭洿鏂癠I鏄剧ず鎼滅储缁撴灉鍒楄〃
- // 鎴栬�呰烦杞埌缁撴灉璇︽儏椤甸潰
- }
-}
\ No newline at end of file
+}
--
Gitblit v1.8.0