From ccd93a14bb558d2a55caa7673b105d70170a224f Mon Sep 17 00:00:00 2001 From: YANGJIANKUAN Date: Mon, 8 Dec 2025 10:45:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=87=BA=E6=B8=AF=E8=AE=A1=E9=87=8D=20?= =?UTF-8?q?=E4=BB=A3=E7=90=86=20filter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gjc/activity/GjcWeighingListActivity.kt | 3 +++ .../gjc/viewModel/GjcWeighingViewModel.kt | 23 +++++++++++++++++++ .../res/layout/activity_gjc_weighing_list.xml | 1 + 3 files changed, 27 insertions(+) diff --git a/module_gjc/src/main/java/com/lukouguoji/gjc/activity/GjcWeighingListActivity.kt b/module_gjc/src/main/java/com/lukouguoji/gjc/activity/GjcWeighingListActivity.kt index 3708fa2..5f5fb8d 100644 --- a/module_gjc/src/main/java/com/lukouguoji/gjc/activity/GjcWeighingListActivity.kt +++ b/module_gjc/src/main/java/com/lukouguoji/gjc/activity/GjcWeighingListActivity.kt @@ -30,6 +30,9 @@ class GjcWeighingListActivity : binding.viewModel = viewModel + // 初始化代理人列表(从API获取) + viewModel.initAgentList() + // 绑定分页逻辑 viewModel.pageModel .bindSmartRefreshLayout(binding.srl, binding.rv, viewModel, getLifecycleOwner()) diff --git a/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/GjcWeighingViewModel.kt b/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/GjcWeighingViewModel.kt index d50e1fd..1f8db5e 100644 --- a/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/GjcWeighingViewModel.kt +++ b/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/GjcWeighingViewModel.kt @@ -15,6 +15,7 @@ import com.lukouguoji.module_base.ktx.launchLoadingCollect import com.lukouguoji.module_base.ktx.showToast import com.lukouguoji.module_base.ktx.toRequestBody import com.lukouguoji.module_base.model.ScanModel +import dev.utils.app.info.KeyValue /** * 国际出港计重 ViewModel @@ -28,6 +29,9 @@ class GjcWeighingViewModel : BasePageViewModel() { val spCode = MutableLiveData("") // 特码 val waybillNo = MutableLiveData("") // 运单号 + // 下拉列表数据源 + val agentList = MutableLiveData(listOf(KeyValue("全部", ""))) + // 适配器配置 val itemViewHolder = GjcWeighingViewHolder::class.java val itemLayoutId = R.layout.item_gjc_weighing @@ -41,6 +45,25 @@ class GjcWeighingViewModel : BasePageViewModel() { // 方法区 /////////////////////////////////////////////////////////////////////////// + /** + * 初始化代理下拉列表(从API获取) + */ + fun initAgentList() { + launchCollect({ + // 调用API获取代理人列表 + NetApply.api.getIntExpAgentList() + }) { + onSuccess = { result -> + val list = mutableListOf(KeyValue("全部", "")) + // 将DictBean转换为KeyValue + result.data?.forEach { + list.add(KeyValue(it.name ?: "", it.code ?: "")) + } + agentList.value = list + } + } + } + /** * 扫码输入航班号 */ diff --git a/module_gjc/src/main/res/layout/activity_gjc_weighing_list.xml b/module_gjc/src/main/res/layout/activity_gjc_weighing_list.xml index 4595e2e..2e78e0f 100644 --- a/module_gjc/src/main/res/layout/activity_gjc_weighing_list.xml +++ b/module_gjc/src/main/res/layout/activity_gjc_weighing_list.xml @@ -53,6 +53,7 @@