64 lines
1.2 KiB
Swift
64 lines
1.2 KiB
Swift
//
|
|
// SDVehicleNote.swift
|
|
// AutoCatCore
|
|
//
|
|
// Created by Selim Mustafaev on 10.06.2025.
|
|
// Copyright © 2025 Selim Mustafaev. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
import SwiftData
|
|
|
|
@Model
|
|
final class SDVehicleNote {
|
|
|
|
@Attribute(.unique)
|
|
var id: String
|
|
|
|
var user: String
|
|
var date: TimeInterval
|
|
var text: String
|
|
|
|
init(
|
|
id: String,
|
|
user: String,
|
|
date: TimeInterval,
|
|
text: String
|
|
) {
|
|
self.id = id
|
|
self.user = user
|
|
self.date = date
|
|
self.text = text
|
|
}
|
|
|
|
convenience init(text: String, user: String) {
|
|
|
|
self.init(
|
|
id: UUID().uuidString,
|
|
user: user,
|
|
date: Date().timeIntervalSince1970,
|
|
text: text
|
|
)
|
|
}
|
|
}
|
|
|
|
extension SDVehicleNote: DtoConvertible {
|
|
|
|
public var dto: VehicleNoteDto {
|
|
var dto = VehicleNoteDto(text: text, user: user)
|
|
dto.id = id
|
|
dto.date = date
|
|
return dto
|
|
}
|
|
|
|
public convenience init(dto: VehicleNoteDto) {
|
|
|
|
self.init(
|
|
id: dto.id,
|
|
user: dto.user,
|
|
date: dto.date,
|
|
text: dto.text
|
|
)
|
|
}
|
|
}
|