53 lines
1.3 KiB
Swift
53 lines
1.3 KiB
Swift
import Foundation
|
|
|
|
struct PulseTask: Codable, Identifiable {
|
|
let id: Int
|
|
var title: String
|
|
var description: String?
|
|
var completed: Bool
|
|
var priority: Int?
|
|
var icon: String?
|
|
var color: String?
|
|
var dueDate: String?
|
|
var reminderTime: String?
|
|
var createdAt: String?
|
|
|
|
var priorityColor: String {
|
|
switch priority {
|
|
case 4: return "ff0000"
|
|
case 3: return "ff4757"
|
|
case 2: return "ffa502"
|
|
default: return "8888aa"
|
|
}
|
|
}
|
|
|
|
var priorityDisplayName: String {
|
|
switch priority {
|
|
case 1: return "Низкий"
|
|
case 2: return "Средний"
|
|
case 3: return "Высокий"
|
|
case 4: return "Срочный"
|
|
default: return "Без приоритета"
|
|
}
|
|
}
|
|
|
|
enum CodingKeys: String, CodingKey {
|
|
case id, title, description, completed, priority, icon, color
|
|
case dueDate = "due_date"
|
|
case reminderTime = "reminder_time"
|
|
case createdAt = "created_at"
|
|
}
|
|
}
|
|
|
|
struct CreateTaskRequest: Codable {
|
|
var title: String
|
|
var description: String?
|
|
var priority: Int?
|
|
var dueDate: String?
|
|
|
|
enum CodingKeys: String, CodingKey {
|
|
case title, description, priority
|
|
case dueDate = "due_date"
|
|
}
|
|
}
|