Files
luminic-space-back-v2/src/main/kotlin/space/luminic/finance/dtos/DashboardDataDTO.kt
2026-01-02 14:28:42 +03:00

36 lines
954 B
Kotlin

package space.luminic.finance.dtos
import space.luminic.finance.models.AISummaryData
import java.time.LocalDate
data class DashboardDataDTO(
val analyzedText: AISummaryData? = null,
val totalExpense: Int,
val totalIncome: Int,
val balance: Int,
val categories: List<DashboardCategoryDTO>,
val upcomingTransactions: List<TransactionDTO>,
val recentTransactions: List<TransactionDTO>,
val weeks: List<DashboardWeeksDTO>
)
data class DashboardWeeksDTO(
val startDate: LocalDate,
val endDate: LocalDate,
val expenseSum: Int,
val categories: List<WeekCategoryDTO>
)
data class WeekCategoryDTO(
val categoryId: Int?,
val categoryName: String?,
val categoryIcon: String?,
val sum: Int? = 0
)
data class DashboardCategoryDTO (
val category: CategoryDTO,
val currentPeriodAmount: Int,
val previousPeriodAmount: Int,
val changeDiff: Double,
val changeDiffPercentage: Double,
)