| | |
| | | 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 |
| | |
| | | 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 = "" |
| | |
| | | currentFarmerId = farmerId |
| | | currentFarmerName = farmerName |
| | | currentCardNumber = cardNumber |
| | | |
| | | |
| | | // 重置分页状态 |
| | | currentPage = 1 |
| | | hasMoreData = true |
| | | |
| | | |
| | | // 执行搜索 |
| | | searchUser(farmerId, farmerName, cardNumber, true) |
| | | } |
| | |
| | | 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, NewCard2Activity::class.java) |
| | | intent.putExtra("userName", user.name) |
| | | intent.putExtra("idCard", user.idCard) |
| | | intent.putExtra("farmerCode", user.clientNum) |
| | | intent.putExtra("userId", user.id) |
| | | startActivity(intent) |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | |
| | | private fun setupRefreshLayout() { |
| | | binding?.refreshLayout?.apply { |
| | | // 设置刷新和加载更多监听器 |
| | |
| | | hasMoreData = true |
| | | searchUser(currentFarmerId, currentFarmerName, currentCardNumber, true) |
| | | } |
| | | |
| | | |
| | | override fun onLoadMore(refreshLayout: RefreshLayout) { |
| | | // 如果还有更多数据,加载下一页 |
| | | if (hasMoreData) { |
| | |
| | | * @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()) { |
| | |
| | | if (cardNumber.isNotEmpty()) { |
| | | map["cardNum"] = cardNumber |
| | | } |
| | | |
| | | |
| | | // 添加分页参数 |
| | | map["pageCurr"] = currentPage |
| | | map["pageSize"] = pageSize |
| | |
| | | override fun onNext(t: BaseResponse<SearchUserResult>) { |
| | | // 完成刷新或加载动作 |
| | | finishRefreshOrLoad(isRefresh) |
| | | |
| | | |
| | | if (t.success) { |
| | | // 处理搜索成功的情况 |
| | | val result = t.content |
| | |
| | | } else { |
| | | userAdapter?.addData(result.obj) |
| | | } |
| | | |
| | | |
| | | // 判断是否还有更多数据:根据当前页码和总页数判断 |
| | | hasMoreData = currentPage < result.pageTotal |
| | | } else { |
| | |
| | | } |
| | | ) |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 完成刷新或加载操作 |
| | | * @param isRefresh 是否为刷新操作 |