feat: 国际出港 出港组装 开始组装

This commit is contained in:
2025-12-09 17:58:25 +08:00
parent 2871cbf784
commit 7d39cbf70f
8 changed files with 200 additions and 5 deletions

View File

@@ -7,5 +7,6 @@ class AssembleWaybillBean {
var waybillNo: String = "" // 运单号
var pieces: String = "" // 件数
var weight: String = "" // 重量
var flight: String = "" // 配载航班
var isMarked: Boolean = false // 是否标记(红色显示)
}

View File

@@ -568,6 +568,13 @@ interface Api {
@GET("IntExpAssemble/pageQueryAssembler")
suspend fun getIntExpAssemblerList(): BaseResultBean<List<String>>
/**
* 国际出港组装 - 查询待组装运单列表
* 接口路径: /IntExpAssemble/queryWaitingAssemble
*/
@POST("IntExpAssemble/queryWaitingAssemble")
suspend fun queryWaitingAssemble(@Body data: RequestBody): BaseResultBean<MutableList<GjcWarehouse>>
/**
* 国际出港出库交接-分页查询
* 接口路径: /IntExpOutHandover/pageQuery

View File

@@ -2,7 +2,9 @@ package com.lukouguoji.module_base.ui.weight.search.layout
import android.content.Context
import android.util.AttributeSet
import android.view.KeyEvent
import android.view.View
import android.view.inputmethod.EditorInfo
import android.widget.EditText
import android.widget.ImageView
import android.widget.LinearLayout
@@ -121,6 +123,11 @@ class PadSearchLayoutNew : LinearLayout {
var listRefreshCallBack: (() -> Unit)? = {}
/**
* 搜索事件回调(回车键或搜索按钮触发)
*/
var searchCallBack: (() -> Unit)? = null
///////////////////////////////////////////////////////////////////////////
// 方法区
///////////////////////////////////////////////////////////////////////////
@@ -138,6 +145,20 @@ class PadSearchLayoutNew : LinearLayout {
et.doOnTextChanged { text, _, _, _ ->
value = text.toString()
}
// 回车键监听 - 触发搜索
et.setOnEditorActionListener { v, actionId, event ->
if (actionId == EditorInfo.IME_ACTION_SEARCH ||
actionId == EditorInfo.IME_ACTION_DONE ||
(event?.keyCode == KeyEvent.KEYCODE_ENTER && event.action == KeyEvent.ACTION_DOWN)) {
// 优先调用searchCallBack如果没有则调用refreshCallBack
searchCallBack?.invoke() ?: refreshCallBack?.invoke()
true
} else {
false
}
}
bindOnSelected(spinner, object : IOnSpinnerSelected {
override fun onSelected(position: Int) {
value = list.getOrNull(position)?.value ?: ""

View File

@@ -140,6 +140,24 @@ fun setInputWaybill(layout: PadSearchLayout, isWaybill: Boolean) {
}
}
/**
* 设置搜索监听器(回车键或搜索按钮触发)
*/
@BindingAdapter("setOnSearchListener", requireAll = false)
fun setSearchLayoutNewOnSearchListener(layout: PadSearchLayoutNew, listener: (() -> Unit)?) {
layout.searchCallBack = listener
}
/**
* 设置搜索图标点击为搜索功能
*/
@BindingAdapter("setSearchIconClickListener", requireAll = false)
fun setSearchLayoutNewSearchIconClickListener(layout: PadSearchLayoutNew, listener: (() -> Unit)?) {
layout.iv.setOnClickListener {
listener?.invoke()
}
}
///////////////////////////////////////////////////////////////////////////
// PadSearchLayoutNew 的绑定适配器
///////////////////////////////////////////////////////////////////////////