From e96eba36176c5bd4d9ee622e71d946dd74403edf Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期一, 21 四月 2025 17:02:00 +0800
Subject: [PATCH] fix : 优化
---
app/src/main/java/com/example/firstapp/activity/PickupActivity.kt | 37 ++++++++++++++++++++++++++++---------
1 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/app/src/main/java/com/example/firstapp/activity/PickupActivity.kt b/app/src/main/java/com/example/firstapp/activity/PickupActivity.kt
index 48a6dc1..7270793 100644
--- a/app/src/main/java/com/example/firstapp/activity/PickupActivity.kt
+++ b/app/src/main/java/com/example/firstapp/activity/PickupActivity.kt
@@ -5,7 +5,8 @@
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.LinearLayoutManager
-import com.example.firstapp.adapter.ExpressPackageAdapter
+import com.example.firstapp.R
+import com.example.firstapp.adapter.PickupPackageAdapter
import com.example.firstapp.core.Core
import com.example.firstapp.databinding.ActivityPickupBinding
import com.example.firstapp.model.ExpressPackage
@@ -13,15 +14,19 @@
class PickupActivity : AppCompatActivity() {
private lateinit var binding: ActivityPickupBinding
- private lateinit var expressAdapter: ExpressPackageAdapter
-
+ private lateinit var expressAdapter: PickupPackageAdapter
+ private var stationIconResId = R.drawable.location // 默认图标
+
+
// 添加类型常量
companion object {
const val TYPE_EXPRESS = "express"
const val TYPE_REPAYMENT = "repayment"
const val TYPE_INCOME = "income"
+ const val TYPE_TRAIN = "train"
+ const val TYPE_FLIGHT = "flight"
}
-
+
private var pageType = TYPE_EXPRESS
override fun onCreate(savedInstanceState: Bundle?) {
@@ -32,16 +37,19 @@
// 获取页面类型
pageType = intent.getStringExtra("page_type") ?: TYPE_EXPRESS
+ stationIconResId = intent.getIntExtra("station_icon_res_id", R.drawable.location)
+
+
initViews()
loadData()
}
private fun initViews() {
// 初始化适配器,传入取件回调
- expressAdapter = ExpressPackageAdapter { pack ->
+ expressAdapter = PickupPackageAdapter { pack ->
handleSinglePickup(pack)
}
-
+
binding.rvPackages.apply {
layoutManager = LinearLayoutManager(this@PickupActivity)
adapter = expressAdapter
@@ -58,6 +66,8 @@
showPickupConfirmDialog()
}
}
+ // 设置驿站图标
+ binding.ivBack.setImageResource(stationIconResId)
}
private fun getConfirmMessage(): String {
@@ -65,6 +75,8 @@
TYPE_EXPRESS -> "是否确认取出所有包裹?"
TYPE_REPAYMENT -> "是否确认处理所有还款?"
TYPE_INCOME -> "是否确认处理所有收入?"
+ TYPE_TRAIN -> "是否确认处理所有火车票?"
+ TYPE_FLIGHT -> "是否确认处理所有机票?"
else -> "是否确认处理所有项目?"
}
}
@@ -74,6 +86,8 @@
TYPE_EXPRESS -> "全部取件"
TYPE_REPAYMENT -> "全部还款"
TYPE_INCOME -> "全部收款"
+ TYPE_TRAIN -> "全部处理票务"
+ TYPE_FLIGHT -> "全部处理机票"
else -> "全部处理"
}
}
@@ -132,6 +146,8 @@
TYPE_EXPRESS -> "共${count}个包裹"
TYPE_REPAYMENT -> "共${count}笔还款"
TYPE_INCOME -> "共${count}笔收入"
+ TYPE_TRAIN -> "共${count}张车票"
+ TYPE_FLIGHT -> "共${count}张机票"
else -> "共${count}个"
}
}
@@ -139,7 +155,7 @@
private fun loadData() {
val stationName = intent.getStringExtra("station_name") ?: ""
val company = intent.getStringExtra("company") ?: ""
-
+
lifecycleScope.launch {
val codes = Core.code.getByKeyword(stationName)
val packages = codes.map { code ->
@@ -150,10 +166,13 @@
createTime = code.createTime
)
}
-
+
expressAdapter.submitList(packages)
binding.tvStationName.text = stationName
binding.tvPackageCount.text = getCountText(packages.size)
+
+ // 根据PageType设置适配器的CompanyLogo处理逻辑
+ expressAdapter.setPageType(pageType)
}
}
-}
\ No newline at end of file
+}
\ No newline at end of file
--
Gitblit v1.9.3