AutoCat/AutoCatCore/Models/SwiftData/SDOsago.swift

90 lines
2.1 KiB
Swift

//
// SDOsago.swift
// AutoCatCore
//
// Created by Selim Mustafaev on 10.06.2025.
// Copyright © 2025 Selim Mustafaev. All rights reserved.
//
import Foundation
import SwiftData
@Model
final class SDOsago {
var date: TimeInterval
var number: String
var vin: String?
var plateNumber: String?
var name: String
var status: String?
var restrictions: String
var insurant: String?
var owner: String?
var usageRegion: String?
var birthday: String?
init(
date: TimeInterval,
number: String,
vin: String? = nil,
plateNumber: String? = nil,
name: String,
status: String? = nil,
restrictions: String,
insurant: String? = nil,
owner: String? = nil,
usageRegion: String? = nil,
birthday: String? = nil
) {
self.date = date
self.number = number
self.vin = vin
self.plateNumber = plateNumber
self.name = name
self.status = status
self.restrictions = restrictions
self.insurant = insurant
self.owner = owner
self.usageRegion = usageRegion
self.birthday = birthday
}
}
extension SDOsago: DtoConvertible {
public var dto: OsagoDto {
OsagoDto(
date: date,
number: number,
vin: vin,
plateNumber: plateNumber,
name: name,
status: status,
restrictions: restrictions,
insurant: insurant,
owner: owner,
usageRegion: usageRegion,
birthday: birthday
)
}
public convenience init(dto: OsagoDto) {
self.init(
date: dto.date,
number: dto.number,
vin: dto.vin,
plateNumber: dto.plateNumber,
name: dto.name,
status: dto.status,
restrictions: dto.restrictions,
insurant: dto.insurant,
owner: dto.owner,
usageRegion: dto.usageRegion,
birthday: dto.birthday
)
}
}