From 85a2d7f51a32cd747e27ab68bc8699a54419b6c7 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期一, 03 三月 2025 10:02:04 +0800
Subject: [PATCH] fix :包裹列表

---
 app/src/main/java/com/example/firstapp/ui/dashboard/DashboardViewModel.kt |   38 ++++++++++++++++++++++++++++++--------
 1 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/app/src/main/java/com/example/firstapp/ui/dashboard/DashboardViewModel.kt b/app/src/main/java/com/example/firstapp/ui/dashboard/DashboardViewModel.kt
index e47a4a6..dae2211 100644
--- a/app/src/main/java/com/example/firstapp/ui/dashboard/DashboardViewModel.kt
+++ b/app/src/main/java/com/example/firstapp/ui/dashboard/DashboardViewModel.kt
@@ -1,13 +1,35 @@
 package com.example.firstapp.ui.dashboard
 
-import androidx.lifecycle.LiveData
-import androidx.lifecycle.MutableLiveData
-import androidx.lifecycle.ViewModel
+import android.app.Application
+import androidx.lifecycle.AndroidViewModel
+import androidx.lifecycle.asLiveData
+import androidx.lifecycle.viewModelScope
+import com.example.firstapp.AppDatabase
+import com.example.firstapp.model.PackageInfo
+import com.example.firstapp.repository.PackageRepository
+import kotlinx.coroutines.launch
 
-class DashboardViewModel : ViewModel() {
-
-    private val _text = MutableLiveData<String>().apply {
-        value = "This is dashboard Fragment"
+class DashboardViewModel(application: Application) : AndroidViewModel(application) {
+    
+    private val repository: PackageRepository
+    
+    init {
+        val packageDao = AppDatabase.getInstance(application).packageDao()
+        repository = PackageRepository(packageDao)
     }
-    val text: LiveData<String> = _text
+    
+    fun getPackages(date: Long, dateType: String) = 
+        repository.getPackages(date, dateType).asLiveData()
+
+    fun getCourierStats(date: Long) = repository.getCourierStats(date).asLiveData()
+    
+    fun getDailyStats(date: Long) = repository.getDailyStats(date).asLiveData()
+
+    fun updatePackageStatus(packageInfo: PackageInfo) = viewModelScope.launch {
+        repository.update(packageInfo)
+    }
+
+    fun insert(packageInfo: PackageInfo) = viewModelScope.launch {
+        repository.insert(packageInfo)
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3