Compare commits
22 Commits
07f50fdfc7
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| d937ecef77 | |||
| 0f118391b5 | |||
| faf7698829 | |||
| f53a15abb5 | |||
| eba9b44699 | |||
| 128b7c3e4e | |||
| 3fedef27a7 | |||
| 608f1af1f4 | |||
| 0a0827f516 | |||
| 9f7b2dc27c | |||
| aa8920ec55 | |||
| b91b54acbe | |||
| 7d5b3b2438 | |||
| 30532386fb | |||
| 721b8c7128 | |||
| 8d70d6aaee | |||
| 9ff3bbbefc | |||
| c826db8718 | |||
| 0427020bc1 | |||
| 8c689d9d65 | |||
| c77c6a817b | |||
| 64721a6efe |
@@ -147,7 +147,9 @@
|
||||
"Bash(sed -n '60,75p' module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpOutHandoverViewModel.kt)",
|
||||
"Bash(sed -n '73,100p' module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpArriveViewModel.kt)",
|
||||
"Bash(sed -n '82,115p' module_gjc/src/main/java/com/lukouguoji/gjc/viewModel/IntExpStorageUseViewModel.kt)",
|
||||
"Bash(sed -n '212,240p' module_gjj/src/main/java/com/lukouguoji/gjj/viewModel/IntImpManifestViewModel.kt)"
|
||||
"Bash(sed -n '212,240p' module_gjj/src/main/java/com/lukouguoji/gjj/viewModel/IntImpManifestViewModel.kt)",
|
||||
"mcp__plugin_claude-mem_mcp-search__search",
|
||||
"Read(//Users/kid/.claude/**)"
|
||||
],
|
||||
"deny": [],
|
||||
"ask": []
|
||||
|
||||
@@ -272,4 +272,4 @@ class LoginActivity : BaseActivity(),
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,6 +9,8 @@ data class GjcCheckInPage(
|
||||
var fno: String? = null, // 航班号
|
||||
var wbNo: String? = null, // 运单号
|
||||
var hno: String? = null, // 分单号
|
||||
var dep: String? = null, // 始发站
|
||||
var dest: String? = null, // 目的站
|
||||
var pageNum: Int = 1, // 页码
|
||||
var pageSize: Int = 10 // 每页条数
|
||||
)
|
||||
|
||||
@@ -10,6 +10,8 @@ class GjcExportLoad {
|
||||
var activeId: String = "" // 运单活跃号
|
||||
var by1: String = "" // 第一承运人
|
||||
var dep: String = "" // 始发港
|
||||
var dest: String = "" // 目的港
|
||||
var range: String = "" // 航程
|
||||
var fdate: String = "" // 申报航班日期
|
||||
var fid: String = "" // 航班主键id
|
||||
var fno: String = "" // 申报航班号
|
||||
@@ -47,4 +49,14 @@ class GjcExportLoad {
|
||||
fun getFullWaybillNo(): String {
|
||||
return if (prefix.isNotEmpty()) "$prefix$no" else no
|
||||
}
|
||||
|
||||
/**
|
||||
* 航程
|
||||
* 优先取 range;为空时用 始发港-目的港 拼接
|
||||
*/
|
||||
val rangeText: String
|
||||
get() {
|
||||
if (range.isNotBlank()) return range
|
||||
return if (dep.isNotEmpty() && dest.isNotEmpty()) "$dep-$dest" else dep + dest
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,6 +167,25 @@ data class GjcMaWb(
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 航程
|
||||
* 优先取 range;为空时用 始发站-目的站 拼接
|
||||
*/
|
||||
val rangeText: String
|
||||
get() {
|
||||
if (!range.isNullOrBlank()) return range!!
|
||||
val d1 = dep?.takeIf { it.isNotBlank() } ?: ""
|
||||
val d2 = dest?.takeIf { it.isNotBlank() } ?: ""
|
||||
return if (d1.isNotEmpty() && d2.isNotEmpty()) "$d1-$d2" else d1 + d2
|
||||
}
|
||||
|
||||
/**
|
||||
* 航班日期(格式化)
|
||||
* 格式: yyyy-MM-dd
|
||||
*/
|
||||
val flightDateText: String
|
||||
get() = fdate?.let { SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(it) } ?: ""
|
||||
|
||||
/**
|
||||
* 清仓正常状态中文
|
||||
* 0-否,1-是
|
||||
|
||||
@@ -81,13 +81,15 @@ class PadSearchLayout : LinearLayout {
|
||||
|
||||
et.hint = value
|
||||
tv.hint = value
|
||||
bindAdapter(spinner, list, hint)
|
||||
// 下拉占位/选项字体与搜索输入框 hint(13sp) 保持一致
|
||||
bindAdapter(spinner, list, hint, R.layout.item_spinner_list_13sp)
|
||||
}
|
||||
|
||||
var list = emptyList<KeyValue>()
|
||||
set(value) {
|
||||
field = value
|
||||
bindAdapter(spinner, value, hint)
|
||||
// 下拉占位/选项字体与搜索输入框 hint(13sp) 保持一致
|
||||
bindAdapter(spinner, value, hint, R.layout.item_spinner_list_13sp)
|
||||
onValueSet()
|
||||
}
|
||||
|
||||
|
||||
25
module_base/src/main/res/layout/item_spinner_list_13sp.xml
Normal file
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Copyright (C) 2006 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@android:id/text1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="?android:attr/listPreferredItemHeightSmall"
|
||||
android:paddingStart="10dp"
|
||||
android:paddingEnd="10dp"
|
||||
android:textAppearance="?android:attr/textAppearanceListItemSmall"
|
||||
android:textSize="13sp" />
|
||||
@@ -26,7 +26,7 @@ class GjcAssembleAllocateActivity :
|
||||
override fun viewModelClass() = GjcAssembleAllocateViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("组装分配")
|
||||
setBackArrow("国际出港组装分配")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ class GjcAssembleWeightEditActivity :
|
||||
override fun viewModelClass() = GjcAssembleWeightEditViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("修改组装重量")
|
||||
setBackArrow("国际出港修改组装重量")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ class GjcBoxWeighingActivity :
|
||||
override fun viewModelClass() = GjcBoxWeighingViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("板箱过磅")
|
||||
setBackArrow("国际出港板箱过磅")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -7,6 +7,8 @@ import com.lukouguoji.gjc.R
|
||||
import com.lukouguoji.gjc.databinding.ActivityGjcBoxWeighingAddBinding
|
||||
import com.lukouguoji.gjc.viewModel.GjcBoxWeighingAddViewModel
|
||||
import com.lukouguoji.module_base.base.BaseBindingActivity
|
||||
import com.lukouguoji.module_base.bean.GjcUldUseBean
|
||||
import com.lukouguoji.module_base.common.Constant
|
||||
import com.lukouguoji.module_base.ktx.setUpperCaseAlphanumericFilter
|
||||
|
||||
/**
|
||||
@@ -20,9 +22,9 @@ class GjcBoxWeighingAddActivity :
|
||||
override fun viewModelClass() = GjcBoxWeighingAddViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("板箱过磅")
|
||||
setBackArrow("国际出港板箱过磅")
|
||||
binding.viewModel = viewModel
|
||||
viewModel.initOnCreated(this)
|
||||
viewModel.initOnCreated(this, intent)
|
||||
|
||||
// 为架子车号、ULD编码、IMP代码、航班号添加大写字母和数字的输入限制
|
||||
binding.carIdInput.et.setUpperCaseAlphanumericFilter()
|
||||
@@ -37,5 +39,12 @@ class GjcBoxWeighingAddActivity :
|
||||
val starter = Intent(context, GjcBoxWeighingAddActivity::class.java)
|
||||
context.startActivity(starter)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun startForEdit(context: Context, bean: GjcUldUseBean) {
|
||||
val starter = Intent(context, GjcBoxWeighingAddActivity::class.java)
|
||||
.putExtra(Constant.Key.BEAN, bean)
|
||||
context.startActivity(starter)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ class GjcBoxWeighingDetailsActivity :
|
||||
override fun viewModelClass() = GjcBoxWeighingDetailsViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("板箱过磅详情")
|
||||
setBackArrow("国际出港板箱过磅详情")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -278,7 +278,7 @@ class GjcFuBangActivity : BaseActivity(), View.OnClickListener {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.activity_gjc_fu_bang)
|
||||
setBackArrow("板箱过磅")
|
||||
setBackArrow("国际出港板箱过磅")
|
||||
viewModel = ViewModelProvider(this).get(GjcFuBangViewModel::class.java)
|
||||
initView()
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ class GjcHandoverActivity :
|
||||
override fun viewModelClass() = GjcHandoverViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("货物交接单")
|
||||
setBackArrow("国际出港货物交接单")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ class GjcStartReceiveActivity : BaseActivity(), View.OnClickListener {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.activity_gjc_start_receive)
|
||||
setBackArrow("开始收运")
|
||||
setBackArrow("国际出港开始收运")
|
||||
initView()
|
||||
viewModel = ViewModelProvider(this).get(GjcStartReceiveViewModel::class.java)
|
||||
val dgrObj = JSONObject()
|
||||
|
||||
@@ -46,7 +46,7 @@ class GjcWareHouseInfoActivity : BaseActivity(), View.OnClickListener {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.activity_gjc_ware_house_info)
|
||||
setBackArrow("仓库管理详情")
|
||||
setBackArrow("国际出港仓库管理详情")
|
||||
initView()
|
||||
|
||||
viewModel.queryInfoByIdWareHouse(id)
|
||||
|
||||
@@ -26,7 +26,7 @@ class GjcWeighingListActivity :
|
||||
override fun viewModelClass() = GjcWeighingViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("出港待计重")
|
||||
setBackArrow("国际出港待计重")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
@@ -42,7 +42,7 @@ class GjcWeighingListActivity :
|
||||
|
||||
// 监听刷新事件
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_CHECK_CHANGED).observe(this) { viewModel.onItemCheckChanged() }
|
||||
|
||||
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_REFRESH)
|
||||
.observe(this) {
|
||||
viewModel.refresh()
|
||||
|
||||
@@ -33,7 +33,7 @@ class GjcWeighingRecordDetailsActivity :
|
||||
override fun viewModelClass() = GjcWeighingRecordDetailsViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("计重明细")
|
||||
setBackArrow("国际出港计重明细")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ class GjcWeighingRecordListActivity :
|
||||
override fun viewModelClass() = GjcWeighingRecordViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("计重记录")
|
||||
setBackArrow("国际出港计重记录")
|
||||
|
||||
binding.viewModel = viewModel
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ class GjcWeighingStartActivity :
|
||||
override fun viewModelClass() = GjcWeighingStartViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("开始计重")
|
||||
setBackArrow("国际出港开始计重")
|
||||
binding.viewModel = viewModel
|
||||
viewModel.initOnCreated(this, intent)
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ class IntExpArriveActivity :
|
||||
// 注入 ARouter 参数
|
||||
ARouter.getInstance().inject(this)
|
||||
|
||||
setBackArrow("出港运抵")
|
||||
setBackArrow("国际出港运抵")
|
||||
binding.viewModel = viewModel
|
||||
|
||||
// 如果有传入运单号,自动填充并触发搜索
|
||||
@@ -52,7 +52,7 @@ class IntExpArriveActivity :
|
||||
|
||||
// 监听刷新事件
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_CHECK_CHANGED).observe(this) { viewModel.onItemCheckChanged() }
|
||||
|
||||
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_REFRESH).observe(this) {
|
||||
viewModel.refresh()
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ class IntExpLoadActivity :
|
||||
override fun viewModelClass() = IntExpLoadViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("出港装载")
|
||||
setBackArrow("国际出港装载")
|
||||
binding.viewModel = viewModel
|
||||
|
||||
// 绑定分页
|
||||
|
||||
@@ -26,7 +26,7 @@ class IntExpOutHandoverActivity :
|
||||
override fun viewModelClass() = IntExpOutHandoverViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("出库交接")
|
||||
setBackArrow("国际出港出库交接")
|
||||
binding.viewModel = viewModel
|
||||
|
||||
// 绑定分页
|
||||
@@ -37,7 +37,7 @@ class IntExpOutHandoverActivity :
|
||||
|
||||
// 监听刷新事件
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_CHECK_CHANGED).observe(this) { viewModel.onItemCheckChanged() }
|
||||
|
||||
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_REFRESH).observe(this) {
|
||||
viewModel.refresh()
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ class IntExpTallyActivity :
|
||||
override fun viewModelClass() = IntExpTallyViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("出港理货")
|
||||
setBackArrow("国际出港理货")
|
||||
binding.viewModel = viewModel
|
||||
|
||||
// 绑定分页
|
||||
|
||||
@@ -2,10 +2,15 @@ package com.lukouguoji.gjc.holder
|
||||
|
||||
import android.view.View
|
||||
import com.lukouguoji.gjc.R
|
||||
import com.lukouguoji.gjc.activity.GjcBoxWeighingAddActivity
|
||||
import com.lukouguoji.gjc.activity.GjcBoxWeighingDetailsActivity
|
||||
import com.lukouguoji.gjc.databinding.ItemGjcBoxWeighingBinding
|
||||
import com.lukouguoji.module_base.base.BaseViewHolder
|
||||
import com.lukouguoji.module_base.bean.GjcUldUseBean
|
||||
import com.lukouguoji.module_base.http.net.NetApply
|
||||
import com.lukouguoji.module_base.ktx.launchCollect
|
||||
import com.lukouguoji.module_base.ktx.showToast
|
||||
import com.lukouguoji.module_base.ktx.toRequestBody
|
||||
|
||||
/**
|
||||
* 国际出港板箱过磅列表 ViewHolder
|
||||
@@ -26,8 +31,31 @@ class GjcBoxWeighingViewHolder(view: View) :
|
||||
updateIcon(bean)
|
||||
}
|
||||
|
||||
// 整行点击跳转到详情页
|
||||
// 整行点击跳转到表单页(带数据回填)
|
||||
binding.ll.setOnClickListener {
|
||||
if (bean.wtDate.isEmpty()) {
|
||||
GjcBoxWeighingAddActivity.startForEdit(it.context, bean)
|
||||
} else {
|
||||
val params = mapOf(
|
||||
"fdate" to bean.fdate,
|
||||
"fno" to bean.fno,
|
||||
"countryType" to "1"
|
||||
).toRequestBody()
|
||||
launchCollect({ NetApply.api.queryFlightByDateAndNo(params) }) {
|
||||
onSuccess = { result ->
|
||||
if (!result.data?.fclose.isNullOrEmpty()) {
|
||||
showToast("该 ULD 已过磅且航班已离港,不允许重新过磅")
|
||||
} else {
|
||||
GjcBoxWeighingAddActivity.startForEdit(it.context, bean)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 侧滑“详情”按钮点击跳转到只读详情页
|
||||
binding.btnDetail.setOnClickListener {
|
||||
binding.swipeMenu.quickClose()
|
||||
GjcBoxWeighingDetailsActivity.start(it.context, bean.useId)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,8 +5,8 @@ import com.lukouguoji.gjc.R
|
||||
import com.lukouguoji.gjc.databinding.ItemIntExpArriveBinding
|
||||
import com.lukouguoji.module_base.adapter.setCommonAdapter
|
||||
import com.lukouguoji.module_base.base.BaseViewHolder
|
||||
import com.lukouguoji.module_base.common.ConstantEvent
|
||||
import com.lukouguoji.module_base.impl.FlowBus
|
||||
import com.lukouguoji.module_base.common.ConstantEvent
|
||||
import com.lukouguoji.module_base.impl.FlowBus
|
||||
import com.lukouguoji.module_base.bean.GjcMaWb
|
||||
import com.lukouguoji.module_base.ktx.refresh
|
||||
|
||||
@@ -24,20 +24,17 @@ class IntExpArriveViewHolder(view: View) :
|
||||
|
||||
// 添加图标点击事件 - 切换选择状态
|
||||
binding.ivIcon.setOnClickListener {
|
||||
// 反转checked状态
|
||||
bean.checked.set(!bean.checked.get())
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_CHECK_CHANGED).tryEmit("check_changed")
|
||||
|
||||
// 立即更新UI(图片自动切换)
|
||||
binding.executePendingBindings()
|
||||
}
|
||||
|
||||
// ========== 展开按钮点击事件 ==========
|
||||
// 展开按钮点击事件
|
||||
binding.ivShow.setOnClickListener {
|
||||
bean.showMore.set(!bean.showMore.get())
|
||||
}
|
||||
|
||||
// ========== 初始化子列表 RecyclerView ==========
|
||||
// 初始化子列表 RecyclerView
|
||||
setCommonAdapter(
|
||||
binding.rvSub,
|
||||
IntExpArriveSubViewHolder::class.java,
|
||||
@@ -45,6 +42,22 @@ class IntExpArriveViewHolder(view: View) :
|
||||
)
|
||||
|
||||
// 刷新子列表数据
|
||||
binding.rvSub.refresh(bean.haWbList ?: emptyList())
|
||||
val subList = bean.haWbList ?: emptyList()
|
||||
binding.rvSub.refresh(subList)
|
||||
updateSubListVisibility(subList.isNotEmpty())
|
||||
}
|
||||
|
||||
private fun updateSubListVisibility(hasData: Boolean) {
|
||||
if (hasData) {
|
||||
binding.llHeader.visibility = View.VISIBLE
|
||||
binding.dividerHeader.visibility = View.VISIBLE
|
||||
binding.rvSub.visibility = View.VISIBLE
|
||||
binding.tvEmpty.visibility = View.GONE
|
||||
} else {
|
||||
binding.llHeader.visibility = View.GONE
|
||||
binding.dividerHeader.visibility = View.GONE
|
||||
binding.rvSub.visibility = View.GONE
|
||||
binding.tvEmpty.visibility = View.VISIBLE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,20 +24,17 @@ class IntExpTallyViewHolder(view: View) :
|
||||
|
||||
// 图标点击切换选择状态(主单和分单独立,互不干扰)
|
||||
binding.ivIcon.setOnClickListener {
|
||||
// 只切换主单自己的选择状态,不同步到分单
|
||||
bean.checked.set(!bean.checked.get())
|
||||
FlowBus.with<String>(ConstantEvent.EVENT_CHECK_CHANGED).tryEmit("check_changed")
|
||||
|
||||
// 刷新UI
|
||||
binding.executePendingBindings()
|
||||
}
|
||||
|
||||
// ========== 新增:展开按钮点击事件 ==========
|
||||
// 展开按钮点击事件
|
||||
binding.ivShow.setOnClickListener {
|
||||
bean.showMore.set(!bean.showMore.get())
|
||||
}
|
||||
|
||||
// ========== 新增:初始化子列表 RecyclerView ==========
|
||||
// 初始化子列表 RecyclerView
|
||||
setCommonAdapter(
|
||||
binding.rvSub,
|
||||
IntExpTallySubViewHolder::class.java,
|
||||
@@ -45,6 +42,22 @@ class IntExpTallyViewHolder(view: View) :
|
||||
)
|
||||
|
||||
// 刷新子列表数据
|
||||
binding.rvSub.refresh(bean.haWbList ?: emptyList())
|
||||
val subList = bean.haWbList ?: emptyList()
|
||||
binding.rvSub.refresh(subList)
|
||||
updateSubListVisibility(subList.isNotEmpty())
|
||||
}
|
||||
|
||||
private fun updateSubListVisibility(hasData: Boolean) {
|
||||
if (hasData) {
|
||||
binding.llHeader.visibility = View.VISIBLE
|
||||
binding.dividerHeader.visibility = View.VISIBLE
|
||||
binding.rvSub.visibility = View.VISIBLE
|
||||
binding.tvEmpty.visibility = View.GONE
|
||||
} else {
|
||||
binding.llHeader.visibility = View.GONE
|
||||
binding.dividerHeader.visibility = View.GONE
|
||||
binding.rvSub.visibility = View.GONE
|
||||
binding.tvEmpty.visibility = View.VISIBLE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@ class IntExpAssembleActivity :
|
||||
override fun viewModelClass() = IntExpAssembleViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("出港组装")
|
||||
setBackArrow("国际出港组装")
|
||||
binding.viewModel = viewModel
|
||||
|
||||
// 初始化组装人下拉列表
|
||||
|
||||
@@ -63,7 +63,7 @@ class IntExpAssembleStartActivity :
|
||||
override fun viewModelClass() = IntExpAssembleStartViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("开始组装")
|
||||
setBackArrow("国际出港开始组装")
|
||||
binding.viewModel = viewModel
|
||||
|
||||
// 为ULD编号添加大写字母和数字的输入限制
|
||||
|
||||
@@ -29,7 +29,7 @@ class IntExpMoveActivity : BaseBindingActivity<ActivityIntExpMoveBinding, IntExp
|
||||
override fun viewModelClass() = IntExpMoveViewModel::class.java
|
||||
|
||||
override fun initOnCreate(savedInstanceState: Bundle?) {
|
||||
setBackArrow("出港移库")
|
||||
setBackArrow("国际出港移库")
|
||||
binding.viewModel = viewModel
|
||||
binding.activity = this
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ class GjcBoxWeighingAddViewModel : BaseViewModel() {
|
||||
/**
|
||||
* 初始化
|
||||
*/
|
||||
fun initOnCreated(activity: Activity) {
|
||||
fun initOnCreated(activity: Activity, intent: Intent? = null) {
|
||||
// 监听地磅重量变化 - 暂时注释
|
||||
// diBangModel.weight.observe(activity as LifecycleOwner) { weight ->
|
||||
// val w = weight?.toDoubleOrNull() ?: 0.0
|
||||
@@ -104,14 +104,52 @@ class GjcBoxWeighingAddViewModel : BaseViewModel() {
|
||||
calculateWeights()
|
||||
}
|
||||
|
||||
// 加载下拉列表数据
|
||||
loadPassagewayList()
|
||||
loadPlCloseList()
|
||||
|
||||
// 初始化航班日期为今天
|
||||
val today = Date().formatDate()
|
||||
flightDate.value = today
|
||||
dataBean.value?.fdate = today
|
||||
|
||||
// 编辑模式:从 Intent 中解析列表项 Bean 并回填
|
||||
val editBean = intent?.getSerializableExtra(Constant.Key.BEAN) as? GjcUldUseBean
|
||||
if (editBean != null) {
|
||||
prefillFromBean(editBean)
|
||||
loadPassagewayList(editBean.passagewayId)
|
||||
loadPlCloseList(editBean.plClose)
|
||||
} else {
|
||||
loadPassagewayList(null)
|
||||
loadPlCloseList(null)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑模式:用列表项数据回填表单
|
||||
*/
|
||||
private fun prefillFromBean(bean: GjcUldUseBean) {
|
||||
// 整体绑定(板型/高度/IMP/探板尺寸/目的港/备注/架子车自重/ULD自重等通过 dataBean.* 自动回填)
|
||||
dataBean.value = bean
|
||||
|
||||
// 独立字段
|
||||
carId.value = bean.carId
|
||||
uldNo.value = bean.uld
|
||||
flightNo.value = bean.fno
|
||||
flightDate.value = bean.fdate
|
||||
|
||||
// 计算字段
|
||||
totalWeight.value = bean.totalWeight.toString()
|
||||
netWeight.value = bean.netWeight.toString()
|
||||
cargoWeight.value = bean.cargoWeight.toString()
|
||||
diBangWeight.value = bean.totalWeight.toString()
|
||||
|
||||
// 通道号 Spinner 绑定到 channel(KeyValue.value 即 passagewayId)
|
||||
channel.value = bean.passagewayId
|
||||
|
||||
// 抑制重复自动查询(避免回调把已填数据再次刷掉)
|
||||
lastQueriedCarId = bean.carId
|
||||
lastQueriedUld = bean.uld
|
||||
lastQueriedFlight = "${bean.fdate}-${bean.fno}"
|
||||
|
||||
// confirmClick 需要 usingUldData,列表项本身就是当前正在使用的记录
|
||||
usingUldData = bean
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -191,34 +229,47 @@ class GjcBoxWeighingAddViewModel : BaseViewModel() {
|
||||
|
||||
/**
|
||||
* 加载通道号列表
|
||||
* @param checkedValue 编辑模式下需要选中的 passagewayId;为空则按返回顺序展示
|
||||
*/
|
||||
private fun loadPassagewayList() {
|
||||
private fun loadPassagewayList(checkedValue: String?) {
|
||||
launchCollect({
|
||||
NetApply.api.getDictList("GJPASSAGEWAY")
|
||||
}) {
|
||||
onSuccess = {
|
||||
passagewayList.value = (it.data ?: emptyList()).map { b -> b.toKeyValue() }
|
||||
val list = (it.data ?: emptyList()).map { b -> b.toKeyValue() }
|
||||
passagewayList.value = reorderChecked(list, checkedValue)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 加载探板收口列表
|
||||
* @param checkedValue 编辑模式下需要选中的 plClose 值;为空则按返回顺序展示
|
||||
*/
|
||||
private fun loadPlCloseList() {
|
||||
private fun loadPlCloseList(checkedValue: String?) {
|
||||
launchCollect({
|
||||
NetApply.api.getDictList("PICLOSE")
|
||||
}) {
|
||||
onSuccess = {
|
||||
// 将 DictIdValueBean 转换为 KeyValue
|
||||
// 显示和提交都使用 value 字段
|
||||
plCloseList.value = (it.data ?: emptyList()).map { b ->
|
||||
val list = (it.data ?: emptyList()).map { b ->
|
||||
KeyValue(b.value, b.value)
|
||||
}
|
||||
plCloseList.value = reorderChecked(list, checkedValue)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 若 checkedValue 命中列表中某项,则把该项移到首位(PadDataLayoutNew SPINNER 默认显示首项)
|
||||
*/
|
||||
private fun reorderChecked(list: List<KeyValue>, checkedValue: String?): List<KeyValue> {
|
||||
if (checkedValue.isNullOrEmpty()) return list
|
||||
val matched = list.firstOrNull { it.value == checkedValue } ?: return list
|
||||
return listOf(matched) + list.filter { it !== matched }
|
||||
}
|
||||
|
||||
/**
|
||||
* 计算重量字段
|
||||
* 装机重 = 总重 - 架子车自重
|
||||
|
||||
@@ -95,12 +95,8 @@ class IntExpArriveViewModel : BasePageViewModel() {
|
||||
val shouldExpand = !isAllExpanded.value!!
|
||||
isAllExpanded.value = shouldExpand
|
||||
|
||||
// 更新所有列表项的 showMore 状态
|
||||
list.forEach { bean ->
|
||||
// 只有当有子列表时才设置展开状态
|
||||
if (!bean.haWbList.isNullOrEmpty()) {
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
|
||||
// 刷新列表UI
|
||||
@@ -206,6 +202,14 @@ class IntExpArriveViewModel : BasePageViewModel() {
|
||||
return
|
||||
}
|
||||
|
||||
// 校验申报状态:只有申报状态为 01 的记录才能删除申报
|
||||
if (selectedMaWbList.any { it.declareStatus != "01" } ||
|
||||
selectedHaWbList.any { it.arrivalStatus != "01" }
|
||||
) {
|
||||
showToast("只能删除申报状态为01的运单")
|
||||
return
|
||||
}
|
||||
|
||||
// 从接口获取删除原因列表
|
||||
launchLoadingCollect({ NetApply.api.getDelReasonList() }) {
|
||||
onSuccess = { result ->
|
||||
|
||||
@@ -456,6 +456,33 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 重新查询 ULD 信息,仅回填最新的 useId 与 ULD 状态。
|
||||
*
|
||||
* 用途:以"新增"形式进入页面、对全新 ULD 首次装货时,服务端在首票成功后才生成
|
||||
* 该 ULD 的 use 记录(useId)。装货/卸货接口返回值(GjcWarehouse)不含 useId,
|
||||
* 若不回填,后续票仍以 useId=null 提交,会被服务端当作新的 use 处理,
|
||||
* 导致无法继续往同一 ULD 组装多票。此处在每次操作成功后回填最新 useId,
|
||||
* 保证多票组装提交到同一 ULD use 记录。
|
||||
*
|
||||
* 不在此处刷新航班/组装信息列表,避免与 loadAssembledList 的航班兜底逻辑相互覆盖。
|
||||
*/
|
||||
private fun reloadUldUseId(uldNo: String) {
|
||||
if (uldNo.isEmpty()) return
|
||||
launchCollect({ NetApply.api.getUldWithConsumeWeight(uldNo) }) {
|
||||
onSuccess = { result ->
|
||||
val uldBean = result.data
|
||||
if (uldBean != null) {
|
||||
// 仅回填 useId(用于后续装货/卸货提交到同一 ULD use 记录),
|
||||
// 不改动 ULD 状态/耗材重量/航班等其它字段,避免影响表单现有逻辑。
|
||||
uldInfo.value = uldInfo.value?.apply {
|
||||
useId = uldBean.useId
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 卸货按钮点击
|
||||
*/
|
||||
@@ -589,6 +616,10 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
// 3. 【修改】区分 wbInfo 构建
|
||||
val wbInfo: Map<String, Any?>
|
||||
|
||||
// 记录本次操作运单的航班信息(用于操作成功后刷新组装信息列表)
|
||||
var operationFno = ""
|
||||
var operationFdate = ""
|
||||
|
||||
if (isLoad) {
|
||||
// 装货:从运单列表获取
|
||||
val currentWaybillList = waybillList.value
|
||||
@@ -615,6 +646,9 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
selectedWaybill.weight.toDoubleOrNull()
|
||||
}
|
||||
|
||||
operationFno = selectedWaybill.fno
|
||||
operationFdate = selectedWaybill.fdate
|
||||
|
||||
wbInfo = mapOf(
|
||||
"wbNo" to selectedWaybill.waybillNo,
|
||||
"pc" to waybillPc,
|
||||
@@ -631,6 +665,9 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
return
|
||||
}
|
||||
|
||||
operationFno = assembleWaybill.fno
|
||||
operationFdate = assembleWaybill.fdate
|
||||
|
||||
wbInfo = mapOf(
|
||||
"wbNo" to assembleWaybill.waybillNo,
|
||||
"pc" to assembleWaybill.pieces.toLongOrNull(), // 运单件数
|
||||
@@ -665,7 +702,7 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
}) {
|
||||
onSuccess = { result ->
|
||||
// 接口成功后才显示成功提示并刷新列表
|
||||
handleOperationSuccess(operationName, isLoad, uldNo, assembleCount, assembleWeight)
|
||||
handleOperationSuccess(operationName, isLoad, uldNo, operationFno, operationFdate)
|
||||
}
|
||||
onFailed = { code, message ->
|
||||
showToast("${operationName}失败: $message")
|
||||
@@ -680,8 +717,8 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
operationName: String,
|
||||
isLoad: Boolean,
|
||||
uldNo: String,
|
||||
assembleCount: String,
|
||||
assembleWeight: String
|
||||
operationFno: String,
|
||||
operationFdate: String
|
||||
) {
|
||||
showToast("${operationName}成功")
|
||||
|
||||
@@ -693,6 +730,32 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
// 清空表单(在刷新数据前清空,避免刷新时的状态冲突)
|
||||
clearForm()
|
||||
|
||||
// 回填最新 useId(关键,用于后续装货/卸货提交到同一 ULD use 记录):
|
||||
// - 装货:以"新增"形式进入、对全新 ULD 首票装货时,服务端在首票成功后才生成
|
||||
// 该 ULD 的 use 记录,而接口返回值不含 useId,不回填则后续票以 useId=null 提交、
|
||||
// 被当作新 use 处理,无法继续多票。仅在本地 useId 尚未生成(为 0)时回填,
|
||||
// "修改"模式及已过磅 ULD 本就带 useId,保持原逻辑不变。
|
||||
// - 卸货:从组装信息列表选票卸货,同一 ULD 因 lastQueriedUldNo 防抖不会重新查询 ULD,
|
||||
// useId 会停留在卸首票前的陈旧值,故卸货成功后无条件重拉,保证可连续卸多票。
|
||||
if (isLoad) {
|
||||
if ((uldInfo.value?.useId ?: 0L) == 0L) {
|
||||
reloadUldUseId(uldNo)
|
||||
}
|
||||
} else {
|
||||
reloadUldUseId(uldNo)
|
||||
}
|
||||
|
||||
// 添加形式(全新 ULD)时航班可能未从 ULD 查询接口获取,导致组装信息列表查不出;
|
||||
// 仅在航班为空时用本次操作运单的航班信息兜底补全,ULD 已带航班时保持原值不变。
|
||||
if (assembleFlightNo.value.isNullOrEmpty() || assembleFlightDate.value.isNullOrEmpty()) {
|
||||
if (operationFno.isNotEmpty() && operationFdate.isNotEmpty()) {
|
||||
assembleFlightNo.value = operationFno
|
||||
// 与 ULD 查询保持一致,只取年月日(去掉时间部分)
|
||||
assembleFlightDate.value =
|
||||
if (operationFdate.contains(" ")) operationFdate.split(" ")[0] else operationFdate
|
||||
}
|
||||
}
|
||||
|
||||
// 清除防抖标记,强制刷新组装信息列表
|
||||
lastQueriedAssembledParams = ""
|
||||
loadAssembledList()
|
||||
@@ -1059,6 +1122,11 @@ class IntExpAssembleStartViewModel : BaseViewModel() {
|
||||
this.uldNo = uldNo
|
||||
}
|
||||
|
||||
// 将 ULD 编号填充到左上角 ULD 列表筛选框,使组装信息列表只查询该 ULD。
|
||||
// loadAssembledList() 会读取 uldSearchText 作为 uld 查询参数,因此只显示这一个 ULD 的组装信息。
|
||||
// 用户可手动清空该筛选框后重新查询,即可查看该航班的全部组装信息。
|
||||
uldSearchText.value = uldNo
|
||||
|
||||
// 更新防抖标记,确保查询能触发
|
||||
lastQueriedUldNo = ""
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ import com.lukouguoji.module_base.impl.FlowBus
|
||||
import com.lukouguoji.module_base.ktx.commonAdapter
|
||||
import com.lukouguoji.module_base.ktx.launchCollect
|
||||
import com.lukouguoji.module_base.ktx.launchLoadingCollect
|
||||
import com.lukouguoji.module_base.ktx.noNull
|
||||
import com.lukouguoji.module_base.ktx.showToast
|
||||
import com.lukouguoji.module_base.ktx.toRequestBody
|
||||
import com.lukouguoji.module_base.model.ScanModel
|
||||
@@ -34,6 +35,77 @@ class IntExpLoadViewModel : BasePageViewModel() {
|
||||
val flightDate = MutableLiveData<String>(DateUtils.getCurrentTime().formatDate()) // 航班日期
|
||||
val flightNo = MutableLiveData("") // 航班号
|
||||
val waybillNo = MutableLiveData("") // 运单号
|
||||
val depPort = MutableLiveData("") // 始发站(下拉选择)
|
||||
val depPortList = MutableLiveData<List<KeyValue>>(emptyList()) // 始发站下拉列表(始发港 + 经停港)
|
||||
val destPort = MutableLiveData("") // 目的站(航班查询自动填充,不可编辑)
|
||||
|
||||
// ========== 航班级联查询 ==========
|
||||
private var lastQueriedFlight = "" // 避免重复查询
|
||||
|
||||
/**
|
||||
* 航班日期输入完成回调
|
||||
*/
|
||||
fun onFlightDateInputComplete() {
|
||||
lastQueriedFlight = ""
|
||||
queryFlightIfReady()
|
||||
}
|
||||
|
||||
/**
|
||||
* 航班号输入完成回调
|
||||
*/
|
||||
fun onFlightNoInputComplete() {
|
||||
queryFlightIfReady()
|
||||
}
|
||||
|
||||
/**
|
||||
* 航班日期 + 航班号 均有值时,查询航班并填充始发站/目的站
|
||||
* 参考「电报生成」(/flt/intFlight):始发站下拉(始发港+经停港),目的站自动填充且只读
|
||||
*/
|
||||
private fun queryFlightIfReady() {
|
||||
val fdate = flightDate.value
|
||||
val fno = flightNo.value
|
||||
if (fdate.isNullOrEmpty() || fno.isNullOrEmpty()) return
|
||||
|
||||
val key = "$fdate-$fno"
|
||||
if (key == lastQueriedFlight) return
|
||||
lastQueriedFlight = key
|
||||
|
||||
launchCollect({
|
||||
NetApply.api.getGjFlightBean(
|
||||
mapOf(
|
||||
"fdate" to fdate,
|
||||
"fno" to fno,
|
||||
"ieFlag" to "E", // 出港
|
||||
).toRequestBody()
|
||||
)
|
||||
}) {
|
||||
onSuccess = {
|
||||
if (it.verifySuccess() && it.data != null) {
|
||||
val flight = it.data!!
|
||||
// 目的站:航班查询返回,自动填充
|
||||
destPort.value = flight.fdest.noNull()
|
||||
// 始发站下拉:始发港 + 经停港(可逗号分隔多个)
|
||||
val list = mutableListOf(KeyValue(flight.fdep.noNull(), flight.fdep.noNull()))
|
||||
flight.jtz.split(",").forEach { stop ->
|
||||
val s = stop.trim()
|
||||
if (s.isNotEmpty()) list.add(KeyValue(s, s))
|
||||
}
|
||||
depPortList.value = list
|
||||
depPort.value = flight.fdep.noNull()
|
||||
} else {
|
||||
depPortList.value = emptyList()
|
||||
depPort.value = ""
|
||||
destPort.value = ""
|
||||
}
|
||||
}
|
||||
|
||||
onFailed = { _, _ ->
|
||||
depPortList.value = emptyList()
|
||||
depPort.value = ""
|
||||
destPort.value = ""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ========== 统计信息 ==========
|
||||
val totalCount = MutableLiveData("0") // 合计票数
|
||||
@@ -156,6 +228,12 @@ class IntExpLoadViewModel : BasePageViewModel() {
|
||||
return
|
||||
}
|
||||
|
||||
// 校验申报状态:只有装载申报状态为 01 的记录才能删除申报
|
||||
if (selectedItems.any { it.loadStatus != "01" }) {
|
||||
showToast("只能删除申报状态为01的运单")
|
||||
return
|
||||
}
|
||||
|
||||
// 从接口获取删除原因列表
|
||||
launchLoadingCollect({ NetApply.api.getDelReasonList() }) {
|
||||
onSuccess = { result ->
|
||||
@@ -199,6 +277,8 @@ class IntExpLoadViewModel : BasePageViewModel() {
|
||||
fdate = flightDate.value?.ifEmpty { null },
|
||||
fno = flightNo.value?.ifEmpty { null },
|
||||
wbNo = waybillNo.value?.ifEmpty { null },
|
||||
dep = depPort.value?.ifEmpty { null },
|
||||
dest = destPort.value?.ifEmpty { null },
|
||||
pageNum = pageModel.page,
|
||||
pageSize = pageModel.limit
|
||||
)
|
||||
@@ -210,7 +290,9 @@ class IntExpLoadViewModel : BasePageViewModel() {
|
||||
val totalParams = GjcCheckInPage(
|
||||
fdate = flightDate.value?.ifEmpty { null },
|
||||
fno = flightNo.value?.ifEmpty { null },
|
||||
wbNo = waybillNo.value?.ifEmpty { null }
|
||||
wbNo = waybillNo.value?.ifEmpty { null },
|
||||
dep = depPort.value?.ifEmpty { null },
|
||||
dest = destPort.value?.ifEmpty { null }
|
||||
).toRequestBody()
|
||||
|
||||
// 获取列表 (带Loading)
|
||||
|
||||
@@ -96,12 +96,8 @@ class IntExpTallyViewModel : BasePageViewModel() {
|
||||
val shouldExpand = !isAllExpanded.value!!
|
||||
isAllExpanded.value = shouldExpand
|
||||
|
||||
// 更新所有列表项的 showMore 状态
|
||||
list.forEach { bean ->
|
||||
// 只有当有子列表时才设置展开状态
|
||||
if (!bean.haWbList.isNullOrEmpty()) {
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
|
||||
// 刷新列表UI
|
||||
@@ -206,6 +202,14 @@ class IntExpTallyViewModel : BasePageViewModel() {
|
||||
return
|
||||
}
|
||||
|
||||
// 校验申报状态:只有未申报(状态为空)的记录才能理货申报
|
||||
if (selectedMaWbList.any { !it.declareStatus.isNullOrEmpty() } ||
|
||||
selectedHaWbList.any { !it.tallyStatus.isNullOrEmpty() }
|
||||
) {
|
||||
showToast("只有未申报的运单才能理货申报")
|
||||
return
|
||||
}
|
||||
|
||||
// 构建请求参数(区分主单和分单)
|
||||
val params = mutableMapOf<String, Any?>()
|
||||
if (selectedMaWbList.isNotEmpty()) {
|
||||
@@ -253,6 +257,14 @@ class IntExpTallyViewModel : BasePageViewModel() {
|
||||
return
|
||||
}
|
||||
|
||||
// 校验申报状态:只有申报状态为 01 的记录才能删除申报
|
||||
if (selectedMaWbList.any { it.declareStatus != "01" } ||
|
||||
selectedHaWbList.any { it.tallyStatus != "01" }
|
||||
) {
|
||||
showToast("只能删除申报状态为01的运单")
|
||||
return
|
||||
}
|
||||
|
||||
// 从接口获取删除原因列表
|
||||
launchLoadingCollect({ NetApply.api.getDelReasonList() }) {
|
||||
onSuccess = { result ->
|
||||
|
||||
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 5.9 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 5.5 KiB |
@@ -160,7 +160,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="28dp"
|
||||
android:background="@color/color_f2"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="8dp">
|
||||
@@ -214,6 +214,12 @@
|
||||
android:textSize="13sp" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 表头与列表项分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1dp"
|
||||
android:background="@color/line" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_waybill_list"
|
||||
android:layout_width="match_parent"
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
android:layout_weight="1"
|
||||
hint='@{"请选择航班日期"}'
|
||||
icon="@{@drawable/img_date}"
|
||||
setRefreshCallBack="@{viewModel::onFlightDateInputComplete}"
|
||||
type="@{SearchLayoutType.DATE}"
|
||||
value="@={viewModel.flightDate}" />
|
||||
|
||||
@@ -46,10 +47,31 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
hint='@{"请输入航班号"}'
|
||||
setRefreshCallBack="@{viewModel::onFlightNoInputComplete}"
|
||||
type="@{SearchLayoutType.INPUT}"
|
||||
value="@={viewModel.flightNo}"
|
||||
setUpperCaseAlphanumeric="@{true}" />
|
||||
|
||||
<!-- 始发站(下拉选择:始发港 + 经停港) -->
|
||||
<com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
hint='@{"始发站"}'
|
||||
type="@{SearchLayoutType.SPINNER}"
|
||||
list="@{viewModel.depPortList}"
|
||||
value="@={viewModel.depPort}" />
|
||||
|
||||
<!-- 目的站(航班查询自动填充,不可编辑) -->
|
||||
<com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
enable="@{false}"
|
||||
hint='@{"目的站"}'
|
||||
type="@{SearchLayoutType.INPUT}"
|
||||
value="@={viewModel.destPort}" />
|
||||
|
||||
<!-- 运单号 -->
|
||||
<com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
|
||||
android:layout_width="0dp"
|
||||
@@ -71,10 +93,10 @@
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.6"
|
||||
android:gravity="center_vertical|start"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="24dp">
|
||||
android:paddingHorizontal="12dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="36dp"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="500dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -28,33 +28,26 @@
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<!-- 航班信息显示 -->
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginTop="15dp"
|
||||
android:text='@{"航班:" + model.flightInfo}'
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="16sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
<!-- 分配人下拉选择 -->
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="20dp"
|
||||
android:gravity="center_vertical">
|
||||
android:layout_marginHorizontal="30dp"
|
||||
android:layout_marginTop="30dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="分配人:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="16sp" />
|
||||
|
||||
<com.lukouguoji.module_base.ui.weight.search.layout.PadSearchLayout
|
||||
android:layout_width="240dp"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
type="@{SearchLayoutType.SPINNER}"
|
||||
list="@{model.assembleCompanyList}"
|
||||
value="@={model.allocator}" />
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -130,7 +130,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onConfirmClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -130,7 +130,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onConfirmClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -78,7 +78,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -130,7 +130,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onConfirmClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -18,14 +18,19 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/bg_white_radius_bottom_8"
|
||||
android:orientation="vertical"
|
||||
android:paddingEnd="8dp">
|
||||
android:orientation="vertical">
|
||||
|
||||
<!-- 表头 (浅灰色背景) -->
|
||||
<!-- tab 与表头分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 表头 (白色背景) -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="40dp"
|
||||
android:background="@color/color_f2"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
@@ -91,6 +96,12 @@
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 表头与内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 数据列表 -->
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_storage_list"
|
||||
|
||||
@@ -18,14 +18,19 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@drawable/bg_white_radius_bottom_8"
|
||||
android:orientation="vertical"
|
||||
android:paddingEnd="8dp">
|
||||
android:orientation="vertical">
|
||||
|
||||
<!-- 表头 (深绿色背景) -->
|
||||
<!-- tab 与表头分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 表头 (白色背景) -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="40dp"
|
||||
android:background="@color/color_f2"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
@@ -111,6 +116,12 @@
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 表头与内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 数据列表 -->
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_warehouse_list"
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
android:layout_marginVertical="5dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
|
||||
@@ -9,16 +9,26 @@
|
||||
type="com.lukouguoji.module_base.bean.GjcUldUseBean" />
|
||||
</data>
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:id="@+id/ll"
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginVertical="5dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:orientation="vertical">
|
||||
|
||||
<com.mcxtzhang.swipemenulib.SwipeMenuLayout
|
||||
android:id="@+id/swipe_menu"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:id="@+id/ll"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 飞机图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
@@ -290,5 +300,23 @@
|
||||
android:layout_marginLeft="10dp"
|
||||
android:src="@drawable/img_pda_right" />
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
<!-- 侧滑菜单区域 -->
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/btn_detail"
|
||||
style="@style/tv_item_action"
|
||||
android:background="@color/colorPrimary"
|
||||
android:text="详情" />
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
</com.mcxtzhang.swipemenulib.SwipeMenuLayout>
|
||||
|
||||
</LinearLayout>
|
||||
</layout>
|
||||
|
||||
@@ -20,8 +20,8 @@
|
||||
android:layout_marginVertical="5dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
@@ -94,7 +94,7 @@
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.8"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<TextView
|
||||
@@ -140,7 +140,7 @@
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.7"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<TextView
|
||||
@@ -217,7 +217,7 @@
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.8"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<TextView
|
||||
@@ -272,7 +272,7 @@
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.7"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<TextView
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
android:layout_marginVertical="5dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 左侧图标 -->
|
||||
<ImageView
|
||||
android:layout_width="40dp"
|
||||
|
||||
@@ -15,12 +15,17 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@{position % 2 == 0 ? @color/white : @color/color_f2}"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<!-- 序号 -->
|
||||
<TextView
|
||||
@@ -82,5 +87,13 @@
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
</LinearLayout>
|
||||
</layout>
|
||||
|
||||
@@ -15,12 +15,17 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@{position % 2 == 0 ? @color/white : @color/color_f2}"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<!-- 序号 -->
|
||||
<TextView
|
||||
@@ -102,5 +107,13 @@
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
</LinearLayout>
|
||||
</layout>
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginVertical="6dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
loadImage="@{bean.checked ? @drawable/img_plane_s : @drawable/img_plane}"
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
android:layout_marginVertical="5dp"
|
||||
android:background="@{bean.checkIn.equals(`2`) ? @drawable/bg_item_green : @drawable/bg_item}"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 飞机图标 (根据checked状态切换图片) -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
android:layout_marginVertical="5dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 飞机图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
|
||||
@@ -35,7 +35,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||
<ImageView
|
||||
@@ -108,7 +109,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@{bean.declareStatus}"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textColor="@{`01`.equals(bean.declareStatus) ? @color/text_green : (`W`.equals(bean.declareStatus) ? @color/text_blue : @color/text_normal)}"
|
||||
android:textSize="15sp" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -335,11 +336,11 @@
|
||||
<!-- 展开按钮 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
visible="@{bean.haWbList != null && !bean.haWbList.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -354,8 +355,21 @@
|
||||
android:orientation="vertical"
|
||||
android:visibility="gone">
|
||||
|
||||
<!-- 暂无数据提示 -->
|
||||
<TextView
|
||||
android:id="@+id/tv_empty"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingVertical="15dp"
|
||||
android:text="暂无分单数据"
|
||||
android:textColor="@color/text_gray"
|
||||
android:textSize="14sp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<!-- 表头 -->
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginVertical="10dp"
|
||||
@@ -465,6 +479,7 @@
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:id="@+id/divider_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider" />
|
||||
|
||||
@@ -41,7 +41,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||
<ImageView
|
||||
@@ -338,10 +339,11 @@
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:rotation="@{bean.showMore.get() ? 180f : 0f}"
|
||||
android:scaleType="centerInside"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
android:background="@drawable/bg_white_radius_8"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
@@ -42,7 +42,7 @@
|
||||
android:layout_weight="1"
|
||||
android:orientation="vertical">
|
||||
|
||||
<!-- 第一行:运单号、状态、件数、重量 -->
|
||||
<!-- 第一行:运单号、状态、件数、重量、特码 -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -53,7 +53,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="1.3"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
android:text="运单号:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{4}" />
|
||||
completeSpace="@{5}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
@@ -79,7 +79,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.9"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -89,13 +89,13 @@
|
||||
android:text="状态:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{5}" />
|
||||
completeSpace="@{4}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@{bean.loadStatus}"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textColor="@{`01`.equals(bean.loadStatus) ? @color/text_green : (`W`.equals(bean.loadStatus) ? @color/text_blue : @color/text_normal)}"
|
||||
android:textSize="15sp" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -104,7 +104,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.9"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
android:text="件数:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{4}" />
|
||||
completeSpace="@{3}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
@@ -129,7 +129,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="1.3"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
android:text="重量:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{5}" />
|
||||
completeSpace="@{6}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
@@ -150,21 +150,11 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 第二行:特码、航班日期、航班号、品名(中) -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<!-- 特码 -->
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.9"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -174,7 +164,7 @@
|
||||
android:text="特码:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{4}" />
|
||||
completeSpace="@{3}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
@@ -185,11 +175,21 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 第二行:航班日期、航班号、航程、品名(中) -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="10dp"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<!-- 航班日期 -->
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="1.3"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -214,7 +214,7 @@
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="0.9"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -235,11 +235,36 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 航程 -->
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.9"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="航程:"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{3}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@{bean.rangeText}"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 品名(中) -->
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_weight="1.3"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal">
|
||||
|
||||
@@ -249,7 +274,7 @@
|
||||
android:text="品名(中):"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="15sp"
|
||||
completeSpace="@{5}" />
|
||||
completeSpace="@{6}" />
|
||||
|
||||
<TextView
|
||||
android:layout_width="wrap_content"
|
||||
@@ -262,6 +287,13 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 占位 (与第一行特码列对齐) -->
|
||||
<LinearLayout
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.9"
|
||||
android:orientation="horizontal" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@@ -27,7 +27,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_white_radius_8"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp"
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||
|
||||
@@ -22,7 +22,8 @@
|
||||
android:layout_marginTop="10dp"
|
||||
android:background="@drawable/bg_white_radius_8"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp"
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||
|
||||
@@ -37,7 +37,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
@@ -305,9 +306,10 @@
|
||||
android:id="@+id/iv_show"
|
||||
visible="@{bean.storageUseList != null && !bean.storageUseList.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@@ -16,9 +16,14 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginVertical="8dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选项(单选框) -->
|
||||
<ImageView
|
||||
@@ -85,6 +90,12 @@
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider" />
|
||||
</LinearLayout>
|
||||
|
||||
</layout>
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<!-- 白色卡片主要内容区域 -->
|
||||
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/bg_white_radius_8" android:orientation="vertical">
|
||||
<!-- 主要内容区域 -->
|
||||
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal" android:padding="10dp">
|
||||
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal" android:paddingVertical="20dp" android:paddingHorizontal="10dp">
|
||||
<!-- 选中图标 -->
|
||||
<ImageView android:id="@+id/iv_icon" android:layout_width="40dp" android:layout_height="40dp" android:layout_marginTop="0.5px" android:layout_marginEnd="10dp" loadImage="@{bean.checked.get() ? @drawable/img_plane_s : @drawable/img_plane}" android:src="@drawable/img_plane"/>
|
||||
<!-- 数据展示区域 -->
|
||||
@@ -19,13 +19,13 @@
|
||||
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal">
|
||||
<!-- 运单号 (weight=1.5) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1.0" android:orientation="horizontal">
|
||||
<TextView completeSpace="@{4}" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="运单号:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView completeSpace="@{5}" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="运单号:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.wbNo}" android:textColor="@color/colorPrimary" android:textSize="15sp" android:textStyle="bold"/>
|
||||
</LinearLayout>
|
||||
<!-- 状态 (weight=1) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.8" android:orientation="horizontal">
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="状态:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.declareStatus}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.declareStatus}" android:textColor="@{`01`.equals(bean.declareStatus) ? @color/text_green : (`W`.equals(bean.declareStatus) ? @color/text_blue : @color/text_normal)}" android:textSize="15sp"/>
|
||||
</LinearLayout>
|
||||
<!-- 代理 (weight=1) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.8" android:orientation="horizontal">
|
||||
@@ -43,29 +43,29 @@
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{String.valueOf((int)bean.weight)}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
<!-- 第二行:特码、始发站、目的站、运单类型、分单数 -->
|
||||
<!-- 第二行:航班日期、航班号、航程、运单类型、分单数 -->
|
||||
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:orientation="horizontal">
|
||||
<!-- 特码 (weight=1.5) -->
|
||||
<!-- 航班日期 (weight=1.0) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1.0" android:orientation="horizontal">
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="特码:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.spCode}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{5}" android:text="航班日期:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.flightDateText}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
</LinearLayout>
|
||||
<!-- 始发站 (weight=1) -->
|
||||
<!-- 航班号 (weight=0.8) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.8" android:orientation="horizontal">
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="始发站:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.dep}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="航班号:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.fno}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
</LinearLayout>
|
||||
<!-- 目的站 (weight=1) -->
|
||||
<!-- 航程 (weight=0.8) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.8" android:orientation="horizontal">
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="目的站:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.dest}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="航程:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.rangeText}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
</LinearLayout>
|
||||
<!-- 运单类型 (weight=1) -->
|
||||
<!-- 运单类型 (weight=1.2) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1.2" android:orientation="horizontal">
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{5}" android:text="运单类型:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{bean.awbName}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
</LinearLayout>
|
||||
<!-- 分单数 (weight=1) -->
|
||||
<!-- 分单数 (weight=0.8) -->
|
||||
<LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.8" android:orientation="horizontal">
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" completeSpace="@{4}" android:text="分单数:" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{String.valueOf(bean.haWbNumber)}" android:textColor="@color/text_normal" android:textSize="15sp"/>
|
||||
@@ -76,17 +76,28 @@
|
||||
<!-- 展开/折叠按钮 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
visible="@{bean.haWbList != null && !bean.haWbList.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
</LinearLayout>
|
||||
<!-- 子订单列表容器(在白色卡片外面) -->
|
||||
<LinearLayout visible="@{bean.showMore}" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="5dp" android:background="#e3f6e0" android:orientation="vertical" android:visibility="gone">
|
||||
<!-- 暂无数据提示 -->
|
||||
<TextView
|
||||
android:id="@+id/tv_empty"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingVertical="15dp"
|
||||
android:text="暂无分单数据"
|
||||
android:textColor="@color/text_gray"
|
||||
android:textSize="14sp"
|
||||
android:visibility="gone" />
|
||||
<!-- 表头 -->
|
||||
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginVertical="10dp" android:paddingHorizontal="10dp" android:orientation="horizontal">
|
||||
<LinearLayout android:id="@+id/ll_header" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginVertical="10dp" android:paddingHorizontal="10dp" android:orientation="horizontal">
|
||||
<TextView 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_height="wrap_content" android:layout_weight="1.2" 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"/>
|
||||
@@ -99,6 +110,7 @@
|
||||
<TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.9" android:gravity="center" android:text="删除费率" android:textColor="@color/text_normal" android:textSize="14sp" android:textStyle="bold"/>
|
||||
</LinearLayout>
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:id="@+id/divider_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider"/>
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:gravity="center"
|
||||
android:text="@{bean.arrivalStatus ?? ``}"
|
||||
android:text="@{bean.tallyStatus ?? ``}"
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="14sp" />
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 5.0 KiB |
@@ -5,8 +5,8 @@ import com.lukouguoji.gjj.R
|
||||
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.common.ConstantEvent
|
||||
import com.lukouguoji.module_base.impl.FlowBus
|
||||
import com.lukouguoji.module_base.common.ConstantEvent
|
||||
import com.lukouguoji.module_base.impl.FlowBus
|
||||
import com.lukouguoji.module_base.bean.GjjAirManifest
|
||||
import com.lukouguoji.module_base.ktx.refresh
|
||||
|
||||
@@ -47,7 +47,23 @@ class IntArrAirManifestViewHolder(view: View) :
|
||||
R.layout.item_int_arr_air_manifest_sub
|
||||
)
|
||||
|
||||
val subList = bean.haWbList ?: emptyList()
|
||||
binding.rvSub.tag = bean
|
||||
binding.rvSub.refresh(bean.haWbList ?: emptyList())
|
||||
binding.rvSub.refresh(subList)
|
||||
updateSubListVisibility(subList.isNotEmpty())
|
||||
}
|
||||
|
||||
private fun updateSubListVisibility(hasData: Boolean) {
|
||||
if (hasData) {
|
||||
binding.llHeader.visibility = View.VISIBLE
|
||||
binding.dividerHeader.visibility = View.VISIBLE
|
||||
binding.rvSub.visibility = View.VISIBLE
|
||||
binding.tvEmpty.visibility = View.GONE
|
||||
} else {
|
||||
binding.llHeader.visibility = View.GONE
|
||||
binding.dividerHeader.visibility = View.GONE
|
||||
binding.rvSub.visibility = View.GONE
|
||||
binding.tvEmpty.visibility = View.VISIBLE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -45,5 +45,20 @@ class IntImpStorageUseViewHolder(view: View) :
|
||||
val storageUseList = bean.storageUseList ?: emptyList()
|
||||
binding.rvSub.tag = bean
|
||||
binding.rvSub.refresh(storageUseList)
|
||||
updateSubListVisibility(storageUseList.isNotEmpty())
|
||||
}
|
||||
|
||||
private fun updateSubListVisibility(hasData: Boolean) {
|
||||
if (hasData) {
|
||||
binding.llHeader.visibility = View.VISIBLE
|
||||
binding.dividerHeader.visibility = View.VISIBLE
|
||||
binding.rvSub.visibility = View.VISIBLE
|
||||
binding.tvEmpty.visibility = View.GONE
|
||||
} else {
|
||||
binding.llHeader.visibility = View.GONE
|
||||
binding.dividerHeader.visibility = View.GONE
|
||||
binding.rvSub.visibility = View.GONE
|
||||
binding.tvEmpty.visibility = View.VISIBLE
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -41,15 +41,15 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
||||
|
||||
// ========== 全选状态 ==========
|
||||
val isAllChecked = MutableLiveData(false)
|
||||
|
||||
fun onItemCheckChanged() {
|
||||
updateCheckAllStatus()
|
||||
}
|
||||
|
||||
fun updateCheckAllStatus() {
|
||||
val list = pageModel.rv?.commonAdapter()?.items as? List<GjjAirManifest> ?: return
|
||||
isAllChecked.value = list.isNotEmpty() && list.all { it.checked.get() }
|
||||
}
|
||||
|
||||
fun onItemCheckChanged() {
|
||||
updateCheckAllStatus()
|
||||
}
|
||||
|
||||
fun updateCheckAllStatus() {
|
||||
val list = pageModel.rv?.commonAdapter()?.items as? List<GjjAirManifest> ?: return
|
||||
isAllChecked.value = list.isNotEmpty() && list.all { it.checked.get() }
|
||||
}
|
||||
|
||||
// ========== 全部展开状态 ==========
|
||||
val isAllExpanded = MutableLiveData(false)
|
||||
@@ -90,9 +90,7 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
||||
isAllExpanded.value = shouldExpand
|
||||
val list = pageModel.rv?.commonAdapter()?.items as? List<GjjAirManifest> ?: return
|
||||
list.forEach { bean ->
|
||||
if (!bean.haWbList.isNullOrEmpty()) {
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
||||
}
|
||||
@@ -177,6 +175,12 @@ class IntArrAirManifestViewModel : BasePageViewModel() {
|
||||
fun deleteDeclarationClick() {
|
||||
val (maWbList, haWbList) = getSelectedItems("请选择要删除申报的舱单") ?: return
|
||||
|
||||
// 校验申报状态:只有申报状态为 01 的舱单才能删除申报
|
||||
if (maWbList.any { it.mftStatus != "01" } || haWbList.any { it.mftStatus != "01" }) {
|
||||
showToast("只能删除申报状态为01的舱单")
|
||||
return
|
||||
}
|
||||
|
||||
// 从接口获取删除原因列表
|
||||
launchLoadingCollect({ NetApply.api.getDelReasonList() }) {
|
||||
onSuccess = { result ->
|
||||
|
||||
@@ -103,9 +103,7 @@ class IntImpStorageUseViewModel : BasePageViewModel() {
|
||||
isAllExpanded.value = shouldExpand
|
||||
|
||||
list.forEach { bean ->
|
||||
if (!bean.storageUseList.isNullOrEmpty()) {
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
bean.showMore.set(shouldExpand)
|
||||
}
|
||||
|
||||
pageModel.rv?.commonAdapter()?.notifyDataSetChanged()
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -130,7 +130,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onConfirmClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -78,7 +78,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -130,7 +130,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onConfirmClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
</data>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="600dp"
|
||||
android:layout_width="480dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_dialog_f2_radius_10"
|
||||
android:gravity="center_horizontal"
|
||||
@@ -79,7 +79,7 @@
|
||||
<TextView
|
||||
style="@style/tv_bottom_btn"
|
||||
android:onClick="@{()->model.onSaveClick()}"
|
||||
android:text="保存" />
|
||||
android:text="确定" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
@@ -20,11 +20,17 @@
|
||||
android:background="@drawable/bg_white_radius_bottom_8"
|
||||
android:orientation="vertical">
|
||||
|
||||
<!-- 表头 -->
|
||||
<!-- tab 与表头分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 表头 (白色背景) -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="40dp"
|
||||
android:background="@color/color_f5"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
@@ -90,6 +96,12 @@
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 表头与内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 数据列表 -->
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_storage_list"
|
||||
|
||||
@@ -20,11 +20,17 @@
|
||||
android:background="@drawable/bg_white_radius_bottom_8"
|
||||
android:orientation="vertical">
|
||||
|
||||
<!-- 表头 -->
|
||||
<!-- tab 与表头分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 表头 (白色背景) -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="40dp"
|
||||
android:background="@color/color_f5"
|
||||
android:background="@color/white"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
@@ -100,6 +106,12 @@
|
||||
android:textStyle="bold" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 表头与内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
<!-- 数据列表 -->
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rv_warehouse_list"
|
||||
|
||||
@@ -26,8 +26,8 @@
|
||||
android:background="@drawable/bg_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<ImageView
|
||||
android:layout_width="40dp"
|
||||
android:layout_height="40dp"
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
android:background="@drawable/bg_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
loadImage="@{bean.checked ? @drawable/img_plane_s : @drawable/img_plane}"
|
||||
|
||||
@@ -30,7 +30,8 @@
|
||||
android:background="@drawable/bg_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="vertical"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<androidx.appcompat.widget.LinearLayoutCompat
|
||||
android:layout_width="match_parent"
|
||||
@@ -266,9 +267,10 @@
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
android:layout_marginHorizontal="15dp"
|
||||
android:layout_marginVertical="6dp"
|
||||
android:background="@drawable/bg_item"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
loadImage="@{bean.checked ? @drawable/img_plane_s : @drawable/img_plane}"
|
||||
|
||||
@@ -40,7 +40,8 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选中图标 (飞机图标,根据选择状态切换图片) -->
|
||||
<ImageView
|
||||
@@ -107,7 +108,8 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="15sp"
|
||||
android:text="@{manifest.mftStatus ?? ``}" />
|
||||
android:text="@{manifest.mftStatus ?? ``}"
|
||||
android:textColor="@{`01`.equals(manifest.mftStatus) ? @color/text_green : (`W`.equals(manifest.mftStatus) ? @color/text_blue : @color/text_normal)}" />
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
|
||||
@@ -312,11 +314,11 @@
|
||||
<!-- 展开/折叠按钮(卡片内部底部) -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
visible="@{bean.haWbList != null && !bean.haWbList.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
@@ -331,8 +333,21 @@
|
||||
android:orientation="vertical"
|
||||
android:visibility="gone">
|
||||
|
||||
<!-- 暂无数据提示 -->
|
||||
<TextView
|
||||
android:id="@+id/tv_empty"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingVertical="15dp"
|
||||
android:text="暂无分单数据"
|
||||
android:textColor="@color/text_gray"
|
||||
android:textSize="14sp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<!-- 表头 -->
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginVertical="10dp"
|
||||
@@ -442,6 +457,7 @@
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:id="@+id/divider_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider" />
|
||||
|
||||
@@ -16,9 +16,14 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginVertical="8dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选项(单选框) -->
|
||||
<ImageView
|
||||
@@ -131,6 +136,12 @@
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider" />
|
||||
</LinearLayout>
|
||||
|
||||
</layout>
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
android:background="@drawable/bg_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 左侧选中图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
|
||||
@@ -28,7 +28,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_white_radius_8"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp"
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:gravity="center_vertical">
|
||||
|
||||
<!-- 选中图标(飞机图标,根据选择状态切换图片) -->
|
||||
|
||||
@@ -43,7 +43,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
@@ -316,9 +317,10 @@
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -408,7 +410,7 @@
|
||||
<TextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:text="件数"
|
||||
android:textSize="14sp"
|
||||
@@ -417,7 +419,7 @@
|
||||
<TextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:text="重量"
|
||||
android:textSize="14sp"
|
||||
@@ -426,7 +428,7 @@
|
||||
<TextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:text="原始舱单"
|
||||
android:textSize="14sp"
|
||||
@@ -435,7 +437,7 @@
|
||||
<TextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:text="理货报告"
|
||||
android:textSize="14sp"
|
||||
@@ -444,7 +446,7 @@
|
||||
<TextView
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1.8"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:text="品名(中)"
|
||||
android:textSize="14sp"
|
||||
|
||||
@@ -16,9 +16,14 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginVertical="8dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选项(单选框) -->
|
||||
<ImageView
|
||||
@@ -61,7 +66,7 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
@@ -74,7 +79,7 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
@@ -87,7 +92,7 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
@@ -100,7 +105,7 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="0.6"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
@@ -113,7 +118,7 @@
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:layout_weight="1.8"
|
||||
android:layout_weight="1.0"
|
||||
android:gravity="center"
|
||||
android:maxLines="1"
|
||||
android:ellipsize="end"
|
||||
@@ -121,6 +126,12 @@
|
||||
android:textColor="@color/text_normal"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider" />
|
||||
</LinearLayout>
|
||||
|
||||
</layout>
|
||||
|
||||
@@ -22,8 +22,8 @@
|
||||
android:background="@drawable/bg_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
android:background="@drawable/bg_item"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_icon"
|
||||
|
||||
@@ -29,8 +29,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/bg_item"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
<!-- 左侧图标 -->
|
||||
<ImageView
|
||||
android:layout_width="40dp"
|
||||
|
||||
@@ -15,12 +15,17 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@{position % 2 == 0 ? @color/white : @color/color_f2}"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<!-- 序号 -->
|
||||
<TextView
|
||||
@@ -82,5 +87,13 @@
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
</LinearLayout>
|
||||
</layout>
|
||||
|
||||
@@ -15,12 +15,17 @@
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@{position % 2 == 0 ? @color/white : @color/color_f2}"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
android:background="@color/white"
|
||||
android:orientation="vertical">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:minHeight="40dp"
|
||||
android:orientation="horizontal"
|
||||
android:paddingHorizontal="10dp"
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<!-- 序号 -->
|
||||
<TextView
|
||||
@@ -92,5 +97,13 @@
|
||||
android:textColor="@android:color/black"
|
||||
android:textSize="14sp" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 内容分割线 -->
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/line" />
|
||||
|
||||
</LinearLayout>
|
||||
</layout>
|
||||
|
||||
@@ -37,7 +37,8 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center_vertical"
|
||||
android:orientation="horizontal"
|
||||
android:padding="10dp">
|
||||
android:paddingVertical="20dp"
|
||||
android:paddingHorizontal="10dp">
|
||||
|
||||
<!-- 选中图标 -->
|
||||
<ImageView
|
||||
@@ -304,11 +305,11 @@
|
||||
<!-- 展开/折叠按钮 -->
|
||||
<ImageView
|
||||
android:id="@+id/iv_show"
|
||||
visible="@{bean.storageUseList != null && !bean.storageUseList.empty}"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="10dp"
|
||||
android:layout_marginTop="-10dp"
|
||||
android:scaleType="centerInside"
|
||||
android:layout_height="20dp"
|
||||
android:paddingVertical="2.5dp"
|
||||
android:layout_marginTop="-20dp"
|
||||
android:scaleType="center"
|
||||
android:src="@mipmap/img_down" />
|
||||
|
||||
</LinearLayout>
|
||||
@@ -323,8 +324,21 @@
|
||||
android:orientation="vertical"
|
||||
android:visibility="gone">
|
||||
|
||||
<!-- 暂无数据提示 -->
|
||||
<TextView
|
||||
android:id="@+id/tv_empty"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:paddingVertical="15dp"
|
||||
android:text="暂无库位数据"
|
||||
android:textColor="@color/text_gray"
|
||||
android:textSize="14sp"
|
||||
android:visibility="gone" />
|
||||
|
||||
<!-- 表头 -->
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginVertical="10dp"
|
||||
@@ -394,6 +408,7 @@
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.divider.MaterialDivider
|
||||
android:id="@+id/divider_header"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="1px"
|
||||
android:background="@color/sub_list_divider" />
|
||||
|
||||