Fixing broken Encodable implementation for VehicleEvent

This commit is contained in:
Selim Mustafaev 2023-03-12 00:07:55 +03:00
parent b2e53829e5
commit 8810412140
3 changed files with 25 additions and 5 deletions

View File

@ -41,8 +41,8 @@
"kind" : "remoteSourceControl", "kind" : "remoteSourceControl",
"location" : "https://github.com/realm/realm-core.git", "location" : "https://github.com/realm/realm-core.git",
"state" : { "state" : {
"revision" : "a7d486d07b821e28ffd3587e99355a63148cbb43", "revision" : "dd91f5f967c4ae89c37e24ab2a0315c31106648f",
"version" : "13.4.1" "version" : "13.6.0"
} }
}, },
{ {
@ -50,8 +50,8 @@
"kind" : "remoteSourceControl", "kind" : "remoteSourceControl",
"location" : "https://github.com/realm/realm-swift.git", "location" : "https://github.com/realm/realm-swift.git",
"state" : { "state" : {
"revision" : "4d55ba88e78ed427eae439e7c15fac2372f95c64", "revision" : "8ac6fe1aa5d0fb0100062d80863416a4d70de8ca",
"version" : "10.36.0" "version" : "10.37.0"
} }
}, },
{ {

View File

@ -14,6 +14,10 @@ class ReportController: FormViewController, MediaBrowserViewControllerDataSource
private var reportImageUrl: URL? private var reportImageUrl: URL?
private let logoPlaceholder = UIImage(named: "SteeringWheel") private let logoPlaceholder = UIImage(named: "SteeringWheel")
private let copyableTags = ["Model", "Year", "Color", "Category", "STP", "Japanese",
"PlateNumber", "VIN", "STS", "PTS",
"EngineNumber", "FuelType", "Volume", "PowerHP", "PowerKw"];
var vehicle: Vehicle? { var vehicle: Vehicle? {
didSet { didSet {
if isViewLoaded && self.view.window != nil { if isViewLoaded && self.view.window != nil {
@ -155,7 +159,7 @@ class ReportController: FormViewController, MediaBrowserViewControllerDataSource
func setupCopyBehaviour() { func setupCopyBehaviour() {
for row in form.allRows { for row in form.allRows {
if let labelRow = row as? LabelRow { if let labelRow = row as? LabelRow, copyableTags.contains(row.tag ?? "") {
let doubleTap = UITapGestureRecognizer { _ in let doubleTap = UITapGestureRecognizer { _ in
guard let text = labelRow.value else { guard let text = labelRow.value else {
return return

View File

@ -78,4 +78,20 @@ public class VehicleEvent: Object, Codable, Cloneable {
self.number = copy.number self.number = copy.number
self.addedBy = copy.addedBy self.addedBy = copy.addedBy
} }
// MARK: - Codable
enum CodingKeys: String, CodingKey {
case id, date, latitude, longitude, address, addedBy
}
public func encode(to encoder: Encoder) throws {
var container = encoder.container(keyedBy: CodingKeys.self)
try container.encode(id, forKey: .id)
try container.encode(date, forKey: .date)
try container.encode(latitude, forKey: .latitude)
try container.encode(longitude, forKey: .longitude)
try container.encodeIfPresent(address, forKey: .address)
try container.encodeIfPresent(addedBy, forKey: .addedBy)
}
} }