feat: fix 国际出港 v2

This commit is contained in:
2026-01-24 17:44:12 +08:00
parent ff2649e063
commit d3ea88db08
2 changed files with 36 additions and 8 deletions

View File

@@ -186,9 +186,22 @@ class IntExpArriveViewModel : BasePageViewModel() {
*/
fun deleteDeclareClick() {
val list = pageModel.rv?.commonAdapter()?.items as? List<GjcMaWb> ?: return
val selectedItems = list.filter { it.isSelected }
if (selectedItems.isEmpty()) {
// 收集选中的主单
val selectedMaWbList = list.filter { it.isSelected }
// 收集选中的分单
val selectedHaWbList = mutableListOf<GjcHaWb>()
list.forEach { maWb ->
maWb.haWbList?.forEach { haWb ->
if (haWb.isSelected) {
selectedHaWbList.add(haWb)
}
}
}
// 检查是否有选中项(主单和分单分开判断,互不影响)
if (selectedMaWbList.isEmpty() && selectedHaWbList.isEmpty()) {
showToast("请选择要删除申报的记录")
return
}
@@ -200,12 +213,13 @@ class IntExpArriveViewModel : BasePageViewModel() {
// 创建并显示弹框
val dialog = IntExpArriveDeleteDialogModel(changeReasonList) { dialogModel ->
// 弹框确认后的回调
// 弹框确认后的回调(区分主单和分单)
val param = GjcDeclareParam(
dcode = dialogModel.changeReason.value,
dcontactsName = dialogModel.contactName.value,
dcontactsTel = dialogModel.contactPhone.value,
maWbList = selectedItems
maWbList = if (selectedMaWbList.isNotEmpty()) selectedMaWbList else null,
haWbList = if (selectedHaWbList.isNotEmpty()) selectedHaWbList else null
)
val requestData = param.toRequestBody()

View File

@@ -233,9 +233,22 @@ class IntExpTallyViewModel : BasePageViewModel() {
*/
fun deleteTally() {
val list = pageModel.rv?.commonAdapter()?.items as? List<GjcMaWb> ?: return
val selectedItems = list.filter { it.isSelected }
if (selectedItems.isEmpty()) {
// 收集选中的主单
val selectedMaWbList = list.filter { it.isSelected }
// 收集选中的分单
val selectedHaWbList = mutableListOf<GjcHaWb>()
list.forEach { maWb ->
maWb.haWbList?.forEach { haWb ->
if (haWb.isSelected) {
selectedHaWbList.add(haWb)
}
}
}
// 检查是否有选中项(主单和分单分开判断,互不影响)
if (selectedMaWbList.isEmpty() && selectedHaWbList.isEmpty()) {
showToast("请选择要删除申报的记录")
return
}
@@ -247,12 +260,13 @@ class IntExpTallyViewModel : BasePageViewModel() {
// 创建并显示弹框
val dialog = IntExpTallyDeleteDialogModel(changeReasonList) { dialogModel ->
// 弹框确认后的回调
// 弹框确认后的回调(区分主单和分单)
val param = GjcDeclareParam(
dcode = dialogModel.changeReason.value,
dcontactsName = dialogModel.contactName.value,
dcontactsTel = dialogModel.contactPhone.value,
maWbList = selectedItems
maWbList = if (selectedMaWbList.isNotEmpty()) selectedMaWbList else null,
haWbList = if (selectedHaWbList.isNotEmpty()) selectedHaWbList else null
)
val requestData = param.toRequestBody()