diff --git a/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpLoadViewModel.kt b/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpLoadViewModel.kt index e44f592..86de3b7 100644 --- a/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpLoadViewModel.kt +++ b/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpLoadViewModel.kt @@ -35,9 +35,9 @@ class IntExpLoadViewModel : BasePageViewModel() { val flightDate = MutableLiveData(DateUtils.getCurrentTime().formatDate()) // 航班日期 val flightNo = MutableLiveData("") // 航班号 val waybillNo = MutableLiveData("") // 运单号 - val depPort = MutableLiveData("") // 始发站(下拉选择) - val depPortList = MutableLiveData>(emptyList()) // 始发站下拉列表(始发港 + 经停港) - val destPort = MutableLiveData("") // 目的站(航班查询自动填充,不可编辑) + val depPort = MutableLiveData("") // 始发站(航班查询自动填充,锁定不可编辑) + val destPort = MutableLiveData("") // 目的站(下拉选择) + val destPortList = MutableLiveData>(emptyList()) // 目的站下拉列表(目的港 + 经停港) // ========== 航班级联查询 ========== private var lastQueriedFlight = "" // 避免重复查询 @@ -59,7 +59,7 @@ class IntExpLoadViewModel : BasePageViewModel() { /** * 航班日期 + 航班号 均有值时,查询航班并填充始发站/目的站 - * 参考「电报生成」(/flt/intFlight):始发站下拉(始发港+经停港),目的站自动填充且只读 + * 出港:始发站自动填充且锁定(始发港),目的站下拉可选(目的港+经停港) */ private fun queryFlightIfReady() { val fdate = flightDate.value @@ -82,25 +82,25 @@ class IntExpLoadViewModel : BasePageViewModel() { onSuccess = { if (it.verifySuccess() && it.data != null) { val flight = it.data!! - // 目的站:航班查询返回,自动填充 - destPort.value = flight.fdest.noNull() - // 始发站下拉:始发港 + 经停港(可逗号分隔多个) - val list = mutableListOf(KeyValue(flight.fdep.noNull(), flight.fdep.noNull())) + // 始发站:航班查询返回,自动填充并锁定 + depPort.value = flight.fdep.noNull() + // 目的站下拉:目的港 + 经停港(可逗号分隔多个) + val list = mutableListOf(KeyValue(flight.fdest.noNull(), flight.fdest.noNull())) flight.jtz.split(",").forEach { stop -> val s = stop.trim() if (s.isNotEmpty()) list.add(KeyValue(s, s)) } - depPortList.value = list - depPort.value = flight.fdep.noNull() + destPortList.value = list + destPort.value = flight.fdest.noNull() } else { - depPortList.value = emptyList() + destPortList.value = emptyList() depPort.value = "" destPort.value = "" } } onFailed = { _, _ -> - depPortList.value = emptyList() + destPortList.value = emptyList() depPort.value = "" destPort.value = "" } diff --git a/module_gjc/src/main/res/layout/activity_int_exp_load.xml b/module_gjc/src/main/res/layout/activity_int_exp_load.xml index eca34ac..7431ade 100644 --- a/module_gjc/src/main/res/layout/activity_int_exp_load.xml +++ b/module_gjc/src/main/res/layout/activity_int_exp_load.xml @@ -52,24 +52,24 @@ value="@={viewModel.flightNo}" setUpperCaseAlphanumeric="@{true}" /> - - - - + + + +