专用控制网,根据名称和版本号搜索

main
chenglifeng 6 months ago
parent 83c7070764
commit a35b137e33
  1. 16
      app/src/main/java/com/project/survey/model/SpecialControlNetworkVersionBean.kt
  2. 35
      app/src/main/java/com/project/survey/ui/controlnet/SpecialControlNetworkActivity.kt
  3. 82
      app/src/main/res/layout/activity_special_control_network.xml

@ -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 //控制网名称
)

@ -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<SpecialControlNetworkVersionBean>()
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) {

@ -25,51 +25,75 @@
<!-- android:id="@+id/ilSearch"-->
<!-- layout="@layout/item_search_control_net" />-->
<androidx.constraintlayout.widget.ConstraintLayout
<!-- <androidx.constraintlayout.widget.ConstraintLayout-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:gravity="center_vertical"-->
<!-- android:orientation="horizontal">-->
<LinearLayout
android:id="@+id/llSpinner"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_height="@dimen/sw_30dp"
android:layout_marginHorizontal="@dimen/sw_16dp"
android:layout_marginTop="@dimen/sw_7dp"
android:background="@drawable/bg_search"
android:orientation="horizontal">
<FrameLayout
android:id="@+id/llSpinner"
android:layout_width="@dimen/sw_103dp"
android:layout_height="@dimen/sw_30dp"
android:layout_marginStart="@dimen/sw_16dp"
android:layout_marginTop="@dimen/sw_7dp"
android:background="@drawable/bg_search"
app:layout_constraintEnd_toStartOf="@id/searchWidget"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginEnd="@dimen/sw_4dp"
android:layout_weight="1">
<com.project.survey.widget.materialspinner.MaterialSpinner
android:id="@+id/spinner"
android:id="@+id/spinnerName"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/text_color_20"
android:textSize="@dimen/sw_11sp" />
</FrameLayout>
<View
android:layout_width="0dp"
android:layout_width="@dimen/sw_8dp"
android:layout_height="@dimen/sw_2dp"
android:background="@drawable/bg_search_shadow_2"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@id/llSpinner"
app:layout_constraintStart_toStartOf="parent" />
android:background="@drawable/bg_search_shadow_2" />
<com.project.survey.widget.SearchWidget
android:id="@+id/searchWidget"
<FrameLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_weight="1"
app:layout_constraintStart_toEndOf="@id/llSpinner"
app:layout_constraintTop_toTopOf="parent"
app:sw_hint="请输入控制网名称" />
</androidx.constraintlayout.widget.ConstraintLayout>
android:layout_height="match_parent"
android:layout_marginStart="@dimen/sw_4dp"
android:layout_weight="1">
<com.project.survey.widget.materialspinner.MaterialSpinner
android:id="@+id/spinnerVersion"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textColor="@color/text_color_20"
android:textSize="@dimen/sw_11sp" />
</FrameLayout>
</LinearLayout>
<!-- <View-->
<!-- android:layout_width="0dp"-->
<!-- android:layout_height="@dimen/sw_2dp"-->
<!-- android:background="@drawable/bg_search_shadow_2"-->
<!-- app:layout_constraintBottom_toBottomOf="parent"-->
<!-- app:layout_constraintEnd_toEndOf="@id/llSpinner"-->
<!-- app:layout_constraintStart_toStartOf="parent" />-->
<!-- <com.project.survey.widget.SearchWidget-->
<!-- android:id="@+id/searchWidget"-->
<!-- android:layout_width="0dp"-->
<!-- android:layout_height="wrap_content"-->
<!-- app:layout_constraintEnd_toEndOf="parent"-->
<!-- app:layout_constraintHorizontal_weight="1"-->
<!-- app:layout_constraintStart_toEndOf="@id/llSpinner"-->
<!-- app:layout_constraintTop_toTopOf="parent"-->
<!-- app:sw_hint="请输入控制网名称" />-->
<!-- </androidx.constraintlayout.widget.ConstraintLayout>-->
<com.scwang.smart.refresh.layout.SmartRefreshLayout
android:id="@+id/smartRefreshLayout"

Loading…
Cancel
Save