feat: opt GjcQueryActivity list

This commit is contained in:
2025-12-03 19:56:31 +08:00
parent be0541f522
commit f1abc3ddfc
6 changed files with 163 additions and 139 deletions

View File

@@ -8,7 +8,8 @@ import com.lukouguoji.gjc.R
import com.lukouguoji.gjc.databinding.DialogGjcQueryFilterBinding
import com.lukouguoji.module_base.base.BaseDialogModel
import com.lxj.xpopup.XPopup
import dev.utils.app.ScreenUtils
import com.lxj.xpopup.enums.PopupPosition
import dev.DevUtils
import dev.utils.app.info.KeyValue
/**
@@ -16,6 +17,7 @@ import dev.utils.app.info.KeyValue
*/
class GjcQueryFilterDialogModel(
val spCode: MutableLiveData<String>, // 特码
val flightNo: MutableLiveData<String>, // 航班号
val dest: MutableLiveData<String>, // 目的港
val awbType: MutableLiveData<String>, // 运单类型
val businessType: MutableLiveData<String>, // 业务类型
@@ -45,8 +47,14 @@ class GjcQueryFilterDialogModel(
override fun onBuild(builder: XPopup.Builder) {
super.onBuild(builder)
// 设置抽屉宽度为屏幕宽度的1/3
builder.maxWidth((ScreenUtils.getScreenWidth() / 3.0).toInt())
// 设置从右边弹出
builder.popupPosition(PopupPosition.Right)
// 设置抽屉宽度为 Activity contentView 宽度的1/3横屏长边
val activity = DevUtils.getTopActivity()
val activityWidth = activity.window.decorView.width
builder.maxWidth(activityWidth / 3)
builder.popupWidth(activityWidth / 3)
}
override fun onDialogCreated(context: Context) {
@@ -67,6 +75,7 @@ class GjcQueryFilterDialogModel(
*/
fun onResetClick() {
spCode.value = ""
flightNo.value = ""
dest.value = ""
awbType.value = ""
businessType.value = ""

View File

@@ -52,6 +52,7 @@ class GjcQueryViewModel : BasePageViewModel() {
// ==================== 筛选条件(预留)====================
val spCode = MutableLiveData("") // 特码
val flightNo = MutableLiveData("") // 航班号
val dest = MutableLiveData("") // 目的港
val awbType = MutableLiveData("") // 运单类型
val businessType = MutableLiveData("") // 业务类型
@@ -81,6 +82,7 @@ class GjcQueryViewModel : BasePageViewModel() {
fun filterClick() {
val filterDialog = GjcQueryFilterDialogModel(
spCode = spCode,
flightNo = flightNo,
dest = dest,
awbType = awbType,
businessType = businessType,
@@ -106,6 +108,7 @@ class GjcQueryViewModel : BasePageViewModel() {
"wbNo" to waybillNo.value!!.ifEmpty { null },
// 筛选条件(暂未使用)
"spCode" to spCode.value!!.ifEmpty { null },
"flightNo" to flightNo.value!!.ifEmpty { null },
"dest" to dest.value!!.ifEmpty { null },
"awbType" to awbType.value!!.ifEmpty { null },
"businessType" to businessType.value!!.ifEmpty { null },
@@ -121,6 +124,7 @@ class GjcQueryViewModel : BasePageViewModel() {
"wbNo" to waybillNo.value!!.ifEmpty { null },
// 筛选条件
"spCode" to spCode.value!!.ifEmpty { null },
"flightNo" to flightNo.value!!.ifEmpty { null },
"dest" to dest.value!!.ifEmpty { null },
"awbType" to awbType.value!!.ifEmpty { null },
"businessType" to businessType.value!!.ifEmpty { null },
@@ -131,12 +135,9 @@ class GjcQueryViewModel : BasePageViewModel() {
launchLoadingCollect({
NetApply.api.getGjcQueryList(listParams)
}) {
onSuccess = { result ->
val pageInfo = result.data
if (pageInfo != null) {
// ⚠️ 核心使用toBaseListBean()转换PageInfo为BaseListBean
pageModel.handleListBean(pageInfo.toBaseListBean())
}
onSuccess = { pageInfo ->
// ⚠️ 核心使用toBaseListBean()转换PageInfo为BaseListBean
pageModel.handleListBean(pageInfo.toBaseListBean())
}
}