From dde2eeddbaf07246da7c2c352e7d49ec63fddcd2 Mon Sep 17 00:00:00 2001
From: tj <1378534974@qq.com>
Date: 星期五, 28 三月 2025 14:56:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
app/src/main/java/com/example/firstapp/ui/home/HomeViewModel.kt | 75 +++++++++++++++++++++++++++++--------
1 files changed, 58 insertions(+), 17 deletions(-)
diff --git a/app/src/main/java/com/example/firstapp/ui/home/HomeViewModel.kt b/app/src/main/java/com/example/firstapp/ui/home/HomeViewModel.kt
index 630b6af..7b5c3fb 100644
--- a/app/src/main/java/com/example/firstapp/ui/home/HomeViewModel.kt
+++ b/app/src/main/java/com/example/firstapp/ui/home/HomeViewModel.kt
@@ -3,34 +3,75 @@
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
+import androidx.lifecycle.viewModelScope
import com.example.firstapp.core.Core
import com.example.firstapp.database.entity.Code
+import com.example.firstapp.model.ExpressGroup
+import com.example.firstapp.model.ExpressPackage
+import com.example.firstapp.model.FinanceGroup
+import com.example.firstapp.model.FinancePackage
+import kotlinx.coroutines.launch
class HomeViewModel : ViewModel() {
- private val _text = MutableLiveData<String>().apply {
- value = "短信主页面"
- }
- val text: LiveData<String> = _text
-
- private val _codeList = MutableLiveData<List<Code>>()
-
- val codeList: LiveData<List<Code>> get() = _codeList
+ private val _expressItems = MutableLiveData<List<ExpressGroup>>()
+ private val _financeItems = MutableLiveData<List<FinanceGroup>>()
+ val expressItems: LiveData<List<ExpressGroup>> = _expressItems
+ val financeItems: LiveData<List<FinanceGroup>> = _financeItems
init {
- // 初始化时加载数据
- loadData()
+ // 初始化时加载包裹列表数据
+ loadExpressData()
+ // 初始化时不加载财务列表数据 0317
+ // loadFinanceData()
}
- // 加载数据的方法
- fun loadData() {
- // 获取数据,并更新 LiveData
- _codeList.value = Core.code.getAllDesc() // 假设这是获取最新的 data 的方法
+ fun loadExpressData() {
+ viewModelScope.launch {
+ // 1. 获取所有驿站类型的提醒设置
+ val stations = Core.reminder.getByType("快递")
+
+ // 2. 按驿站分组获取包裹信息
+ val groups = stations.map { station ->
+ val packages = Core.code.getByKeyword(station.nickname).map { code ->
+ ExpressPackage(
+ id = code.id, //ID
+ company = code.secondLevel, //快递公司
+ trackingNumber = code.code, // 取件码
+ createTime = code.createTime //快递时间
+ )
+ }
+ ExpressGroup(
+ stationName = station.nickname, packages = packages
+ )
+ }
+
+ _expressItems.postValue(groups)
+ }
}
- // 如果需要手动更新数据,可以调用这个方法
- fun updateData() {
- _codeList.value = Core.code.getAllDesc() // 重新获取并更新数据
+ fun loadFinanceData() {
+ viewModelScope.launch {
+ // 1. 获取所有驿站类型的提醒设置
+ val stations = Core.reminder.getByType("还款")
+
+ // 2. 按驿站分组获取包裹信息
+ val groups = stations.map { station ->
+ val packages = Core.code.getByKeyword(station.nickname).map { code ->
+ FinancePackage(
+ id = code.id, //ID
+ company = code.secondLevel, //快递公司
+ trackingNumber = code.code, // 取件码
+ createTime = code.createTime //快递时间
+ )
+ }
+ FinanceGroup(
+ stationName = station.nickname, packages = packages
+ )
+ }
+
+ _financeItems.postValue(groups)
+ }
}
}
\ No newline at end of file
--
Gitblit v1.9.3