// // Status.swift // Befund // // Created by Irakli Abetschkhrischwili on 27.05.22. // Copyright © 2022 MVZ Dr. Stein und Kollegen. All rights reserved. import Foundation extension Core.Models.Database { /** * Database status of results object */ public struct Status: Decodable { public var pgs: String? = nil public var pat_hash: String? = nil public var available: Bool = false public var available_ts: String? = nil public var picked_up: Bool = false public var picked_up_ts: String? = nil public var notified: Bool = false public var notified_ts: String? = nil public var results_status: String? = Core.Models.Database.Results.ResultsStatus.NONE.rawValue public var created: String? = nil /** * Returns formated available date */ public func GetAvailableTS() -> Date? { var result: Date? = nil let dateFormatter = DateFormatter() if(self.available_ts != nil) { dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" result = dateFormatter.date(from: available_ts!) } return result } /** * Returns formated picked up date */ public func GetPickedUpTS() -> Date? { var result: Date? = nil let dateFormatter = DateFormatter() if(self.picked_up_ts != nil) { dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" result = dateFormatter.date(from: self.picked_up_ts!) } return result } /** * Returns formated notified date */ public func GetNotifiedTS() -> Date? { var result: Date? = nil let dateFormatter = DateFormatter() if(self.notified_ts != nil) { dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" result = dateFormatter.date(from: self.notified_ts!) } return result } /** * Returns formated created date */ public func GetCreated() -> Date? { var result: Date? = nil let dateFormatter = DateFormatter() if(self.created != nil) { dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" result = dateFormatter.date(from: self.created!) } return result } /** * Converts status object to the results */ public func ToResults() -> Core.Models.Database.Results { var result = Core.Models.Database.Results() result.pgs = self.pgs result.pat_hash = self.pat_hash result.available = self.available result.available_ts = self.available_ts result.picked_up = self.picked_up result.picked_up_ts = self.picked_up_ts result.status = self.results_status result.created = self.created return result } } }