feat: 国际进港原始舱单列表页优化
- 运单号搜索支持输入4位自动查询,带航班日期和航班号额外参数 - 自动查询框架扩展extraParamsProvider,向后兼容旧业务 - 展开按钮移入白色卡片内部,统一为单卡片四圆角 - 子列表品名字段支持goodsCn为空时fallback到goods - 子列表调整列宽,品名列加大,其余列缩小并支持省略号截断 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -36,7 +36,11 @@ data class AutoQueryConfig(
|
||||
var title: String = "请选择",
|
||||
|
||||
/** 防抖延迟(毫秒,默认 300ms) */
|
||||
var debounceMillis: Long = 300L
|
||||
var debounceMillis: Long = 300L,
|
||||
|
||||
/** 额外参数提供者(查询时动态获取额外参数,如航班日期、航班号等) */
|
||||
@Transient
|
||||
var extraParamsProvider: (() -> Map<String, String?>)? = null
|
||||
) {
|
||||
/**
|
||||
* 验证配置是否有效
|
||||
|
||||
@@ -113,8 +113,12 @@ class AutoQueryManager(
|
||||
}
|
||||
lastQueriedValue = value
|
||||
|
||||
// 构建查询参数
|
||||
val params = mapOf(config.paramKey to value).toRequestBody()
|
||||
// 构建查询参数(合并额外参数)
|
||||
val baseParams = mutableMapOf<String, Any?>(config.paramKey to value)
|
||||
config.extraParamsProvider?.invoke()?.forEach { (key, v) ->
|
||||
if (!v.isNullOrEmpty()) baseParams[key] = v
|
||||
}
|
||||
val params = baseParams.toRequestBody()
|
||||
|
||||
// 发起网络请求
|
||||
scope?.launchCollect({ NetApply.api.getWbNoList(config.url, params) }) {
|
||||
|
||||
@@ -119,8 +119,12 @@ class SearchAutoQueryManager(
|
||||
}
|
||||
lastQueriedValue = value
|
||||
|
||||
// 构建查询参数
|
||||
val params = mapOf(config.paramKey to value).toRequestBody()
|
||||
// 构建查询参数(合并额外参数)
|
||||
val baseParams = mutableMapOf<String, Any?>(config.paramKey to value)
|
||||
config.extraParamsProvider?.invoke()?.forEach { (key, v) ->
|
||||
if (!v.isNullOrEmpty()) baseParams[key] = v
|
||||
}
|
||||
val params = baseParams.toRequestBody()
|
||||
|
||||
// 发起网络请求
|
||||
scope?.launchCollect({ NetApply.api.getWbNoList(config.url, params) }) {
|
||||
|
||||
Reference in New Issue
Block a user