From 27bbd0435881e408f267c99e6a253d2e17873bcc Mon Sep 17 00:00:00 2001 From: tj <1378534974@qq.com> Date: 星期五, 11 四月 2025 17:44:11 +0800 Subject: [PATCH] 1.2 --- app/src/main/java/com/example/firstapp/ui/dashboard/DashboardViewModel.kt | 52 ++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 36 insertions(+), 16 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 dae2211..5969ea5 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 @@ -5,31 +5,51 @@ 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 com.example.firstapp.database.entity.Code +import com.example.firstapp.database.repository.CodeRepository import kotlinx.coroutines.launch class DashboardViewModel(application: Application) : AndroidViewModel(application) { - - private val repository: PackageRepository - + + private val repository: CodeRepository + init { - val packageDao = AppDatabase.getInstance(application).packageDao() - repository = PackageRepository(packageDao) + val codeDao = AppDatabase.getInstance(application).codeDao() + repository = CodeRepository(codeDao) } - - fun getPackages(date: Long, dateType: String) = + + fun getPackages(date: Long, dateType: String) = repository.getPackages(date, dateType).asLiveData() - fun getCourierStats(date: Long) = repository.getCourierStats(date).asLiveData() + fun getPackagesUnread(date: Long, dateType: String) = + repository.getPackagesUnread(date, dateType).asLiveData() + + fun getCourierStats(date: Long, dateType: String) = + repository.getCourierStats(date, dateType).asLiveData() + + fun getYearlyHeatmap(date: Long) = repository.getYearlyHeatmap(date).asLiveData() + + + fun getWeeklyStats(date: Long, weekCount: Int = 6) = + repository.getWeeklyStats(date, weekCount).asLiveData() - fun getDailyStats(date: Long) = repository.getDailyStats(date).asLiveData() + fun getMonthlyStats(date: Long) = repository.getMonthlyStats(date).asLiveData() + + fun getYearlyStats(date: Long) = repository.getYearlyStats(date).asLiveData() - fun updatePackageStatus(packageInfo: PackageInfo) = viewModelScope.launch { - repository.update(packageInfo) + fun getYearMonthlyStats(date: Long) = + repository.getYearMonthlyStats(date).asLiveData() + + fun insert(code: Code) = viewModelScope.launch { + repository.insert(code) } - fun insert(packageInfo: PackageInfo) = viewModelScope.launch { - repository.insert(packageInfo) - } + fun getCurrentWeekStats(date: Long) = + repository.getCurrentWeekStats(date).asLiveData() + + fun getCurrentYearStats(date: Long) = + repository.getCurrentYearStats(date).asLiveData() + + fun getCurrentWeekStats2(startDateCur: String, endDateCur: String) = repository.getCurrentWeekStats2(startDateCur,endDateCur).asLiveData() + fun getWeeklyStatsChart(startDateCur: String, endDateCur: String) = repository.getWeeklyStatsChart(startDateCur, endDateCur).asLiveData() } \ No newline at end of file -- Gitblit v1.9.3