Files
pulse-mobile/PulseHealth/Models/FinanceModels.swift

54 lines
1.2 KiB
Swift

import Foundation
struct FinanceTransaction: Codable, Identifiable {
let id: Int
var amount: Double
var categoryId: Int?
var description: String?
var type: String // "income" or "expense"
var date: String?
var createdAt: String?
enum CodingKeys: String, CodingKey {
case id, amount, description, type, date
case categoryId = "category_id"
case createdAt = "created_at"
}
}
struct FinanceCategory: Codable, Identifiable {
let id: Int
var name: String
var icon: String?
var color: String?
var type: String
}
struct FinanceSummary: Codable {
var totalIncome: Double?
var totalExpense: Double?
var balance: Double?
var carriedOver: Double?
var month: String?
enum CodingKeys: String, CodingKey {
case balance, month
case totalIncome = "total_income"
case totalExpense = "total_expense"
case carriedOver = "carried_over"
}
}
struct CreateTransactionRequest: Codable {
var amount: Double
var categoryId: Int?
var description: String?
var type: String
var date: String?
enum CodingKeys: String, CodingKey {
case amount, description, type, date
case categoryId = "category_id"
}
}