Compare commits
3 Commits
9406047a57
...
a1c53dd9fe
| Author | SHA1 | Date | |
|---|---|---|---|
| a1c53dd9fe | |||
| a60d59de83 | |||
| d0c7207b5a |
@@ -60,7 +60,10 @@
|
|||||||
"Bash(git commit:*)",
|
"Bash(git commit:*)",
|
||||||
"WebFetch(domain:support.claude.com)",
|
"WebFetch(domain:support.claude.com)",
|
||||||
"WebFetch(domain:api.apifox.com)",
|
"WebFetch(domain:api.apifox.com)",
|
||||||
"Bash(curl:*)"
|
"Bash(curl:*)",
|
||||||
|
"Bash(git:*)",
|
||||||
|
"WebFetch(domain:app.apifox.com)",
|
||||||
|
"WebFetch(domain:apifox.com)"
|
||||||
],
|
],
|
||||||
"deny": [],
|
"deny": [],
|
||||||
"ask": []
|
"ask": []
|
||||||
|
|||||||
@@ -15,6 +15,10 @@ data class GjjAirManifest(
|
|||||||
// 选中状态(用于列表多选)
|
// 选中状态(用于列表多选)
|
||||||
val checked: ObservableBoolean = ObservableBoolean(false)
|
val checked: ObservableBoolean = ObservableBoolean(false)
|
||||||
|
|
||||||
|
// 展开/收起状态(用于子列表显示控制)
|
||||||
|
@Transient
|
||||||
|
val showMore: ObservableBoolean = ObservableBoolean(false)
|
||||||
|
|
||||||
// 兼容现有API的isSelected属性
|
// 兼容现有API的isSelected属性
|
||||||
var isSelected: Boolean
|
var isSelected: Boolean
|
||||||
get() = checked.get()
|
get() = checked.get()
|
||||||
|
|||||||
@@ -1753,6 +1753,12 @@ interface Api {
|
|||||||
@POST("IntImpAirManifest/deleteDeclare")
|
@POST("IntImpAirManifest/deleteDeclare")
|
||||||
suspend fun deleteIntArrManifestDeclare(@Body data: RequestBody): BaseResultBean<Boolean>
|
suspend fun deleteIntArrManifestDeclare(@Body data: RequestBody): BaseResultBean<Boolean>
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 国际进港原始舱单-补充收发货人信息
|
||||||
|
*/
|
||||||
|
@POST("IntImpAirManifest/complete")
|
||||||
|
suspend fun completeIntArrManifest(@Body data: RequestBody): BaseResultBean<Any>
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// 国际进港-进港舱单
|
// 国际进港-进港舱单
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|||||||
@@ -32,9 +32,9 @@ class IntArrSupplementInfoActivity :
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@JvmStatic
|
@JvmStatic
|
||||||
fun start(context: Context, manifest: GjjImportManifest) {
|
fun start(context: Context, manifestList: ArrayList<GjjImportManifest>) {
|
||||||
val starter = Intent(context, IntArrSupplementInfoActivity::class.java)
|
val starter = Intent(context, IntArrSupplementInfoActivity::class.java)
|
||||||
.putExtra(Constant.Key.DATA, manifest)
|
.putExtra(Constant.Key.DATA, manifestList)
|
||||||
context.startActivity(starter)
|
context.startActivity(starter)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
package com.lukouguoji.gjj.holder
|
||||||
|
|
||||||
|
import android.view.View
|
||||||
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
|
import com.lukouguoji.gjj.databinding.ItemIntArrAirManifestSubBinding
|
||||||
|
import com.lukouguoji.module_base.base.BaseViewHolder
|
||||||
|
import com.lukouguoji.module_base.bean.GjjAirManifest
|
||||||
|
import com.lukouguoji.module_base.bean.GjjImportManifest
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 国际进港原始舱单 - 分单子列表 ViewHolder
|
||||||
|
*/
|
||||||
|
class IntArrAirManifestSubViewHolder(view: View) :
|
||||||
|
BaseViewHolder<GjjImportManifest, ItemIntArrAirManifestSubBinding>(view) {
|
||||||
|
|
||||||
|
override fun onBind(item: Any?, position: Int) {
|
||||||
|
val bean = getItemBean(item) ?: return
|
||||||
|
binding.bean = bean
|
||||||
|
binding.position = position
|
||||||
|
binding.executePendingBindings()
|
||||||
|
|
||||||
|
// 单选框点击切换选择状态
|
||||||
|
binding.ivCheckbox.setOnClickListener {
|
||||||
|
val newCheckedState = !bean.checked.get()
|
||||||
|
bean.checked.set(newCheckedState)
|
||||||
|
binding.executePendingBindings()
|
||||||
|
|
||||||
|
// 反向联动主列表项(勾选子项时自动勾选父项)
|
||||||
|
if (newCheckedState) {
|
||||||
|
val recyclerView = itemView.parent as? RecyclerView ?: return@setOnClickListener
|
||||||
|
val parentBean = recyclerView.tag as? GjjAirManifest ?: return@setOnClickListener
|
||||||
|
parentBean.checked.set(true)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -3,8 +3,10 @@ package com.lukouguoji.gjj.holder
|
|||||||
import android.view.View
|
import android.view.View
|
||||||
import com.lukouguoji.gjj.R
|
import com.lukouguoji.gjj.R
|
||||||
import com.lukouguoji.gjj.databinding.ItemIntArrAirManifestBinding
|
import com.lukouguoji.gjj.databinding.ItemIntArrAirManifestBinding
|
||||||
|
import com.lukouguoji.module_base.adapter.setCommonAdapter
|
||||||
import com.lukouguoji.module_base.base.BaseViewHolder
|
import com.lukouguoji.module_base.base.BaseViewHolder
|
||||||
import com.lukouguoji.module_base.bean.GjjAirManifest
|
import com.lukouguoji.module_base.bean.GjjAirManifest
|
||||||
|
import com.lukouguoji.module_base.ktx.refresh
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 国际进港原始舱单 ViewHolder
|
* 国际进港原始舱单 ViewHolder
|
||||||
@@ -24,10 +26,30 @@ class IntArrAirManifestViewHolder(view: View) :
|
|||||||
// 整卡点击 - 跳转详情页
|
// 整卡点击 - 跳转详情页
|
||||||
notifyItemClick(position, binding.ll)
|
notifyItemClick(position, binding.ll)
|
||||||
|
|
||||||
// 图标点击 - 切换选择状态(拦截,不触发卡片点击)
|
// 图标点击 - 切换选择状态(联动子列表)
|
||||||
binding.ivIcon.setOnClickListener {
|
binding.ivIcon.setOnClickListener {
|
||||||
bean.checked.set(!bean.checked.get())
|
val newCheckedState = !bean.checked.get()
|
||||||
|
bean.checked.set(newCheckedState)
|
||||||
|
// 联动子列表选中状态
|
||||||
|
bean.haWbList?.forEach { sub -> sub.checked.set(newCheckedState) }
|
||||||
binding.executePendingBindings()
|
binding.executePendingBindings()
|
||||||
|
binding.rvSub.adapter?.notifyDataSetChanged()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 展开按钮点击事件
|
||||||
|
binding.ivShow.setOnClickListener {
|
||||||
|
bean.showMore.set(!bean.showMore.get())
|
||||||
|
}
|
||||||
|
|
||||||
|
// 初始化分单子列表 RecyclerView
|
||||||
|
setCommonAdapter(
|
||||||
|
binding.rvSub,
|
||||||
|
IntArrAirManifestSubViewHolder::class.java,
|
||||||
|
R.layout.item_int_arr_air_manifest_sub
|
||||||
|
)
|
||||||
|
|
||||||
|
// 设置父Bean引用(用于子列表反向联动)
|
||||||
|
binding.rvSub.tag = bean
|
||||||
|
binding.rvSub.refresh(bean.haWbList ?: emptyList())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,11 +41,17 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
|||||||
// ========== 全选状态 ==========
|
// ========== 全选状态 ==========
|
||||||
val isAllChecked = MutableLiveData(false)
|
val isAllChecked = MutableLiveData(false)
|
||||||
|
|
||||||
|
// ========== 全部展开状态 ==========
|
||||||
|
val isAllExpanded = MutableLiveData(false)
|
||||||
|
|
||||||
init {
|
init {
|
||||||
// 监听全选状态,自动更新所有列表项
|
// 监听全选状态,自动更新所有列表项(含子列表)
|
||||||
isAllChecked.observeForever { checked ->
|
isAllChecked.observeForever { checked ->
|
||||||
val list = pageModel.rv?.commonAdapter()?.items as? List<GjjAirManifest> ?: return@observeForever
|
val list = pageModel.rv?.commonAdapter()?.items as? List<GjjAirManifest> ?: return@observeForever
|
||||||
list.forEach { it.checked.set(checked) }
|
list.forEach {
|
||||||
|
it.checked.set(checked)
|
||||||
|
it.haWbList?.forEach { sub -> sub.checked.set(checked) }
|
||||||
|
}
|
||||||
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -69,12 +75,30 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
|||||||
|
|
||||||
// 切换全选状态
|
// 切换全选状态
|
||||||
val shouldCheckAll = !isAllChecked.value!!
|
val shouldCheckAll = !isAllChecked.value!!
|
||||||
list.forEach { it.checked.set(shouldCheckAll) }
|
list.forEach {
|
||||||
|
it.checked.set(shouldCheckAll)
|
||||||
|
it.haWbList?.forEach { sub -> sub.checked.set(shouldCheckAll) }
|
||||||
|
}
|
||||||
isAllChecked.value = shouldCheckAll
|
isAllChecked.value = shouldCheckAll
|
||||||
|
|
||||||
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 全部展开/收起
|
||||||
|
*/
|
||||||
|
fun toggleAllExpand() {
|
||||||
|
val shouldExpand = !isAllExpanded.value!!
|
||||||
|
isAllExpanded.value = shouldExpand
|
||||||
|
val list = pageModel.rv?.commonAdapter()?.items as? List<GjjAirManifest> ?: return
|
||||||
|
list.forEach { bean ->
|
||||||
|
if (!bean.haWbList.isNullOrEmpty()) {
|
||||||
|
bean.showMore.set(shouldExpand)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 扫码运单号
|
* 扫码运单号
|
||||||
*/
|
*/
|
||||||
@@ -140,13 +164,14 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取第一个选中项的主单数据
|
// 收集所有选中项的主单数据
|
||||||
val manifest = selectedItems.firstOrNull()?.maWb ?: return
|
val manifestList = ArrayList(selectedItems.mapNotNull { it.maWb })
|
||||||
|
if (manifestList.isEmpty()) return
|
||||||
|
|
||||||
// 跳转到补充信息页面
|
// 跳转到补充信息页面(传递完整列表)
|
||||||
com.lukouguoji.gjj.activity.IntArrSupplementInfoActivity.start(
|
com.lukouguoji.gjj.activity.IntArrSupplementInfoActivity.start(
|
||||||
getTopActivity(),
|
getTopActivity(),
|
||||||
manifest
|
manifestList
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -267,6 +292,7 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
|||||||
// 获取列表(带Loading,接口直接返回PageInfo,无BaseResultBean包装)
|
// 获取列表(带Loading,接口直接返回PageInfo,无BaseResultBean包装)
|
||||||
launchLoadingCollect({ NetApply.api.getIntArrAirManifestList(listParams) }) {
|
launchLoadingCollect({ NetApply.api.getIntArrAirManifestList(listParams) }) {
|
||||||
onSuccess = { result ->
|
onSuccess = { result ->
|
||||||
|
isAllExpanded.value = false
|
||||||
pageModel.handleListBean(result.toBaseListBean())
|
pageModel.handleListBean(result.toBaseListBean())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,43 +2,133 @@ package com.lukouguoji.gjj.viewModel
|
|||||||
|
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
import androidx.lifecycle.viewModelScope
|
||||||
import com.lukouguoji.module_base.base.BaseViewModel
|
import com.lukouguoji.module_base.base.BaseViewModel
|
||||||
import com.lukouguoji.module_base.bean.GjjImportManifest
|
import com.lukouguoji.module_base.bean.GjjImportManifest
|
||||||
import com.lukouguoji.module_base.common.Constant
|
import com.lukouguoji.module_base.common.Constant
|
||||||
|
import com.lukouguoji.module_base.common.ConstantEvent
|
||||||
|
import com.lukouguoji.module_base.http.net.NetApply
|
||||||
|
import com.lukouguoji.module_base.impl.FlowBus
|
||||||
|
import com.lukouguoji.module_base.ktx.launchCollect
|
||||||
|
import com.lukouguoji.module_base.ktx.launchLoadingCollect
|
||||||
import com.lukouguoji.module_base.ktx.showToast
|
import com.lukouguoji.module_base.ktx.showToast
|
||||||
|
import com.lukouguoji.module_base.ktx.toRequestBody
|
||||||
|
import dev.utils.app.info.KeyValue
|
||||||
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 国际进港补充信息 ViewModel
|
* 国际进港补充信息 ViewModel
|
||||||
*/
|
*/
|
||||||
class IntArrSupplementInfoViewModel : BaseViewModel() {
|
class IntArrSupplementInfoViewModel : BaseViewModel() {
|
||||||
|
|
||||||
// 数据对象
|
// 表单编辑用数据对象
|
||||||
val dataBean = MutableLiveData<GjjImportManifest>()
|
val dataBean = MutableLiveData<GjjImportManifest>()
|
||||||
|
|
||||||
|
// 所有选中的 manifest 列表(用于批量保存)
|
||||||
|
private var manifestList: List<GjjImportManifest> = emptyList()
|
||||||
|
|
||||||
|
// 国家代码下拉列表
|
||||||
|
val countryCodeList = MutableLiveData<List<KeyValue>>(emptyList())
|
||||||
|
|
||||||
|
// 通讯方式下拉列表
|
||||||
|
val comTypeList = MutableLiveData<List<KeyValue>>(emptyList())
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 初始化数据
|
* 初始化数据
|
||||||
*/
|
*/
|
||||||
|
@Suppress("UNCHECKED_CAST")
|
||||||
fun initOnCreated(intent: Intent) {
|
fun initOnCreated(intent: Intent) {
|
||||||
val manifest = intent.getSerializableExtra(Constant.Key.DATA) as? GjjImportManifest
|
val list = intent.getSerializableExtra(Constant.Key.DATA) as? ArrayList<GjjImportManifest>
|
||||||
if (manifest != null) {
|
if (!list.isNullOrEmpty()) {
|
||||||
dataBean.value = manifest
|
manifestList = list
|
||||||
|
// 取首个填充表单,让用户看到已有数据
|
||||||
|
dataBean.value = list.first().copy()
|
||||||
} else {
|
} else {
|
||||||
dataBean.value = GjjImportManifest()
|
dataBean.value = GjjImportManifest()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 加载下拉列表
|
||||||
|
loadCountryCodeList()
|
||||||
|
loadComTypeList()
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 加载国家代码下拉列表
|
||||||
|
*/
|
||||||
|
private fun loadCountryCodeList() {
|
||||||
|
launchCollect({ NetApply.api.getAreaTypeList() }) {
|
||||||
|
onSuccess = { result ->
|
||||||
|
val keyValueList = result.data?.mapNotNull { bean ->
|
||||||
|
if (bean.code != null && bean.name != null) {
|
||||||
|
KeyValue(bean.name, bean.code)
|
||||||
|
} else null
|
||||||
|
} ?: emptyList()
|
||||||
|
countryCodeList.value = keyValueList
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 取消按钮点击 - 暂不实现
|
* 加载通讯方式下拉列表(本地固定值)
|
||||||
|
*/
|
||||||
|
private fun loadComTypeList() {
|
||||||
|
comTypeList.value = listOf(
|
||||||
|
KeyValue("电话(TE)", "TE"),
|
||||||
|
KeyValue("传真(FX)", "FX")
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消按钮点击
|
||||||
*/
|
*/
|
||||||
fun cancel() {
|
fun cancel() {
|
||||||
showToast("取消功能暂未实现")
|
|
||||||
getTopActivity().finish()
|
getTopActivity().finish()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保存按钮点击 - 暂不实现
|
* 保存按钮点击 - 将表单信息复制到所有选中项,批量提交
|
||||||
*/
|
*/
|
||||||
fun save() {
|
fun save() {
|
||||||
showToast("保存功能暂未实现")
|
val formBean = dataBean.value ?: return
|
||||||
|
|
||||||
|
if (manifestList.isEmpty()) {
|
||||||
|
showToast("无可保存的数据")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 将表单中的收发货人+危险品字段复制到每个 manifest
|
||||||
|
val updatedList = manifestList.map { manifest ->
|
||||||
|
manifest.copy(
|
||||||
|
// 收货人信息
|
||||||
|
consigneeName = formBean.consigneeName,
|
||||||
|
consigneeCountryCode = formBean.consigneeCountryCode,
|
||||||
|
consigneeComType = formBean.consigneeComType,
|
||||||
|
consigneePNum = formBean.consigneePNum,
|
||||||
|
consigneeAddress = formBean.consigneeAddress,
|
||||||
|
// 发货人信息
|
||||||
|
consignorName = formBean.consignorName,
|
||||||
|
consignorCountryCode = formBean.consignorCountryCode,
|
||||||
|
consignorComType = formBean.consignorComType,
|
||||||
|
consignorPNum = formBean.consignorPNum,
|
||||||
|
consignorAddress = formBean.consignorAddress,
|
||||||
|
// 危险品信息
|
||||||
|
dgrContactMame = formBean.dgrContactMame,
|
||||||
|
dgrContactNumber = formBean.dgrContactNumber,
|
||||||
|
unNumber = formBean.unNumber
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
// 拼装成数组提交
|
||||||
|
launchLoadingCollect({
|
||||||
|
NetApply.api.completeIntArrManifest(updatedList.toRequestBody())
|
||||||
|
}) {
|
||||||
|
onSuccess = {
|
||||||
|
showToast("保存成功")
|
||||||
|
viewModelScope.launch {
|
||||||
|
FlowBus.with<String>(ConstantEvent.EVENT_REFRESH).emit("refresh")
|
||||||
|
}
|
||||||
|
getTopActivity().finish()
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -87,6 +87,14 @@
|
|||||||
android:padding="2dp"
|
android:padding="2dp"
|
||||||
android:src="@drawable/img_search" />
|
android:src="@drawable/img_search" />
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:layout_width="36dp"
|
||||||
|
android:layout_height="36dp"
|
||||||
|
android:layout_marginStart="8dp"
|
||||||
|
android:onClick="@{()-> viewModel.toggleAllExpand()}"
|
||||||
|
android:padding="4dp"
|
||||||
|
android:src="@drawable/ic_new_expand" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -70,9 +70,10 @@
|
|||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
enable="@{true}"
|
enable="@{true}"
|
||||||
hint='@{"请选择国家代码"}'
|
hint='@{"请选择国家代码"}'
|
||||||
|
list="@{viewModel.countryCodeList}"
|
||||||
title='@{"国家代码"}'
|
title='@{"国家代码"}'
|
||||||
titleLength="@{5}"
|
titleLength="@{5}"
|
||||||
type="@{DataLayoutType.INPUT}"
|
type="@{DataLayoutType.SPINNER}"
|
||||||
value='@={viewModel.dataBean.consigneeCountryCode}' />
|
value='@={viewModel.dataBean.consigneeCountryCode}' />
|
||||||
|
|
||||||
<com.lukouguoji.module_base.ui.weight.data.layout.PadDataLayoutNew
|
<com.lukouguoji.module_base.ui.weight.data.layout.PadDataLayoutNew
|
||||||
@@ -81,9 +82,10 @@
|
|||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
enable="@{true}"
|
enable="@{true}"
|
||||||
hint='@{"请选择通讯方式"}'
|
hint='@{"请选择通讯方式"}'
|
||||||
|
list="@{viewModel.comTypeList}"
|
||||||
title='@{"通讯方式"}'
|
title='@{"通讯方式"}'
|
||||||
titleLength="@{5}"
|
titleLength="@{5}"
|
||||||
type="@{DataLayoutType.INPUT}"
|
type="@{DataLayoutType.SPINNER}"
|
||||||
value='@={viewModel.dataBean.consigneeComType}' />
|
value='@={viewModel.dataBean.consigneeComType}' />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
@@ -163,9 +165,10 @@
|
|||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
enable="@{true}"
|
enable="@{true}"
|
||||||
hint='@{"请选择国家代码"}'
|
hint='@{"请选择国家代码"}'
|
||||||
|
list="@{viewModel.countryCodeList}"
|
||||||
title='@{"国家代码"}'
|
title='@{"国家代码"}'
|
||||||
titleLength="@{5}"
|
titleLength="@{5}"
|
||||||
type="@{DataLayoutType.INPUT}"
|
type="@{DataLayoutType.SPINNER}"
|
||||||
value='@={viewModel.dataBean.consignorCountryCode}' />
|
value='@={viewModel.dataBean.consignorCountryCode}' />
|
||||||
|
|
||||||
<com.lukouguoji.module_base.ui.weight.data.layout.PadDataLayoutNew
|
<com.lukouguoji.module_base.ui.weight.data.layout.PadDataLayoutNew
|
||||||
@@ -174,9 +177,10 @@
|
|||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
enable="@{true}"
|
enable="@{true}"
|
||||||
hint='@{"请选择通讯方式"}'
|
hint='@{"请选择通讯方式"}'
|
||||||
|
list="@{viewModel.comTypeList}"
|
||||||
title='@{"通讯方式"}'
|
title='@{"通讯方式"}'
|
||||||
titleLength="@{5}"
|
titleLength="@{5}"
|
||||||
type="@{DataLayoutType.INPUT}"
|
type="@{DataLayoutType.SPINNER}"
|
||||||
value='@={viewModel.dataBean.consignorComType}' />
|
value='@={viewModel.dataBean.consignorComType}' />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|||||||
@@ -19,260 +19,414 @@
|
|||||||
type="Integer" />
|
type="Integer" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
<!-- 主列表项容器 -->
|
||||||
android:id="@+id/ll"
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="15dp"
|
android:layout_marginHorizontal="15dp"
|
||||||
android:layout_marginVertical="5dp"
|
android:layout_marginVertical="5dp"
|
||||||
android:background="@drawable/bg_item"
|
android:orientation="vertical">
|
||||||
android:orientation="horizontal"
|
|
||||||
android:padding="10dp">
|
|
||||||
|
|
||||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
<!-- 白色卡片主要内容区域 -->
|
||||||
<ImageView
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
android:id="@+id/iv_icon"
|
android:id="@+id/ll"
|
||||||
android:layout_width="40dp"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="40dp"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
loadImage="@{bean.checked.get() ? @drawable/img_plane_s : @drawable/img_plane}"
|
|
||||||
android:src="@drawable/img_plane" />
|
|
||||||
|
|
||||||
<!-- 舱单信息区域 -->
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="10dp"
|
android:background="@drawable/bg_item"
|
||||||
android:layout_weight="1"
|
android:orientation="horizontal"
|
||||||
android:orientation="vertical">
|
android:padding="10dp">
|
||||||
|
|
||||||
<!-- 第一行:运单号、状态、代理、件数、重量 -->
|
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
<ImageView
|
||||||
android:layout_width="match_parent"
|
android:id="@+id/iv_icon"
|
||||||
android:layout_height="wrap_content">
|
android:layout_width="40dp"
|
||||||
|
android:layout_height="40dp"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
loadImage="@{bean.checked.get() ? @drawable/img_plane_s : @drawable/img_plane}"
|
||||||
|
android:src="@drawable/img_plane" />
|
||||||
|
|
||||||
<!-- 运单号 -->
|
<!-- 舱单信息区域 -->
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="10dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<!-- 第一行:运单号、状态、代理、件数、重量 -->
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
android:layout_width="0dp"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content">
|
||||||
android:layout_weight="1.0"
|
|
||||||
android:gravity="center_vertical">
|
|
||||||
|
|
||||||
<TextView
|
<!-- 运单号 -->
|
||||||
android:layout_width="wrap_content"
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
completeSpace="@{4}"
|
android:layout_weight="1.0"
|
||||||
android:text="运单号:" />
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="运单号:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.wbNo}"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 状态 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@{manifest.wbNo}"
|
android:layout_weight="0.8"
|
||||||
android:textColor="@color/colorPrimary"
|
android:gravity="center_vertical">
|
||||||
android:textStyle="bold" />
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="状态:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.mftStatus ?? ``}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 代理 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="代理:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.agentCode ?? ``}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 件数 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1.2"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{5}"
|
||||||
|
android:text="件数:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{String.valueOf((int)manifest.pc)}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 重量 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="重量:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{String.valueOf((int)manifest.weight)}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
<!-- 状态 -->
|
<!-- 第二行:特码、始发站、目的站、运单类型、分单数 -->
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
android:layout_width="0dp"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="0.8"
|
android:layout_marginTop="10dp">
|
||||||
android:gravity="center_vertical">
|
|
||||||
|
|
||||||
<TextView
|
<!-- 特码 -->
|
||||||
android:layout_width="wrap_content"
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
completeSpace="@{4}"
|
android:layout_weight="1.0"
|
||||||
android:text="状态:" />
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="特码:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.spCode ?? ``}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 始发站 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@{manifest.mftStatus ?? ``}" />
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="始发站:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.fdep ?? ``}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 目的站 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="目的站:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.fdest ?? ``}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 运单类型 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1.2"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{5}"
|
||||||
|
android:text="运单类型:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{manifest.awbTypeName ?? ``}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
|
<!-- 分单数 -->
|
||||||
|
<androidx.appcompat.widget.LinearLayoutCompat
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center_vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
completeSpace="@{4}"
|
||||||
|
android:text="分单数:" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@{String.valueOf(manifest.haWbNum)}" />
|
||||||
|
|
||||||
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
|
|
||||||
<!-- 代理 -->
|
</LinearLayout>
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_weight="0.8"
|
|
||||||
android:gravity="center_vertical">
|
|
||||||
|
|
||||||
<TextView
|
<!-- 右侧箭头 -->
|
||||||
android:layout_width="wrap_content"
|
<ImageView
|
||||||
android:layout_height="wrap_content"
|
android:layout_width="30dp"
|
||||||
completeSpace="@{4}"
|
android:layout_height="30dp"
|
||||||
android:text="代理:" />
|
android:layout_gravity="center"
|
||||||
|
android:layout_marginLeft="10dp"
|
||||||
|
android:src="@drawable/img_pda_right" />
|
||||||
|
|
||||||
<TextView
|
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{manifest.agentCode ?? ``}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
<!-- 展开/折叠按钮(仅当有分单时显示) -->
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/iv_show"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="20dp"
|
||||||
|
android:layout_marginTop="5dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:src="@mipmap/img_down"
|
||||||
|
visible="@{bean.haWbList != null && !bean.haWbList.empty}" />
|
||||||
|
|
||||||
<!-- 件数 -->
|
<!-- 分单子列表容器(淡绿色背景) -->
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
<LinearLayout
|
||||||
android:layout_width="0dp"
|
visible="@{bean.showMore}"
|
||||||
android:layout_height="wrap_content"
|
android:layout_width="match_parent"
|
||||||
android:layout_weight="1.2"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center_vertical">
|
android:layout_marginTop="5dp"
|
||||||
|
android:background="#e3f6e0"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
<TextView
|
<!-- 表头 -->
|
||||||
android:layout_width="wrap_content"
|
<LinearLayout
|
||||||
android:layout_height="wrap_content"
|
|
||||||
completeSpace="@{5}"
|
|
||||||
android:text="件数:" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{String.valueOf((int)manifest.pc)}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
<!-- 重量 -->
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_weight="0.8"
|
|
||||||
android:gravity="center_vertical">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
completeSpace="@{4}"
|
|
||||||
android:text="重量:" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{String.valueOf((int)manifest.weight)}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
<!-- 第二行:特码、始发站、目的站、运单类型、分单数 -->
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="10dp">
|
android:layout_marginVertical="10dp"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingHorizontal="10dp">
|
||||||
|
|
||||||
<!-- 特码 -->
|
<TextView
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.5"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="选项"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1.0"
|
android:layout_weight="1.0"
|
||||||
android:gravity="center_vertical">
|
android:gravity="center"
|
||||||
|
android:text="分单号"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
completeSpace="@{4}"
|
|
||||||
android:text="特码:" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{manifest.spCode ?? ``}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
<!-- 始发站 -->
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="0.8"
|
android:layout_weight="0.8"
|
||||||
android:gravity="center_vertical">
|
android:gravity="center"
|
||||||
|
android:text="件数"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
completeSpace="@{4}"
|
|
||||||
android:text="始发站:" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{manifest.fdep ?? ``}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
<!-- 目的站 -->
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="0.8"
|
android:layout_weight="0.8"
|
||||||
android:gravity="center_vertical">
|
android:gravity="center"
|
||||||
|
android:text="重量"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
completeSpace="@{4}"
|
|
||||||
android:text="目的站:" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{manifest.fdest ?? ``}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
<!-- 运单类型 -->
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_weight="1.2"
|
|
||||||
android:gravity="center_vertical">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
completeSpace="@{5}"
|
|
||||||
android:text="运单类型:" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@{manifest.awbTypeName ?? ``}" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
<!-- 分单数 -->
|
|
||||||
<androidx.appcompat.widget.LinearLayoutCompat
|
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="0.8"
|
android:layout_weight="0.8"
|
||||||
android:gravity="center_vertical">
|
android:gravity="center"
|
||||||
|
android:text="申报状态"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
completeSpace="@{4}"
|
android:layout_weight="1.0"
|
||||||
android:text="分单数:" />
|
android:gravity="center"
|
||||||
|
android:text="品名(中)"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@{String.valueOf(manifest.haWbNum)}" />
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="申报次数"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="申报费率"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="删除次数"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="删除费率"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<com.google.android.material.divider.MaterialDivider
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1px"
|
||||||
|
android:background="@color/c999999" />
|
||||||
|
|
||||||
|
<!-- 子列表 RecyclerView -->
|
||||||
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
|
android:id="@+id/rv_sub"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<!-- 右侧箭头 -->
|
</LinearLayout>
|
||||||
<ImageView
|
|
||||||
android:layout_width="30dp"
|
|
||||||
android:layout_height="30dp"
|
|
||||||
android:layout_gravity="center"
|
|
||||||
android:layout_marginLeft="10dp"
|
|
||||||
android:src="@drawable/img_pda_right" />
|
|
||||||
|
|
||||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
|
||||||
|
|
||||||
</layout>
|
</layout>
|
||||||
|
|||||||
134
module_gjj/src/main/res/layout/item_int_arr_air_manifest_sub.xml
Normal file
134
module_gjj/src/main/res/layout/item_int_arr_air_manifest_sub.xml
Normal file
@@ -0,0 +1,134 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<layout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:loadImage="http://schemas.android.com/tools">
|
||||||
|
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<variable
|
||||||
|
name="bean"
|
||||||
|
type="com.lukouguoji.module_base.bean.GjjImportManifest" />
|
||||||
|
|
||||||
|
<variable
|
||||||
|
name="position"
|
||||||
|
type="Integer" />
|
||||||
|
</data>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:paddingHorizontal="10dp"
|
||||||
|
android:paddingVertical="8dp">
|
||||||
|
|
||||||
|
<!-- 选项(单选框) -->
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/iv_checkbox"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="20dp"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.5"
|
||||||
|
loadImage="@{bean.checked.get() ? @drawable/radiobtn_checked_gray : @drawable/radiobtn_unchecked_gray}"
|
||||||
|
android:src="@drawable/radiobtn_unchecked_gray" />
|
||||||
|
|
||||||
|
<!-- 分单号 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="1.0"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{bean.hno ?? ``}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 件数 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{String.valueOf((int)bean.pc)}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 重量 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{String.valueOf((int)bean.weight)}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 申报状态 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{bean.mftStatus ?? ``}"
|
||||||
|
android:textColor="@color/colorPrimary"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 品名(中) -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="1.0"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{bean.goodsCn ?? ``}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 申报次数 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{String.valueOf((int)bean.mftSCount)}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 申报费率 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{String.valueOf(bean.mftSRate)}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 删除次数 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{String.valueOf((int)bean.mftDCount)}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
<!-- 删除费率 -->
|
||||||
|
<TextView
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center_vertical"
|
||||||
|
android:layout_weight="0.8"
|
||||||
|
android:gravity="center"
|
||||||
|
android:text="@{String.valueOf(bean.mftDRate)}"
|
||||||
|
android:textColor="@color/text_normal"
|
||||||
|
android:textSize="14sp" />
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</layout>
|
||||||
Reference in New Issue
Block a user