diff --git a/module_base/src/main/java/com/lukouguoji/module_base/bean/ManifestTotalDto.kt b/module_base/src/main/java/com/lukouguoji/module_base/bean/ManifestTotalDto.kt index c54ec76..9df5bcf 100644 --- a/module_base/src/main/java/com/lukouguoji/module_base/bean/ManifestTotalDto.kt +++ b/module_base/src/main/java/com/lukouguoji/module_base/bean/ManifestTotalDto.kt @@ -8,5 +8,15 @@ data class ManifestTotalDto( var wbNumber: Int = 0, // 运单票数/总票数 var totalPc: Long = 0, // 总件数 var totalWeight: Double = 0.0, // 总重量 - var cargoWeight: Double = 0.0 // 总货重 + var cargoWeight: Double = 0.0, // 总货重 + + // ===== 后端统一统计 DTO 的分项计数(2026-09 后端补齐,按接口各取所需) ===== + var flightNumber: Int = 0, // 航班数 + var uldNumber: Int = 0, // 板箱数(出库交接 Tab 角标) + var storedNumber: Int = 0, // 已入库票数(出港/进港查询) + var departedNumber: Int = 0, // 已离港(出港)/ 已出库(进港)票数 + var notClearNumber: Int = 0, // 未清仓票数(出港/进港仓库) + var clearNumber: Int = 0, // 已清仓票数(出港/进港仓库) + var waitCheckInNumber: Int = 0, // 待计重票数(出港计重) + var checkingNumber: Int = 0 // 计重中票数(出港计重) ) diff --git a/module_gjc/src/main/java/com/lukouguoji/gjc/activity/IntExpOutHandoverActivity.kt b/module_gjc/src/main/java/com/lukouguoji/gjc/activity/IntExpOutHandoverActivity.kt index 243ff95..f38477c 100644 --- a/module_gjc/src/main/java/com/lukouguoji/gjc/activity/IntExpOutHandoverActivity.kt +++ b/module_gjc/src/main/java/com/lukouguoji/gjc/activity/IntExpOutHandoverActivity.kt @@ -72,12 +72,12 @@ class IntExpOutHandoverActivity : /** * 手机版筛选:重置 * - * 只清空弹层内的三个条件(航班日期 / 航班号 / 交接人),不影响 Tab 与顶部搜索框。 + * 只清空弹层内的三个条件(航班日期 / 航班号 / 目的站),不影响 Tab 与顶部搜索框。 */ fun resetFilter() { viewModel.flightDate.value = "" viewModel.flightNo.value = "" - viewModel.hoId.value = "" + viewModel.fdest.value = "" } /** 手机版筛选:确认 */ diff --git a/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpOutHandoverViewModel.kt b/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpOutHandoverViewModel.kt index 40e57ba..c3a6db9 100644 --- a/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpOutHandoverViewModel.kt +++ b/module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpOutHandoverViewModel.kt @@ -18,7 +18,6 @@ import com.lukouguoji.module_base.ktx.launchLoadingCollect import com.lukouguoji.module_base.ktx.showToast import com.lukouguoji.module_base.ktx.toRequestBody import com.lukouguoji.module_base.model.ScanModel -import com.lukouguoji.module_base.util.DictUtils import dev.utils.app.info.KeyValue import dev.utils.common.DateUtils import com.lukouguoji.module_base.ktx.formatDate @@ -36,12 +35,8 @@ class IntExpOutHandoverViewModel : BasePageViewModel() { val uldNo = MutableLiveData("") // ULD编号 // ========== 手机版(5.5 寸手持端)专用筛选条件 ========== - // 平板布局不含对应控件,两者保持空值 → 不会进入请求参数,平板查询行为与改造前完全一致 + // 平板布局不含对应控件,保持空值 → 不会进入请求参数,平板查询行为与改造前完全一致 val handoverState = MutableLiveData("") // 交接状态:"" 全部 / "0" 待交接 / "1" 已交接 - val hoId = MutableLiveData("") // 交接人(仓管编码) - - /** 交接人下拉数据(仅手机版筛选弹层使用,由 [initPhoneExtras] 触发加载) */ - val hoUserList = MutableLiveData>(emptyList()) /** 手机版状态 Tab 配置 */ val handoverStateTabs = MutableLiveData( @@ -52,7 +47,7 @@ class IntExpOutHandoverViewModel : BasePageViewModel() { val handoverStateCounts = MutableLiveData(listOf("", "")) /** - * 是否启用手机版专属数据(Tab 角标计数、交接人下拉)。 + * 是否启用手机版专属数据(Tab 角标计数)。 * * 由 Activity 在手机形态下置 true。平板端保持 false, * 因此不会产生任何额外接口请求,平板行为零变化。 @@ -70,15 +65,12 @@ class IntExpOutHandoverViewModel : BasePageViewModel() { val selectedCount = MutableLiveData("0") /** - * 开启手机版专属数据:默认停留「待交接」Tab、加载交接人下拉、启用 Tab 角标计数。 + * 开启手机版专属数据:默认停留「待交接」Tab、启用 Tab 角标计数。 * 仅由手机形态的 Activity 调用。 */ fun initPhoneExtras() { phoneExtrasEnabled = true handoverState.value = "0" - DictUtils.getWHSUserList(addAll = false) { list -> - hoUserList.postValue(list) - } } fun onItemCheckChanged() { @@ -218,11 +210,10 @@ class IntExpOutHandoverViewModel : BasePageViewModel() { "fno" to flightNo.value?.ifEmpty { null }, "fdest" to fdest.value?.ifEmpty { null }, "uld" to uldNo.value?.ifEmpty { null }, - // 以下两项为手机版新增筛选维度,平板端保持空值故不参与查询 + // 手机版 Tab 维度,平板端保持空值故不参与查询 // 参数名以 api-doc 为准:交接状态为 handoverState(integer,0 未交接 / 1 已交接)。 - // hoId(交接人)后端查询入参暂不支持,已记录到 documents/后端接口对接问题清单.xlsx - "handoverState" to handoverState.value?.ifEmpty { null }, - "hoId" to hoId.value?.ifEmpty { null } + // 其余筛选与平板端口径一致(fdate/fno/fdest/uld),后端不提供交接人查询入参 + "handoverState" to handoverState.value?.ifEmpty { null } ) // 列表参数 (含分页) @@ -257,15 +248,15 @@ class IntExpOutHandoverViewModel : BasePageViewModel() { /** * 加载「待交接 / 已交接」Tab 角标数量。 * - * 复用统计接口,分别以 handoverState=0 / 1 各查一次,且沿用当前其余筛选条件, - * 保证角标与列表口径一致。仅手机版调用。 + * 复用统计接口,分别以 handoverState=0 / 1 各查一次,且沿用当前其余筛选条件; + * 角标取 uldNumber(板箱数,与列表 pageQuery 的 total 同口径)。仅手机版调用。 */ private fun loadTabCounts(filterParams: Map) { listOf("0", "1").forEachIndexed { index, state -> val params = (filterParams + mapOf("handoverState" to state)).toRequestBody() launchCollect({ NetApply.api.getIntExpOutHandoverTotal(params) }) { onSuccess = { result -> - val count = (result.data?.wbNumber ?: 0).toString() + val count = (result.data?.uldNumber ?: 0).toString() val current = handoverStateCounts.value?.toMutableList() ?: mutableListOf("", "") if (index < current.size) { diff --git a/module_gjc/src/main/res/layout/activity_int_exp_out_handover.xml b/module_gjc/src/main/res/layout/activity_int_exp_out_handover.xml index 6d781bf..d7590d4 100644 --- a/module_gjc/src/main/res/layout/activity_int_exp_out_handover.xml +++ b/module_gjc/src/main/res/layout/activity_int_exp_out_handover.xml @@ -145,15 +145,14 @@ type="@{PhoneDataLayoutType.INPUT}" value="@={viewModel.flightNo}" /> - + + hint='@{"请输入目的站"}' + title='@{"目的站"}' + type="@{PhoneDataLayoutType.INPUT}" + value="@={viewModel.fdest}" />