package com.dayu.general.activity
|
|
import android.os.Bundle
|
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.bean.net.SearchUserResult
|
import com.dayu.general.databinding.ActivitySearchUserGeBinding
|
import com.dayu.general.dialog.SearchDialog
|
import com.dayu.general.net.BaseResponse
|
import com.dayu.qiheonlinelibrary.net.ApiManager
|
|
/**
|
* @author: zuo
|
* @date: 2023/6/26 16:09
|
* @description:搜索用户
|
*/
|
class SearchUserActivity : BaseActivity() {
|
|
var binding: ActivitySearchUserGeBinding? = null
|
override fun onCreate(savedInstanceState: Bundle?) {
|
super.onCreate(savedInstanceState)
|
binding = ActivitySearchUserGeBinding.inflate(layoutInflater)
|
setContentView(binding?.root)
|
initView()
|
}
|
|
|
fun initView() {
|
binding?.titleBar?.setOnItemclickListner(ClickType_LEFT_IMAGE) { this.finish() }
|
binding?.titleBar?.setOnItemclickListner(ClickType_RIGHT_IMAGE) {
|
// 创建搜索对话框
|
val searchDialog = SearchDialog(this)
|
|
// 设置搜索监听器
|
searchDialog.setOnSearchListener(object : SearchDialog.OnSearchListener {
|
override fun onSearch(farmerId: String, farmerName: String, cardNumber: String) {
|
// 处理搜索结果
|
// 这里只是示例,实际应用中可能需要调用API或查询数据库
|
val message =
|
"搜索条件:\n农户编号:$farmerId\n农户名称:$farmerName\n卡号:$cardNumber"
|
// 执行实际的搜索逻辑
|
performSearch(farmerId, farmerName, cardNumber)
|
}
|
})
|
// 显示对话框
|
searchDialog.show()
|
}
|
}
|
|
/**
|
* 执行搜索逻辑
|
* 这里只是一个示例方法,实际应用中需要根据具体需求实现
|
*/
|
private fun performSearch(farmerId: String, farmerName: String, cardNumber: String) {
|
// 调用实际的搜索API
|
searchUser(farmerId, farmerName, cardNumber)
|
}
|
|
private fun searchUser(farmerId: String, farmerName: String, cardNumber: String) {
|
val map = mutableMapOf<String, String>()
|
|
if (farmerId.isNotEmpty()) {
|
map["farmerId"] = farmerId
|
}
|
|
if (farmerName.isNotEmpty()) {
|
map["farmerName"] = farmerName
|
}
|
|
if (cardNumber.isNotEmpty()) {
|
map["cardNumber"] = cardNumber
|
}
|
|
// 使用正确的类型参数
|
ApiManager.getInstance().requestGetLoading(
|
this,
|
"searchUser",
|
SearchUserResult::class.java,
|
map,
|
object : SubscriberListener<BaseResponse<SearchUserResult>>() {
|
override fun onNext(t: BaseResponse<SearchUserResult>) {
|
if (t.success) {
|
// 处理搜索成功的情况
|
val result = t.content
|
if (result != null) {
|
// 处理搜索结果
|
handleSearchResult(result)
|
} else {
|
ToastUtil.show("未找到匹配的用户")
|
}
|
} else {
|
// 处理搜索失败的情况
|
ToastUtil.show(t.msg)
|
}
|
}
|
|
override fun onError(e: Throwable?) {
|
super.onError(e)
|
ToastUtil.show("搜索失败: ${e?.message ?: "未知错误"}")
|
}
|
}
|
)
|
}
|
|
/**
|
* 处理搜索结果
|
*/
|
private fun handleSearchResult(result: SearchUserResult) {
|
// 在这里实现搜索结果的处理逻辑
|
// 例如:更新UI显示搜索结果列表
|
// 或者跳转到结果详情页面
|
}
|
|
}
|