diff --git a/app/src/main/java/com/project/survey/model/SpecialControlNetworkVersionBean.kt b/app/src/main/java/com/project/survey/model/SpecialControlNetworkVersionBean.kt index 4e7bdd0..e3df3e9 100644 --- a/app/src/main/java/com/project/survey/model/SpecialControlNetworkVersionBean.kt +++ b/app/src/main/java/com/project/survey/model/SpecialControlNetworkVersionBean.kt @@ -2,11 +2,15 @@ package com.project.survey.model import androidx.annotation.Keep +/** + * { + * "version_array": "2024102806,2024102807", + * "$TABLE_CODE$": null, + * "KZW_NAME": "专用" + * } + */ @Keep data class SpecialControlNetworkVersionBean( - val version_array: String -) { - override fun toString(): String { - return version_array - } -} + val version_array: String, //版本号数组 + val KZW_NAME: String //控制网名称 +) diff --git a/app/src/main/java/com/project/survey/ui/controlnet/SpecialControlNetworkActivity.kt b/app/src/main/java/com/project/survey/ui/controlnet/SpecialControlNetworkActivity.kt index 5317ad1..5995617 100644 --- a/app/src/main/java/com/project/survey/ui/controlnet/SpecialControlNetworkActivity.kt +++ b/app/src/main/java/com/project/survey/ui/controlnet/SpecialControlNetworkActivity.kt @@ -34,7 +34,8 @@ class SpecialControlNetworkActivity : private val adapter by lazy { SpecialControlNetworkAdapter() } private var currentPage = 1 private var currentVersion: String? = null - private var searchContent: String? = null // 搜索框里的内容 + private var currentName: String? = null // 控制网名称 + private var versionList = ArrayList() override fun initView() { immersionToolbar(mBinding.toolbar, R.string.dedicated_control_network) @@ -51,9 +52,12 @@ class SpecialControlNetworkActivity : } // 版本号列表 viewModel.specialControlNetworkVersionResponse.observe(this) { - val list = arrayListOf(SpecialControlNetworkVersionBean("版本号")) - list.addAll(it) - mBinding.spinner.setItems(list) + versionList.addAll(it) + versionList.add(0, SpecialControlNetworkVersionBean("版本号", "控制网名称")) + mBinding.spinnerName.setItems(versionList.map { v -> v.KZW_NAME }) + + val versionList = versionList[0].version_array.split(",").toList() + mBinding.spinnerVersion.setItems(versionList) } viewModel.controlNetworkListResponse.observe(this) { mBinding.smartRefreshLayout.smartDismiss() @@ -90,17 +94,26 @@ class SpecialControlNetworkActivity : } override fun initListener() { - // 搜索 - mBinding.searchWidget.setOnEditorSearchListener { - searchContent = it.ifBlank { null } + // 控制网名称 + mBinding.spinnerName.setOnItemSelectedListener { view, position, id, item -> + val bean = item as String + currentName = if ("控制网名称" == bean) null else bean + + val versionList = versionList[position].version_array.split(",").toList() + mBinding.spinnerVersion.setItems(versionList) + currentVersion = if ("控制网名称" == bean) + null + else { + if (versionList.isEmpty()) null else versionList[0].toString() + } currentPage = 1 fetchData() } // 版本号 - mBinding.spinner.setOnItemSelectedListener { _, _, _, item -> - val versionBean = item as SpecialControlNetworkVersionBean + mBinding.spinnerVersion.setOnItemSelectedListener { _, _, _, item -> + val version = item as String currentVersion = - if ("版本号" == versionBean.version_array) null else versionBean.version_array + if ("版本号" == version) null else version currentPage = 1 fetchData() } @@ -112,7 +125,7 @@ class SpecialControlNetworkActivity : } private fun fetchData() { - viewModel.fetchSpecialControlNetworkList(searchContent, currentVersion, currentPage) + viewModel.fetchSpecialControlNetworkList(currentName, currentVersion, currentPage) } override fun onRefresh(refreshLayout: RefreshLayout) { diff --git a/app/src/main/res/layout/activity_special_control_network.xml b/app/src/main/res/layout/activity_special_control_network.xml index 219f147..5add140 100644 --- a/app/src/main/res/layout/activity_special_control_network.xml +++ b/app/src/main/res/layout/activity_special_control_network.xml @@ -25,51 +25,75 @@ - + + + + + + + android:layout_width="0dp" + android:layout_height="match_parent" + android:layout_marginEnd="@dimen/sw_4dp" + android:layout_weight="1"> - + android:background="@drawable/bg_search_shadow_2" /> - - + android:layout_height="match_parent" + android:layout_marginStart="@dimen/sw_4dp" + android:layout_weight="1"> + + + + + + + + + + + + + + + + + + + + + + + + +